Autor | Zpráva | ||
---|---|---|---|
lelekton Profil * |
#1 · Zasláno: 20. 12. 2014, 21:40:30
zdravim netusim co delam spatne ale kod mi absolutne ignoruje podminku
cast formulare: <div><label for=\"password\">Password:</label></div> <div><input type=\"password\" name=\"password\"></div> <p></p> <div><input type=\"submit\" value=\"submit\" name=\"submit\"></div> podminka číslo 1: $password = $_POST['password']; $pass = $_SESSION['pass']; if(isset($_POST['submit']) and ($password != $pass)){ echo "<p>Bad password</p>"; } podmínka číslo 2: if(isset($_POST['submit']) and ($password = $pass)){ nějaký kód } problem je to ze at zadam jekekoliv heslo tak to stejne provede podminku cislo 2 mohli by jste mi prosim pomoct |
||
lionel messi Profil |
lelekton:
1. Operátor = znamená v PHP priradenie. Porovnáva operátor == (prípadne === okrem hodnoty berie do úvahy i typ). Čiže správny zápis je:
if(isset($_POST['submit']) and ($password == $pass)) Ešte by sa z toho myslím (na 99,99%) dala vyhodiť zátvorka za and (slovné operátory majú takmer najnižšiu prioritu), ale radšej mať zbytočnú zátvorku než chybu navyše. |
||
lelekton Profil * |
#3 · Zasláno: 20. 12. 2014, 21:49:17
díky moc
|
||
serverteam.sk Profil |
#4 · Zasláno: 20. 12. 2014, 21:51:53
doted se snažím pochopit co má za funkci ta 2 podmínka :D
|
||
lionel messi Profil |
#5 · Zasláno: 20. 12. 2014, 21:56:12
serverteam.sk:
„doted se snažím pochopit co má za funkci ta 2 podmínka :D“ Predpokladám, že má znamenať: „Ak je odoslaný formulár a heslo sa zhoduje s heslom uloženým v session, tak…“ Ide o útržky kódu bez kontextu, podľa mňa by to celé išlo napísať lepšie, ale nepoznám celý kód. lelekton: Až teraz som si všimol zrejme prebytočné spätné lomítka okolo úvodzoviek v časti kódu s formulárom, môžem sa spýtať, prečo ich používaš? Tipujem správne, že formulár vypisuješ cez echo v PHP (jediný prípad, keď by to dávalo zmysel)? |
||
Časová prodleva: 9 let
|
0