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 :)