Autor Zpráva
AMATER
Profil *
Ahoj,
prosim Vas, jaky je prikaz v php (a ako sa zapisuje) aby mi vypisal ake podaresare sa nachadzaju v hlavnom adresary, ktory ja zadam?

Dakujem krasne.
praethorian
Profil *
<?php
$sub = ($_GET['dir']);
$path = 'enter/your/directory/here/';
$path = $path . "$sub";
$dh = opendir($path);
$i=1;
while (($file = readdir($dh)) !== false) {
    if($file != "." && $file != "..") {
            if (substr($file, -4, -3) =="."){
            echo "$i. $file <br />";
            }else{           
        echo "$i. <a href='?dir=$sub/$file'>$file</a><br />";
          }
        $i++;
    }
}
closedir($dh);
?>
AMATER
Profil *
jeej super dakujem,

mozes este jednu malu otazku? teda aspon dufam ze je mala...
chcel som dat tento vypis adresarov do vyberu select (option)
ale stale mi pise "ARRAY", ako mam zapisat, aby sa mi to tam zobrazilo
s moznostou vyberu?

<select>
<option>

</select>


dik
AMATER
Profil *
ja ked dam pred kod php, ktory zobrazuje ten obsah select a option, tak ono mi to sice da do toho vyberu
ale vsetko je v jednom riadku... :((((
AMATER
Profil *
uz som na to prisiel...
aj tak dik :)
AMATER
Profil *
Ale predsa len by som mal jednu otazku...
medzi tymi adresarmi, ktore chcem aby sa mi zobrazovali su aj subory, ktore nechcem aby sa mi zobrazovali
a tiez tam su skryte subory (zacinajuce bodkou) ktore tiez chcem aby sa nezobrazovali...
ako mam upravit zdrojak aby sa tieto subory prestali zobrazovat a zobrazovali sa LEN ADRESARE?

DAkujem krasne...
Alphard
Profil
pomohou funkce is_dir() a substr()
AMATER
Profil *
ale kam to mam zapisat, substr() tam aj je pouzite...
vyssie je zdrojak... kam sa to pise?

Dik
Matty
Profil
AMATER
Do podmínky:
if($file != "." && $file != ".." && is_dir($file))
Alphard
Profil
blbě jsem to přečetl, substr() nebude potřeba

// opravený kód je o několik příspěvků níže


// pozdě :-(
AMATER
Profil *
ale ono to neslape...
vypisuje to:
Parse error: parse error on line 8

:(((
Matty
Profil
AMATER
Alphard tam vynechal závorku:
if($file != "." && $file != ".." && is_dir ($file))
AMATER
Profil *
tu zatvorku som tam doplnil, ale aj tak to nejde...
teda ak tam doplnim tu zatvorku, tak chybu to sice nevypise ziadnu, ale ani
nezobrazi adresare :((((
AMATER
Profil *
tu zatvorku som tam doplnil, chybu sice nevypisuje ziadnu,
ale ani nezobrazi adresare... :((((
Alphard
Profil
typická chyba :-( u is_dir nebyla cesta do dalších adresářů, podíval jsem se na to podrobněji, tady je snad plně funkční verze

<?php
$path = isset ($_GET['dir'])?$_GET['dir']."/":"./";
$dh = opendir($path);
$i=1;
while (($file = readdir($dh)) !== false) {
    if($file != "." && $file != ".." && is_dir ($path.$file)) {
         echo $i.". <a href='?dir=".$path.$file."'>".$file."</a><br />";
        $i++;
    }
}
closedir($dh);
?>
AMATER
Profil *
dakujem krasne, uz mi vsetko funguje ako ma...


len jednu otazku prosim este a uz stichnem :)

ked chcem vymazat adresar, tak pouzivam funkciu napr:

rmdir ("../adresar/tento/");

ak vsak "tento" nieco obsahuje tak sa nevymaze
niekde som cital, ze staci doplnit prikaz o -r teda:

rmdir -R ("../adresar/tento/");

ale ono mi to vypisuje takuto hlasku:

Fatal error: Call to undefined function: r()

:((( prosiiiim
Měsíček
Profil
ne .. to -R tam nemá co dělat .. http://cz2.php.net/manual/en/function.rmdir.php
Alphard
Profil
-r :-) to je parametr z příkazové řádky, v PHP nefunguje
napřed se musí vymazat obsah adresáře, většinou se používá rekurzivní funkce
v manuálu (odkazuje Měsíček) je v komentářích několik takových funkcí, vyzkoušej je, nějaká určitě bude funkční

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: