Autor | Zpráva | ||
---|---|---|---|
soucekgns Profil |
#1 · Zasláno: 16. 1. 2011, 19:43:59
Potřeboval bych vypsání všech souborů(bez přípony) ve složce ale i jejich velikost a samotnou příponu
Dokázal jsem pouze vypsání souborů: <?php $slozka = opendir("../k4a/school/Aj/u/"); $ignoruj = "aj.php"; while ($soubor = readdir($slozka)) { if ($soubor != "." && $soubor != ".." && $soubor != $ignoruj) { echo '<a href="../k4a/school/Aj/u/'.$soubor.'" class="stazeni">'.$soubor.'</a>'//velikost je .$velikost. a typ souboru je .$typ-souboru.// ; }} ?> a k tomu bych právě potřeboval to v těch // Díky za rady |
||
AM_ Profil |
#2 · Zasláno: 16. 1. 2011, 19:46:29
velikost se zjišťuje funkcí filesize(), příponu si z názvu odděl funkcemi pro práci s řetězci (buď explode() podle tečky a posledí položka výsledku bude přípona, nebo vše za poslední tečkou - kombinace strrpos a substr. Dokumentace všech funkcí na http://php.net
|
||
soucekgns Profil |
#3 · Zasláno: 16. 1. 2011, 20:35:42
Když do adresy dosadím proměnnou, tak mi to napíše napíše jen velikost složky... tak nevím
<?php $slozka = opendir("skin/images/"); while ($soubor = readdir($slozka)) $filename = "skin/images/.$soubor"; echo $filename . ': ' . filesize($filename) . ' bytes'; ?> |
||
AM_ Profil |
#4 · Zasláno: 16. 1. 2011, 20:56:36
soucekgns:
„skin/images/.$soubor“ - kde jsi vzal tu tečku - proč while cyklus nemáš uzavřený v { } (pak se while vztahuje jen na první příkaz) dále bys měl ošetřit, aby se ti nevypisovaly soubory "." a ".." (jsou v každém adresáři a reprezentují aktuální adresář a o jeden výše) Příště si nejdřív zkontroluj chyby z nepozornosti, než poběžíš zpátky na fórum ;) |
||
soucekgns Profil |
#5 · Zasláno: 16. 1. 2011, 21:19:44 · Upravil/a: soucekgns
Jediný, jak mi to funguje je takhle:
<?php $slozka = opendir("skin/images/"); $ignoruj = "home.php"; {while ($soubor = readdir($slozka)) { if ($soubor != "." && $soubor != ".." && $soubor != $ignoruj) $filename = "skin/images/$soubor"; { if ($soubor != "." && $soubor != ".." && $soubor != $ignoruj) { echo '<a href="skin/images/'.$soubor.'">'.$soubor.'</a>Velikost:'.filesize($filename).' bytes<br>'; } }}} ?> |
||
Radek9 Profil |
#6 · Zasláno: 16. 1. 2011, 21:24:45 · Upravil/a: Radek9
soucekgns:
<?php $slozka = opendir("skin/images/"); $ignoruj = "home.php"; {while ($soubor = readdir($slozka)) { if ($soubor != "." && $soubor != ".." && $soubor != $ignoruj); $filename = "skin/images/$soubor"; { echo '<a href="skin/images/'.$soubor.'">'.$soubor.'</a>Velikost:'.filesize($filename).' bytes<br>'; } }} ?> <?php $slozka = opendir("skin/images/"); $ignoruj = "home.php"; while($soubor = readdir($slozka)){ if($soubor!="." && $soubor!=".." && $soubor!=$ignoruj){ $filename = "skin/images/".$soubor; echo '<a href="skin/images/'.$soubor.'">'.$soubor.'</a>Velikost:'.filesize($filename).' bytes<br>'; } } ?> |
||
soucekgns Profil |
#7 · Zasláno: 16. 1. 2011, 21:28:25
Radek9:
Nevim jestli k něčemu, ale stejně to nefunguje... Aby se mi nevypisovali ty adresáře "." a ".." tak tam musim mít 2x if ($soubor != "." && $soubor != ".." && $soubor != $ignoruj) |
||
soucekgns Profil |
#8 · Zasláno: 16. 1. 2011, 21:29:33
Tak beru zpět... funguje... díky moc
|
||
Časová prodleva: 13 let
|
0