TORU Foorum

PHP session ei salvestu

Whitedragon - 4.10.2010 21:06

Ehk siis tehes veebilehte avastasin et session mille panen paika ei tööta millegi pärast Chromega(Teistes töötas) sesiooni sätestan järgenvalt:
Kood:
<?php $usr = $_POST['usr']; $psw = $_POST['pass']; $usr = stripslashes($usr); $psw = stripslashes($psw); $usr = mysql_real_escape_string($usr); $psw = mysql_real_escape_string($psw); //SQL ühendamine eemaldasin $sql="SELECT * FROM users WHERE Kasutajanimi='$usr' and Password='$psw'"; $result=mysql_query($sql); $count=mysql_num_rows($result); if($count==1){ $_SESSION['login'] = 1; // Ei tööta chromes:S echo '<meta http-equiv="refresh" content="1;./">'; } else { echo "Vale Kasutajanimi või parool."; } ?>


[Muudetud: 4.10.2010 Whitedragon]

emmsii - 4.10.2010 21:12

Well, session_destroy() on ka päris lahe funktsioon.

Ajasin sassi, soz, session_start()'i pidasin silmas. ;)

[Muudetud: 4.10.2010 emmsii]

Whitedragon - 4.10.2010 21:15

Ta ei salvestu mitte ei tapa ära ... muidugi olen teinud ka cache-i puhastuse...

Timukas - 4.10.2010 21:15

session_start() on puudu.
Lisaks, seoses stripslashes-iga uuri seda. Teises serveris ei pruugi see kood enam nii hästi toimida.
Parooli ei ole viisakas andmebaasis paljalt hoida, uuri siit.
Ja kas "echo '<meta http-equiv="refresh" content="1;./">';" asemel ei võiks header() funktsiooni kasutada?

[Muudetud: 4.10.2010 Timukas]

Whitedragon - 4.10.2010 21:16

Timukas session alustamine tuleb teisest failist
include-ib lehele seega header() funksioon annaks vea ainult

[Muudetud: 4.10.2010 Whitedragon]

Timukas - 4.10.2010 21:25

Äkki viitsid mingi töötava php skripti teha, mida saaks ise katsetada ja kus see viga avaldub. Eemaldad kõik üleliigse (mysqli osa jms, võib lihtsalt olla if($psw == "parool") jne) ja postitad siia. Ja kui üleliigset eemaldades probleem kaob, siis ehk avastad ise vea.

Whitedragon - 4.10.2010 21:48

Ei hakkanud siia seda kirjutama.... PasteBin on ka hea asi:)
http://pastebin.com/Dti8RznR

Timukas - 4.10.2010 22:56

Kui muud vead kõrvale jätta, siis konkreetne probleem põhjustatud ikka session_start() puudumisest. Lisasin selle ja kohe hakkas tööle.