Nowe posty

xx Dystrybucja pod HP Omen (6)
Wczoraj o 23:30:08
xx [Poradnik] Wyszukiwanie Sterowników (2)
Wczoraj o 21:08:23
lamp Problem z Linux Lite po instalacji (0)
Wczoraj o 19:50:30
xx Ile pingwinów? (1)
Wczoraj o 08:59:24
xx konfiguracja pale moon (0)
2024-03-24, 21:53:42
xx Plasma 6 w Neonie ssie trochę mniej ... (10)
2024-03-23, 02:38:11
xx problem z instalacja sterowników do karty sieciowej (3)
2024-03-18, 18:10:16
xx Plik abc.001 (1)
2024-03-17, 17:48:27
xx Zlecę dopracowanie programu w MatLab (0)
2024-03-13, 15:28:40
xx Linux Mint 21.3 XFCE brak dźwieku po paru minutach (karta muzyczna zintegrowana) (5)
2024-03-12, 23:07:01

Autor Wątek: Grupowanie Plików.  (Przeczytany 4120 razy)

Mariuszek

  • Gość
Grupowanie Plików.
« dnia: 2015-04-02, 01:16:03 »
Witam,

posiadam skrypt do wyświetlania plików .dem na stronie lecz nie są pogrupowane. Chcę żeby do każdego dnia był osobny button jak na 2 screenie. Jestem ciemny w PHP proszę o pomoc.

mój screen : http://scr.hu/4qy7/ooiqc
 
a jaki efekt chce uzyskać : http://scr.hu/4qy7/n7fzq


$servers = array (
        'demka' => array(
            "title"  => "Gdynska Piwnica FFA",
            "prefix" => "demos"
            ),
           );

$filesPerPage = 35;

# Size in bytes
function format_size($size, $round = 0)
{
    $sizes = array('B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB');

    for ($i=0; $size > 1024 && isset($sizes[$i+1]); $i++)
        $size /= 1024;

    return round($size, $round)." ".$sizes[$i];
}

function browse($path)
{
    global $servers;
    global $filesPerPage;
    $data = array();
    $page = $_GET['page'];
    $page = !isset($page) || $page < 1 ? 0 : $page - 1;
    $prefix = $servers[$path]['prefix'];
    $prefix_sz = strlen($prefix) + 1;
    $offsets = array(
                        year => $prefix_sz + 1,
                        month => $prefix_sz + 3,
                        day => $prefix_sz + 5,
                        hour => $prefix_sz + 8,
                        minute => $prefix_sz + 10,
                        map => $prefix_sz + 13
                    );

    if(is_dir($path))
    {
   $files = glob($path."/*.dem.7z");
        $count = count($files);
   $pages = ceil( $count / $filesPerPage );
   $page  = $page >= $pages ? $pages - 1 : $page;
   $begin = $count - ($page + 1) * $filesPerPage;
   $end   = $count - $page * $filesPerPage;
   for($i = $begin < 0 ? 0 : $begin; $i < $end; ++$i)
        {
        $file = end( explode('/', $files[$i]) );
            $name_end = strrpos($file, ".dem");
            $name_end = $name_end === FALSE ? strrpos($file, ".gz") : $name_end;
            $tmpfilesize = @filesize($files[$i]);

            if($name_end === FALSE)
                continue;

        $tmp = array();
            $tmp[year]   = substr($file, $offsets[year],   2);
            $tmp[month]  = substr($file, $offsets[month],  2);
            $tmp[day]    = substr($file, $offsets[day],    2);
            $tmp[hour]   = substr($file, $offsets[hour],   2);
            $tmp[minute] = substr($file, $offsets[minute], 2);
            $tmp[map]    = substr($file, $offsets[map],    $name_end - $offsets[map]);
            $tmp[file]   = $file;
            $tmp[size]   = format_size($tmpfilesize);
            $tmp[path]   = $files[$i];

            $data[] = $tmp;
        }
        $files = array();
    }

    echo '
       
           
           
           
           
           
        ';

    if($count > 0)
    {
        $ll = 0;
        foreach($data as $field)
        {
            echo '
               

               
               
               
               
            ';
            $ll = !$ll;
        }
    }
    else
    {
        echo '';
    }
    echo '
Data Godzina (start) Mapa Rozmiar Link
'.$field[day].'.'.$field[month].'.'.$field[year].''.$field[hour].':'.$field[minute].''.$field[map].''.$field[size].''.$field[file].'
- BRAK DEM -
';
    if($pages > 1)
    {
        echo '';
    }
}
?>


   
       
       
       
ARCHIWUM DEM FFA
   
   
       

           
           

                        if(is_array($servers))
            {
                $count = count($servers);
                if($count > 1)
                {
            ?>
               
                    SERWERY:
                   
                   
               
                            }

                if($count == 1)
                {
                    end($servers);
                    browse( key($servers) );
                }
                else if($count == 0)
                {
                    echo "- Lista serwerów jest pusty -";
                }
                elseif( isset( $servers[$_GET['server']] ) )
                    browse($_GET['server']);
            }
            else
            {
                echo "- Skrypt nie jest skonfigurowany -";
            }
            ?>