Hirdetés
Új hozzászólás Aktív témák
-
Tele von Zsinór
őstag
válasz
Gergello
#2840
üzenetére
$exp = explode(";",$query);
Olyankor mit csinálsz, ha valahova pontosvesszőt tartalmazó értéket kell beírnod?
A mysql password() függvénye helyett saltolt md5-öt vagy sha1-et ajánlok.
Egy queryvel illene megoldani az ellenőrzést és az adatok betöltését, az egyik felesleges. Legyen egyetlen select *-os, ahol where-ben meg van adva a felhasználónév és a jelszó, és mysql_num_rows()-al ellenőrizd, hogy van-e ilyen felhasználó, ha igen, belépteted, és rögtön tudod is feltölteni a profilját, újabb query indítása nélkül.
$usr = $sql -> getOne("SELECT username FROM XX WHERE username='".$user."' AND password=password('".$pass."')");
if($usr == $user){ //okA getOne() kódja nélkül ez vaktában, de tippem szerint egy tömbbel tér vissza, ami az adott sort tartalmazza, azaz az ifben te egy tömböt és egy stringet hasonlítasz össze. Ráadásul felesleges, azt mondtad, hogy az $user nevű felhasználót kéred ezzel a jelszóval, utána az eredményben a nevet összehasonlítani az eredeti kérés paraméterével értelmetlen, mindig igaz lesz. Vagy volt már olyan, hogy a smarty az "Ezt aztán" kezdetű szöveget írta volna ki?
Látom, osztályokat használsz. Én a Userbe pakolnám a logint: kap két paramétert, a postból a felhasználónevet és a jelszót, és akár bool értékkel jelzi, hogy sikerült-e, vagy hibát dob, de mindenesetre a sessiont megfelelően feltölti a user adataival, jogaival, stb.
A User osztálynak készítettél __sleep és __wakeup függvényeket?
Új hozzászólás Aktív témák
- Bomba ár! HP Elitebook 840 G1 - i5-4GEN I 8GB I 500GB I 14" HD I Cam I W10 I Gari!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9700X 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- Keresünk iPhone 13/13 Mini/13 Pro/13 Pro Max
- Xiaomi Redmi Note 13 Pro 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 11 64GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi


