Tarkoitus on, että voidaan listata hakemiston kaikki alihakemistot ja niiden sisältämät tiedostot.
esim. http://www.simo-net.org/putka/putka/listaaja
<?php //mikä hakemisto listataan $perus="listataan/"; // functio suorittaa for silmukan joka tulostaa tarvittavan määrän - merkkejä function laske($a){ for($i=0;$i<$a;$i++){ $sis.=" - "; } return $sis; } // argumentit: listattava hakemisto: $alku, tiedostojen lukumäärä: $tied ja hakemistojen lukumäärä $hak. function listaa($alku, &$tied, &$hak){ global $perus; //napataan vielä $perus messiin if(!file_exists($alku)) exit("<font color=\"red\">ERROR: hakemistoa <b>$perus</b> ei löydy</font>"); // jos hakemistoa ei löydy, niin ilmoitetaan asiasta. foreach(glob("$alku*") as $nimi){ //glob function ja foreach silmukan yhdistelmä käy kaikki hakemiston tiedostot ja alihakemistot läpi ja lukee kunkin vuorollaan $nimi:n. $sis=explode("/", str_replace("$perus", "", $nimi)); //sisennystä varten lasketaan / merkkien lukumäärä $nimi:stä, mutta ensin pitää ottaa turha alkuosa pois echo laske(count($sis)); //tulostetaan sisennys if(is_dir($nimi)){ //jos listattava kohde on hakemisto $hak++; echo "<a href=\"$nimi\" class=\"hak\">".str_replace("$alku", "", $nimi)."</a><br>"; }else{ // ja jos ei $tied++; echo "<a href=\"$nimi\" class=\"fil\">".str_replace("$alku", "", $nimi)."</a> (".(filesize($nimi)/1000)." kt) <br>"; } if(is_dir("$nimi")) listaa($nimi."/", $tied, $hak); // jos löytyy alihakemistoja, niin homma aletaan alusta. } } ?> <html> <head> <title>Listaaja 1.0</title> <style type="text/css" href="styles.css"> body { font-family: Sans; color: #000; font-size: 11px; padding: 0px 100px 0px 100px; } h1 { margin: 0 } div.listaus { background: #b6e2ed; border: 1px solid #5894a3; padding: 10px } div.tulos { float: right top; } a:link.hak { color: red; text-decoration: none } a:visited.hak { color: #990000; text-decoration: none } a:hover.hak { color: red; text-decoration: none } a:active.hak { color: blue; text-decoration: none } a:link.fil { color: black; text-decoration: none } a:visited.fil { color: gray; text-decoration: none } a:hover.fil { color: black; text-decoration: none } a:active.fil { color: blue; text-decoration: none } </style> </head> <body> <h1>Listaaja 1.0</h1> <?php $tied = $hak = 0; // alustetaan muuttujat. echo "Listataan hakemistoa $perus<br><br><div class=\"listaus\">"; listaa($perus, $tied, $hak); echo "</div>Listattiin yhteensä $tied tiedostoa $hak hakemistosta."; ?> </body> </html>
Pistäs välilyönnit ennen ja jälkeen osotetta, muuten se lisää kerättyjen osotteiden perään pätkän koodiakin.
lainaus:
Pistäs välilyönnit ennen ja jälkeen osotetta, muuten se lisää kerättyjen osotteiden perään pätkän koodiakin.
mihin kohtaan siis? Kun mulla toimii ihan moitteetta..
Hyvin toimii :D
Aihe on jo aika vanha, joten et voi enää vastata siihen.