Autor | Zpráva | ||
---|---|---|---|
Acci Profil |
#1 · Zasláno: 14. 7. 2005, 16:45:49
Mám 100 uživatelských jmen, a potřebuju kontrolovat, jestli se přihlašovaný uživatel nachází v tomto seznamu. Nyní to pro jednoho uživatele dělám takto:
if(($_POST['user']==$login)&&($_POST['passwd']==$pass)) { .... } Ale když těch uživatelů bude sto, podmínka by byla hodně dlouhá. Jak to zapsat jednodušeji? |
||
fimmos Profil |
#2 · Zasláno: 14. 7. 2005, 16:47:56
procházet to polem...
myslím, že ale lepší by to bylo s použitím databáze |
||
Acci Profil |
#3 · Zasláno: 14. 7. 2005, 16:50:14
A mohl by jsi mi poradit, jak to přesně zapsat? PHP skoro vůbec neumím
|
||
fimmos Profil |
#4 · Zasláno: 14. 7. 2005, 17:08:45
jde to více způsoby, třeba takhle:
$hesla = Array("heslo0", "heslo1"); $jmena = array("jmeno0", "jmeno1"); for ($y = 0; $y < count($hesla); $y++) { if (($_POST['passwd'] === $hesla[$y]) && ($_POST['user'] === $jmena[$y])) { $prosel = true; break; } } echo $prosel == true ? "Zná heslo i jméno" : "Nezná heslo ani jméno"; moc to nepoužívám, ale jak říkám, lepší je to s databází |
||
Leo Profil |
#5 · Zasláno: 14. 7. 2005, 17:37:17
|
||
fimmos Profil |
#6 · Zasláno: 14. 7. 2005, 17:54:02
ano, taky možnost :)
|
||
Časová prodleva: 4 měsíce
|
|||
gofry Profil * |
#7 · Zasláno: 4. 11. 2005, 01:12:22
Alebo pouzit rovno asociativne pole.
/* predpokladajme, ze mas uz vytvorene pole pre 100 uzivatelov v tvare: $users['user1'] = 'pass1'; $users['user2'] = 'pass2'; ... $users['userN'] = 'passN'; */ $user = $_POST['user']; $pass = $_POST['pass']; if ($users["$user"] == $pass) { echo "Login OK"; } |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0