şimdi arkadaşlar beni hatırla cookie'si yapacağım. sorum şu:

- kullanıcı giriş yaptıktan sonra sitemde çeşitli sessionlar alıyor.

- $_SESSION["id"]; de bunlardan biri.

- cookie yaparken önce $_SESSION["id"] ile uyeler veritabanımdan mevcut id'li üyenin kullanıcı adı ve şifresini çekeceğim(şifre, karmaşıklaştırılmış halde tabi) ardından bunları cookie'ye atacağım setcookie ile.


- kullanıcı siteye bir daha uğradığında, cookie'si varsa, cookie'deki kullanıcı adı ve şifreyi çekeceğim, eğer veritabanımdaki ile eşleşirse oturum açacağım otomatik olarak.

burada her şeyin kilidi $_SESSION["id"] oluyor tabi. session değiştirilebiliyor mu? örneğin bir üye gidip bir yöntem ile $_SESSION["id"]'sini kafasına göre bir rakam yaparsa, başak bir üyeyle oturum açar. bu da güvenlik sorununa neden olur.

başka alternatif var mı?

 

yani adam kendi kullanıcı adı ve şifresiyle giriş yapıyor.
$_SESSION["id"] = 3 olarak atanıyor.

ardından bu adam çeşitli işlemler yaparak $_SESSION["id"] = 5 yapıyor ve artık 5 numaralı id'ye sahip kullanıcının cookie'sine sahip.

yani böyle bir şey yapabilmesi mümkün öyle mi? o zaman session id ile bu işi götürmemem gerekiyor


edit: ya da uye veritabanına yeni bir sütun açayım. ve her yeni giriş yapıldığında (cookie'siz, elle) oraya çoook rastgele bir değer atasın. o değeri de session'a atayım. ve yukarıdaki kodda $_SESSION["id"] ile birlikte $_SESSION["rastgele"] yi de kontrol ettireyim.

tchuck

kullanıcı tarafında tutulan sadece session id'dir. (senin belirlediğin değişken değil bu.)
session değişkenleri de (değiştirilmediyse) server tarafında tutulur. senin atayacağın $_SESSION['id'] 'yi değiştiremez yani.
ama kullanıcı nick ve hash'lenmiş şifresini direkt kullanıcıdan almak (cookie olarak olsa da) güzel bir iş değil. şu cevap işinize yarar heralde:
stackoverflow.com

yvandal
1

mobil görünümden çık