Autor | Zpráva | ||
---|---|---|---|
Cinkular Profil * |
#1 · Zasláno: 18. 1. 2010, 20:06:54
Prosím o pomoc
Potreboval by som vypisovať subory zo zložky podla datumu zmeny, teraz mi to vypisuje podla abecedy a nejakým rádio buttonom alebo niecim podobným by sa tie radenia dali navzajom prepínat. Skript ktorí používam: <?php $files_max = 100; //maximálny počet zobrazovaných súborov $zlozka = dir("./"); while($file = $zlozka->read()) { if ($file == "." || $file == ".." || ((substr($file,-4) !== ".jpg") && (substr($file,-4) !== ".JPG"))) continue; $files[] = $file; } $zlozka->close(); sort($files); reset($files); $max = count($files); if ($max > $files_max) $max = $files_max; if (empty($_GET["page"])) $page = 1; else $page = $_GET["page"]; /* ----- Pomocné premenné ----- */ $a = (($page-1)*$max); $b = (($a+$max)-1); $c = 1; $d = 0; /* ----- Výpis súborov ----- */ if (file_exists($files[$a])) { $i = $a; while (($i <= $b) && file_exists($files[$i])) { echo "<small><a style='text-decoration:none;' href='./".$files[$i]."' target='_blank'>".$files[$i]."</a><br></small>"; $i++; } } ?> <p></p> <?php /* ----- Stránkovanie ----- */ if ($page == 1) { echo "| 1 "; $c++; $d = $d+$max; while (file_exists($files[$d])) { echo "| <small><a style='font-weight: bold;' href='./?page=$c'>$c</a></small> "; $c++; $d = $d+$max; } echo "|"; } elseif (($page > 1) && (file_exists($files[$b]))) { while (($c <= ($page-1)) && file_exists($files[$d])) { echo "| <small><a style='font-weight: bold;' href='./?page=$c'>$c</a></small> "; $c++; $d = $d+$max; } echo "| $page "; $c++; $d = $d+$max; while (file_exists($files[$d])) { echo "| <small><a style='font-weight: bold;' href='./?page=$c'>$c</a></small> "; $c++; $d = $d+$max; } echo "|"; } elseif (($page > 1) && (file_exists($files[$a]))) { while (($c <= ($page-1)) && file_exists($files[$d])) { echo "| <small><a style='font-weight: bold;' href='./?page=$c'>$c</a></small> "; $c++; $d = $d+$max; } echo "| $page "; } else { while (file_exists($files[$d])) { echo "| <small><a style='font-weight: bold;' href='./?page=$c'>$c</a></small> "; $c++; $d = $d+$max; } echo "|"; } ?> |
||
keeehi Profil |
#2 · Zasláno: 18. 1. 2010, 21:41:55 · Upravil/a: keeehi
Funkce filemtime();/filectime(); (jedna z nich, nevím přesně která) ti zjistí čas poslední změny nějakého souboru. Seřadit si to už snad zvládneš.
|
||
Cinkular Profil * |
#3 · Zasláno: 18. 1. 2010, 21:44:06
No bohužial nezvladnem, nevedel by si mi s tým pomôct?
|
||
keeehi Profil |
#4 · Zasláno: 18. 1. 2010, 22:00:54 · Upravil/a: keeehi
toto:
if($_POST["rbutt"]=="2" and !empty($_POST["odeslat"])){ foreach($files as $soubor) $casy[]=filemtime($soubor); array_multisort($casy,$files); reset($files); } else{ sort($files); reset($files); } dej místo tohoto: sort($files); reset($files); a do html přidej: <form method="post" name="formular" action="jmeno.php"> <input type="radio" name="rbut" value="1">jméno<br> <input type="radio" name="rbut" value="2">cas <input type="submit" name="odeslat" value=" Odeslat "> </form> Netestoval jsem tu úplně celé, ale mělo by to fungovat. |
||
AM_ Profil |
#5 · Zasláno: 18. 1. 2010, 22:01:25
soubory si namapuješ do asociativního pole ve formátu [čas poslední změny]=>"jméno souboru" a následně podle klíče setřídíš funkcí ksort. To je vše, co k tomu potřebuješ.
|
||
Cinkular Profil * |
#6 · Zasláno: 18. 1. 2010, 22:12:10
keeehi:
Radiobutton tam vybehne ale nic to nerobí, Ked dam zoradit podla mena tak to vyhodí eror 404 |
||
keeehi Profil |
#7 · Zasláno: 18. 1. 2010, 22:14:01 · Upravil/a: keeehi
<form method="post" name="formular" action="jmeno.php"> A příště zkus chvíli zkoumat. Není to jenom o Ctrl+C a Ctrl+V. |
||
Cinkular Profil * |
#8 · Zasláno: 18. 1. 2010, 22:16:36
keeehi:
Ja viem a je mi to trapne vas tu obtažovat ale fakt som z toho dutý. Idem to skusit |
||
Cinkular Profil * |
#9 · Zasláno: 18. 1. 2010, 22:22:17
keeehi:
Zmenil som to jmeno na index tak ako sa vola a absolutne to nic nerobi, vypisuje to vstale podla abecedy, nevies kde by mohla byt zrada? |
||
keeehi Profil |
#10 · Zasláno: 18. 1. 2010, 22:23:58 · Upravil/a: keeehi
ještě tu je překlep:
<input type="radio" name="rbutt" value="1">jméno<br> <input type="radio" name="rbutt" value="2">cas A jak jsem psal výše, zkus nejdřív hledat sám. |
||
Cinkular Profil * |
#11 · Zasláno: 18. 1. 2010, 22:27:53
keeehi:
Wow, Ďakujem teraz to funguje, velmy si mi pomohol ešte raz ďakujem. |
||
keeehi Profil |
#12 · Zasláno: 18. 1. 2010, 22:29:29
Cinkular:
Rádo se stalo. |
||
Časová prodleva: 13 let
|
0