potřeboval bych radu, jak zjistit počet souborů ve složce, a jak zjistit jejich názvy.
Ze zalohy jsem vytahnul starej skriptik pro vypis adresare, tak si to prohlidni. Je tam vse co potrebujes.
<U CLASS="nadpis">Výpis adresáře</U><p>
<?
// vypis souboru do pole
while ($soubor = readdir($adresar)) {
$q = "$nadr/$soubor";
if($soubor == ".") echo"";
elseif($q == "./..") echo "";
else if(@filetype("$nadr/$soubor") == "dir" or $soubor == ".." or $nadr == "..") {
$fd[$fi] = "<TR><TD><A HREF=admin.php?aid=vypis&nadr=$nadr/$soubor><B>$soubor</B></A></TD><TD ALIGN=right>ADR </TD><TD> </TD><TD ALIGN=right>". Date("j.n.Y - H:i",@filemtime("$soubor")) ."</TD></TR>\n";
$fi = $fi + 1;
} else {
$ff[$fj] = "<TR><TD><A HREF=$nadr/$soubor TARGET=_blank><B>$soubor</B></A></TD>".
"<TD ALIGN=right>". filesize("$nadr/$soubor") ."B </TD><TD><A HREF=admin.php?aid=edit&open.x=10&open.y=5&soubor=$nadr/$soubor>[E]</A>".
"<A HREF=admin.php?aid=vypis onClick=\"FRename('$nadr/$soubor');return false;\">[P]</A>".
"<A HREF=admin.php?aid=vypis onClick=\"FDel('$nadr/$soubor');return false;\">[X]</A>".
"</TD>".
"<TD ALIGN=right>". Date("j.n.Y - H:i",@filemtime("$nadr/$soubor")) ."</TD></TR>\n";
$fj = $fj + 1;
}
}
// serazeni souboru
sort($fd);
sort($ff);
echo "<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH=90% ALIGN=center>";
echo "<TR><TD COLSPAN=4><U><B>". $nadr ."</B></U> (adr/soubory : ". count($fd) ."/". count($ff) .")</TD></TR>";
echo "<TR><TD>název</TD><TD>velikost</TD><TD> akce</TD><TD ALIGN=right>posled. modifikace</TD></TR>";
echo "<TR><TD COLSPAN=4><HR NOSHADE></TD></TR>";
// zobrazeni
$ffj = 0;
$ffi = 0;
// adresare
while ($ffi < count($fd)) {
echo $fd[$ffi];
$ffi = $ffi + 1;
}
// soubory
while ($ffj < count($ff)) {
echo $ff[$ffj];
$ffj = $ffj + 1;
}
?>
</TABLE>
Jo predtim je jeste
// nastaveni promenne
if (!$nadr) $nadr = ".";
$adresar = opendir($nadr);
$fi = 0;
$fj = 0;
ja bych to trosku zkratil...
<?php
$handle=opendir('.');
while (($file = readdir($handle))!==false) if (is_file($file)) $list[0][] = $file;
else if (!preg_match("/^[\.]{1,2}$/",$file)) $list[1][]=$file;
closedir($handle);
?>
v poli $list[0] je ulozen seznam souboru (take jako pole)
v poli $list[1] je ulozen seznam adresaru a linku (take jako pole)
vypsat seznam ulozeny v poli muzes napr. pomoci echo "<pre>".print_r($list)."</pre>";
count($list[0]) - pocet souboru
count($list[1]) - pocet adresaru (a linku)
Sak rikam. ten muj skriptrik je z davnych dob, kdy jsem PHP umel, ale porad se ucil. Dnes bych to klidne zkratil tak jak donny. Ale zrovna nemam cas, tak jsem to jen vytahnul a soupnul sem.