Archívum - Nov 21, 2009 - Fórum téma
Előző oldal lekérdezése
Hali!
Lenne egy kérdésem miszerint: Hogy tudom megnézni PHP-ban, hogy mi volt az előző megnyitott oldal, és ha nem az volt amit én szeretnék, egy ERROR üzenetet irjon ki?
Üdv.
Tamás
■ Lenne egy kérdésem miszerint: Hogy tudom megnézni PHP-ban, hogy mi volt az előző megnyitott oldal, és ha nem az volt amit én szeretnék, egy ERROR üzenetet irjon ki?
Üdv.
Tamás
Felhasználó azonosítás - Alapszintű biztonság
Üdv !
Ennél jobb címet sajnos nem igazán tudtam kitalálni :) Tehát most konkrét tapasztalatokra lennék kíváncsi a felhasználó azonosítás terén. Nekem eddig ez volt a "jól bevált" és nem túl bonyolult módszerem :
1. Sikeres Bejelentkezésnél session_start(); indítása, majd a felhasználónév - jelszó páros és az aktuális idő tárolása mondjuk a $_SESSION['name'], $_SESSION['pass'], és a $_SESSION['time'] változóban.
2. Minden egyes tevékenységnél, tehát ami az oldal frissítésével jár meghívódik például a következő függvény vagy valami ilyesmi :3. És akkor ennyi...lenne...
Biztosan irtó gyenge megoldás, és legalább 236987 sebből vérzik ezért érdekelne hogy hogyan kéne ezt szakszerűbben csinálni, (feltételezve hogy lehet jobban is) ? :)
A válaszokat előre is köszönöm :)
■ Ennél jobb címet sajnos nem igazán tudtam kitalálni :) Tehát most konkrét tapasztalatokra lennék kíváncsi a felhasználó azonosítás terén. Nekem eddig ez volt a "jól bevált" és nem túl bonyolult módszerem :
1. Sikeres Bejelentkezésnél session_start(); indítása, majd a felhasználónév - jelszó páros és az aktuális idő tárolása mondjuk a $_SESSION['name'], $_SESSION['pass'], és a $_SESSION['time'] változóban.
2. Minden egyes tevékenységnél, tehát ami az oldal frissítésével jár meghívódik például a következő függvény vagy valami ilyesmi :
- function loginValidate(){
- session_start();
- // Ha léteznek a változók...
- if(isset($_SESSION['name']) && isset($_SESSION['pass']) && isset($_SESSION['time'])){
- // Ha létezik a felhasználónév - jelszó páros és nem járt még le a 10 perc...
- if(ifUser($_SESSION['name'], $_SESSION['pass']) && (time() - $_SESSION['time'] < 600)){
- // Akkor az idő frissítése és az id újragenerálása hogy kicsit biztonságosabb legyen
- $_SESSION['time'] = time();
- session_regenerate_id();
- } else {
- // Különben destroy, és mehet vissza a bejelentkezéshez
- session_destroy();
- header('Location: login.php');
- exit();
- }
- } else {
- // Különben mehet vissza a bejelentkezéshez
- header('Location: login.php');
- exit();
- }
- }
Biztosan irtó gyenge megoldás, és legalább 236987 sebből vérzik ezért érdekelne hogy hogyan kéne ezt szakszerűbben csinálni, (feltételezve hogy lehet jobban is) ? :)
A válaszokat előre is köszönöm :)