-
Üyelik
05.03.2018
-
Yaş/Cinsiyet
26 / E
-
Meslek
Web developer
-
Konum
İstanbul Avrupa
-
Ad Soyad
İ** K**
-
Mesajlar
437
-
Beğeniler
132 / 131
-
Ticaret
0, (%0)
Mrtcn tarayıcı kapatıldığı zaman sessionlar siliniyor.
Web sitem: yazilimsoru.com
-
Üyelik
05.03.2018
-
Yaş/Cinsiyet
26 / E
-
Meslek
Web developer
-
Konum
İstanbul Avrupa
-
Ad Soyad
İ** K**
-
Mesajlar
437
-
Beğeniler
132 / 131
-
Ticaret
0, (%0)
OmerAYDINOGLU Nasıl yapabilirim?
Web sitem: yazilimsoru.com
-
Üyelik
19.02.2017
-
Yaş/Cinsiyet
24 / E
-
Meslek
Web Developer
-
Konum
Bursa
-
Ad Soyad
M** A**
-
Mesajlar
933
-
Beğeniler
136 / 276
-
Ticaret
11, (%100)
Eski bir projem için hazırlamıştım. Veritabanı işlemlerinde sınıf kullanmışım, o kodları pdo'ya göre değiştir. Direk kopyala yapıştır yaparsan sınıf hatası verecektir. Umarım biraz örnek olur.
Güvenlik konusunda ek olarak tokeni 5 dk'da bir hem çerezde hem de veritabanında değişmesini sağlayabilirsin. Ama bu sunucuya ek yük bindirecektir. Bunun dışında kullanıcı yeniden giriş yaptığında token zaten değişecektir.
Eğer beni hatırla seçiliyse;
if ( @$remember_me == '1' ) {
$remember_token = bin2hex(openssl_random_pseudo_bytes(64));
setcookie("token", $remember_token , time()+60*60*24*7, '/login',null,false,true );
//Varsa önceki tokenleri sil
$affected = DB::exec("DELETE FROM remember_me WHERE user_token='$user->user_token' ");
$id = DB::insert(
'INSERT INTO remember_me (user_id, remember_token,date) VALUES ( ?, ?,?)',
array($user_id,$remember_token, time() )
);
}
Login sayfasının başına;
if ( @$_COOKIE["token"] != "" ) {
$tok = $_COOKIE['token'];
$name = DB::getVar("SELECT user_token FROM remember_me WHERE remember_token = '$tok' LIMIT 1");
if ( $name != "" ) {
$user = DB::getRow("SELECT * FROM general_users WHERE user_token='$name' LIMIT 1");
if ( @$user->id == "" ) { setcookie("token", 'invalid'); header("Location:/"); die(); }
$_SESSION['oturum'] = 'active';
$_SESSION['user_token'] = $user->user_token;
$_SESSION['user_name'] = $user->user_name;
$_SESSION['user_payment_status'] = $user->user_payment_status;
$_SESSION['user_email_status'] = $user->user_email_status;
$_SESSION['user_type'] = $user->user_type;
header("Location:/");
}
}
1 kişi bu mesajı beğendi.
-
Üyelik
05.03.2018
-
Yaş/Cinsiyet
26 / E
-
Meslek
Web developer
-
Konum
İstanbul Avrupa
-
Ad Soyad
İ** K**
-
Mesajlar
437
-
Beğeniler
132 / 131
-
Ticaret
0, (%0)
mrarslan hocam kodları kendime göre düzenleyip deneyeceğim.
Web sitem: yazilimsoru.com
NumanABi
--> numanozdemir.com <--
Kullanıcı
-
Üyelik
02.09.2016
-
Yaş/Cinsiyet
34 / E
-
Meslek
-
-
Konum
Kırıkkale
-
Ad Soyad
N** Ö**
-
Mesajlar
1417
-
Beğeniler
380 / 442
-
Ticaret
21, (%95)
Session'u destroy etmedikçe ve cookie'yi expire etmedikçe zaten dolaylı olarak beni hatırla dedirmiş oluyorsun. :) Kullanıcı adı ve şifresini içeren özel bir algoritmayla şifreleyip cookie'lerde tutabilirsin ya da session'da da tutabilirsin.
1 kişi bu mesajı beğendi.
-
Üyelik
05.03.2018
-
Yaş/Cinsiyet
26 / E
-
Meslek
Web developer
-
Konum
İstanbul Avrupa
-
Ad Soyad
İ** K**
-
Mesajlar
437
-
Beğeniler
132 / 131
-
Ticaret
0, (%0)
NumanABi Session'u destroy etmiyorum fakat tarayıcıyı kapatınca direkt olarak çıkış yapıyor.
Mrtcn Kullanıma göre değişir derken yani tarayıcı kapatılsa bile hala session duruyor mu ?
Web sitem: yazilimsoru.com