| Autor | Zpráva | ||
|---|---|---|---|
| KUKYn Profil * |
#1 · Zasláno: 17. 10. 2009, 22:25:49
Zdravím všechny,
prosím o radu. Mám udělanou registraci uživatelů na web s tím že jejich údaje se zašifrují a uloží do skrytého souboru. Poté je vypisuji v seznamu uživatelů tak že si soubor načtu, rozdělím na jednotlivé údaje a vypíšu. Nyní chci přidělat funkci která by je abecedně seřadila při výpisu podle username avšak neumím si poradit s funkcí Sort() v tomto případě (nevím kam co přidat popř. upravit). Předem děkuji za rady. Zde přikládám kód vypisování: <?php
$klika = @fopen(.soubor_s_udaji",'r');
echo "<table border=\"1\">";
echo "<tr><th>Uživatel</th><th>Jméno a příjmení</th><th>Datum narození</th><th>Pohlaví</th><th>Web<th>ICQ</th></tr>";
while(!feof($klika)) {
$radek = fgets($klika,4096);
list($rec,$usr,$pwd,$eml,$jap,$vek,$poh,$url,$icq) = explode(':', $radek);
echo "<tr>
<td>$usr</td>
<td>" . decrypt($obj, $rec, $jap) . "</td>
<td>" . decrypt($obj, $rec, $vek) . "</td>
<td>" . decrypt($obj, $rec, $poh) . "</td>
<td>" . decrypt($obj, $rec, $url) . "</td>
<td>" . decrypt($obj, $rec, $icq) . "</td>
</tr>";
}
echo "</table>";
fclose($klika);
$_SESSION = array();
session_unset();
session_destroy();
?>já bych to chtěl řadit abecedně podle proměnné $usr |
||
| Nox Profil |
#2 · Zasláno: 17. 10. 2009, 23:12:29
Nejdřív vše načíst do pole (decryptnuté), sort a pak teprv vypsat
|
||
| KUKYn Profil * |
#3 · Zasláno: 17. 10. 2009, 23:49:12
asi jsem to špatně pochopil ale proč načítat vše (decrypnuté) do pole a pak to teprve řadit? mám to již v tom listu roztrhané a proměnná "usr" dle které chci seřadit výstup není cryptovaná...
-pokud je to opravdu nezbytné to vše nejprve decryptovat a vložit do pole... následně pak sort a výpis můžete mi prosím skusit nastínit jak se kód změní ? -pokud to není potřeba jelikož proměnná dle které chci řadit není zašifrovaná můžete mi napsat jak ten sort() zakomponovat do skriptu uvedeného výše ? Předem Vám děkuji za pomoc! |
||
| Nox Profil |
#4 · Zasláno: 17. 10. 2009, 23:58:45
Jestli to chápu dobře, tak načítáš ze souboru po řádcích a po řádcích to vypisuješ...jak jinak chceš měnit pořadí výpisu echo?
Podle mě to nezbytné je A jinak... jedna proměnná navíc snad není nijaké terno... |
||
| KUKYn Profil * |
#5 · Zasláno: 18. 10. 2009, 00:35:59
Ano. Tak to je s tím výpisem (po řádcích).
Jenomže to znamená předělat styl výpisu údajů a né jen přidat jednu proměnnou. Skouším to nějak přepsat ale vůbec se mi nedaří. Vrací mi to prázdnou tabulku. Nevím jak to upravit, aby to teda ten soubor rozebralo a naházelo do pole a pak to podle proměnný usr seřadilo a vypsalo. Dokáže mi někdo pomoct trochu více konkrétněji? Nejlépe přímo na skriptu, který je výše uveden? Za každou pomoc budu rád. Předem děkuji. |
||
| Alphard Profil |
#6 · Zasláno: 18. 10. 2009, 09:54:19
KUKYn:
Tohle jste slyšet nechtěl, ale je to přesná ukázka (a ještě mírná), proč databázová data patří do databáze. Místo toho, abyste napsal: select * from uzivatele order by uzivatel (ta zvýrazněná slova zajistí správné seřazení) budete teď vymýšlet hrozivé řešení na x řádků. Když budete chtít vypsat počet mužů a žen, tak budete vše procházet po řádcích a počítat? Řešení vašeho problému je zdlouhavé: - vše na číst do pole (asi bych použil spíše funkci file()) - pomocí foreach vše znovu projít a upravit jednotlivé hodnoty, tj. váš explode() a hodnotu, podle které řadíte, budete asi muset dát jak klíč - seřadit - dalším cyklem vypsat Nemyslím si, že se někomu bude chtít psát vám celé řešení. |
||
|
Časová prodleva: 17 let
|
|||
0