king999 Posted June 28, 2007 Report Share Posted June 28, 2007 http://paste.php.lv/5734 It kā šitam kodam vajadzēja strādāt, jo strādāja kad POST datus salīdzināja ar php kodā dotām vērtībām, bet tagad, kad velk datus no datubāzes viņs vienalga redirektē atpakaļ uz login lapu pat ja parole ir pareiza. Link to comment Share on other sites More sharing options...
andrisp Posted June 28, 2007 Report Share Posted June 28, 2007 (edited) Pēc koda tas ir loģiski, ka tā notiek. Tavā kodā sanāk, ka POST datiem jāsakrīt jau ar pirmo rezulseta rowu. Ja nesakrīt, tad ar pārējiem nemaz nepārbauda un uzreiz redirektē. <?php session_start(); require("db.php"); $kva = mysql_query("SELECT * FROM lieta"); while($lame = mysql_fetch_array($kva)) { if ($_POST['vards'] == $lame['vards'] && $_POST['PWND'] == $lame['pwd'] ) { $_SESSION['auth'] = true; header("Location: index.php"); die(); } } $_SESSION['auth'] = false; header("Location: login.php"); die(); ?> Edited June 28, 2007 by andrisp Link to comment Share on other sites More sharing options...
Val Posted June 28, 2007 Report Share Posted June 28, 2007 Tas, kas zem while ieliec figūriekavās un novāc while rindā semikolu. Link to comment Share on other sites More sharing options...
andrisp Posted June 28, 2007 Report Share Posted June 28, 2007 Val, tas nebūtu risinājums. :) Link to comment Share on other sites More sharing options...
Val Posted June 28, 2007 Report Share Posted June 28, 2007 Kas vainas? :) <?php session_start(); require("db.php"); $kva = mysql_query("SELECT * FROM lieta"); while($lame = mysql_fetch_array($kva)) { if ($_POST['vards'] == $lame['vards'] && $_POST['PWND'] == $lame['pwd'] ) { $_SESSION['auth'] = true; header("Location: index.php"); } else{ $_SESSION['auth'] = false; header("Location: login.php"); }; }; ?> Link to comment Share on other sites More sharing options...
andrisp Posted June 28, 2007 Report Share Posted June 28, 2007 Nu padomā - ja lietotāji ir vairāki ? Kas notiks, ja tu mēģināsi ielogoties kā lietotājs, kas ar SELECT * FROM lieta netiek atgriezts pirmais sarakstā ? Link to comment Share on other sites More sharing options...
Val Posted June 28, 2007 Report Share Posted June 28, 2007 njā, ja godīgi tad izlasīju tikai otru pusi no viņa koda... Tad vajag iekš sql selectēt tikai ierakstu, kam vards ir vienāds ar $_POST['vards']. Pēctam ar mysql_fetch_row salīdzināt. Nebūtu jāpārbauda visa useru tabula. Link to comment Share on other sites More sharing options...
king999 Posted June 28, 2007 Author Report Share Posted June 28, 2007 Nu lietotājs ir tikai viens! So paldies, tagad viss strādā. Link to comment Share on other sites More sharing options...
Recommended Posts