Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
Randomized
#3286
üzenetére
Ha jól értettem, valójában szerveroldalon az látszik, hogy tényleg sikeres a belépés - vagy mégsem? -, csak kliensoldalon nem gömbölyű valami, de ezt nem fejtetted ki - igazából a lényeget -, hogy mi is nem működik egész pontosan. Maga az oldal újratöltése nem történik meg? Vagy újratöltés után mégsincs bejelentkezve már a felhasználó, pedig korábban úgy tűnt, hogy be van jelentkezve - tehát mégis szerveroldali a para? Vagy kliensoldalon nem látszik valami úgy, ahogy látszania kellene? Vagy mi (nem) történik?
Ezt az alábbit még azelőtt írtam, hogy visszaolvastam volna, és láttam volna, hogy elméletileg be van jelentkezve a júzer (de lehet, hogy csak úgy tűnik, pedig igazából nem), végül is a benne írtak állnak továbbra is, de mivel itt OFF, meg valószínűleg nem is itt lesz a megoldás, ezért OFF-ba is raktam:
A PHP-kódnál sokat segít hibafelderítés esetén, ha nem nyomod el a hibakijelzést az error_reporting 0-ra állításával (persze kizárólag fejlesztői, nem production környezetben).
Egyébként a potenciális hibák lekezelése finoman szólva nem túl alapos, pl. csatlakozás után egyáltalán nem ellenőrzöd, hogy minden rendben ment-e az adatbázissal való kapcsolat létrehozása során. A mysqli_query visszatérési értékét is érdemes lenne leellenőrizni, mielőtt ráhívsz a visszaadott eredményre egy mysqli_num_rows-t - igaz, ennek elméletileg nullát kellene visszaadnia, ha már eleve előtte a query sem futott le helyesen.
A mysqli_real_escape_string-es bohóckodás nagyon rossz és rég elavult gyakorlat, helyette parametrizálni kell a query-t (lásd itt), és a nyelvi eszközök pedig elintézik, hogy az átpasszolt paraméterek le legyenek kezelve (rosszindulatúság és egyéb szempontokkal kapcsolatban).
Másik hiba: beállítod az $errors['pass']-t, és aztán később ellenőrzöd, hogy !isset($errors['userpass'])-t.
(másik kulcs, pass vs. userpass...
) Egyébként sem sok értelmét látom, hogy más kulcsot használsz fel az $errors tömbödben, mint az eredetileg klienstől (a formban az adott mező name attribútuma formájában) kapott kulcsoknál.
Egyébként mysqli-nél szerintem nagyon csúnya a procedurális formula, az objektumorientált API nem véletlenül áll rendelkezésre, de persze ízlések és pofonok.
Új hozzászólás Aktív témák
- Épített vízhűtés (nem kompakt) topic
- Battlefield 6
- Kormányok / autós szimulátorok topikja
- Xbox tulajok OFF topicja
- Marathon (2025)
- Építő/felújító topik
- Lítium-ion/Li-ion akkumulátorok
- Xiaomi 17 Ultra - jó az optikája
- AMD GPU-k jövője - amit tudni vélünk
- Telekom mobilszolgáltatások
- További aktív témák...
- Gainward 4060Ti Ghost 8GB / 11 Hónap Alza.hu Garancia / Beszámítás OK!
- BONTATLAN Új Ipad 10th , 11th Minden szín 1év hivatalos Apple Garancia AZONNAL ÁTVEHETŐ DEÁK TÉRNÉL.
- BONTATLAN Új Iphone 17 256-512GB Minden Szín 1év APPLE garancia gyári független Deák AZONNAL Átvehet
- BONTATLAN Új iPhone 17 PRO 256-512GGB Független 1év Apple GARANCIA Deák Térnél Azonnal Átvehető.
- Eladó SteelSeries Apex 3 gamer billentyűzet, új!
- Apple iPhone 15 128GB, Kártyafüggetlen, 1 Év Garanciával
- Bomba ár! HP ProBook 450 G7 - i5-10GEN I 8GB I 256SSD I HDMI I 15,6" FHD I Cam I W11 I Gar
- BESZÁMÍTÁS! Asus TUF F15 FX506HE FHD notebook - i5 11400H 16GB DDR4 512GB SSD RTX 3050 Ti 4GB WIN11
- iKing.Hu - Apple iPhone 13 Pro Max 128GB Space Gray használt szép állapot 100% akku 6 hónap garancia
- Beszámítás! Asus ROG Phone 9 256GB mobiltelefon garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
(másik kulcs, pass vs. userpass... 