Session Problemi

Web tabanlı uygulama geliştirme araçları(PHP, ASP vb...) ile ilgili konuları buraya yazabilirsiniz.
Cevapla
Kullanıcı avatarı
pentiumkivanc
Üye
Mesajlar: 350
Kayıt: 19 Şub 2004 10:24
İletişim:

Session Problemi

Mesaj gönderen pentiumkivanc »

Merhaba ASP de kullanıcıların sisteme giriş yapması sırasında

Kod: Tümünü seç

session.timeout=900
yapıyorum. Sonra sessionda login olduğunu

Kod: Tümünü seç

session("logged")
ile tutuyorum. Çerez kullanmıyorum. Ayrıca kullansamda kullanıcı şifremi hatırla dememiş olabilir. Bu yüzden session kullanıcının sistemde olduğunu tutmak zorunda. Şimdi bu bilgiler ışığında sisteme giren login olan bir kullanıcı; 900 dk boyunca hiçbirşey yapmazsa sistemden düşecek. Fakat daha 900 dk dolmadan :) hatta kullanıcı tam bir işlem yaptığında rasgele zamanlamalarla düzensiz olarak sistemden düşüyor. sanki session("logged") değişkeni diye bir değişken yokmuş gibi davranıyor. Örneğin bir yazı yazıyorsunuz. 1 er dakika aralıklarla sunucuya bilgi gönderiyorsunuz, mesela veritabanına bişeyler kaydediyorsunuz. 20-40-80 tane kayıt girdiniz. bu sırada birden bire (900 dk bile dolmadan :) ) session değişkeni sizi unutuyor ve tekrar login sayfasına yönlendiriyor. Session nesnesindeki bu dengesizliğin sebebi nedir? acaba kodda mı bir sorun var? yani kullanıcı login olunca yaptığı şeyler: sessionda logged diye bir değişken oluşturmak. Hatta timeout da dediğim gibi ayarlanıyor. Sonra başka bir asp sayfasına yönlendiriliyor. O asp sayfası da sesion("logged") değişkenini kontrol edip izin varsa devam ettiriyor. Yoksa login sayfasına yönlendiriyor. Umarım derdimi anlatabilmişimdir. Daha önce bu gibi bir durumla karşılaşan oldumu? çerez kullanmadan bunun üstesinden gelebilirmiyim?
m.erin
Üye
Mesajlar: 3
Kayıt: 18 Şub 2005 03:43
Konum: Konya

Cevap

Mesaj gönderen m.erin »

Aynı sorunu ben de yaşadım..
Cookie kullanmak zorunda kaldım açıkçaşı.. yada hiç zaman belirtmedim..

Ancak ben ASP kullanırken bunun gibi nelerle karşılaşıyorum bir bilseniz..

Bana bazen şöyle bir uyarı veriyo

Nesne gerkli: "

Bir tırnak işaretinin olmadığını söylüyor.. Aynı kodları notepad'de yazıp aynı yere yapıştırıyorum.. çalışıyo :D

Yani burada anlatmak istediğim ASP'de çok tutarsız olaylar gerçekleşiyor..

Bu sorunları ben kökten çözümle halletmeye çalışıyorum.. Bu da PHP

Kesinlikle tavsiye ederim..

KOLAY GELSİN
Ancestor
Üye
Mesajlar: 188
Kayıt: 27 Ara 2004 06:12
Konum: Manisa - Kırkağaç

Mesaj gönderen Ancestor »

session("logged")

Kod: Tümünü seç

session("logged")="giris var"
şeklinde oluşturduğunuz session değişkenine bişey atamazsanız eninde sonunda sizi hattan düşürür :)
Çıkış işlemi yaptırdığınız zaman ise bu değişkeni sıfırlarsınız olur biter ;)
Kullanıcı avatarı
pentiumkivanc
Üye
Mesajlar: 350
Kayıt: 19 Şub 2004 10:24
İletişim:

Mesaj gönderen pentiumkivanc »

@Ancestor; ben onu örnek olarak vermiştim. Elbette kullanıcının sisteme girdiğini bu şekilde tutmuyorum. Aslında anlatmak istediğim timeout olmadığı halde session un kendi elemanlarını resetlemesi. İster içindeki eleman logged değişkeni olsun isterse sessionn("username")="pentiumkivanc" olsun hiç farketmiyor. Tamamen spontane biçimde bunların değerleri resetleniyor.
Ancestor
Üye
Mesajlar: 188
Kayıt: 27 Ara 2004 06:12
Konum: Manisa - Kırkağaç

Mesaj gönderen Ancestor »

global.asa dosyası kullanıyorsundur herhalde;
global.asa dosyasının içinde bir defa session_onstart da timeout değerini ata ve bir daha başka yerlerde de değiştirme

Kod: Tümünü seç

Sub Session_OnStart
Session.Timeout = 30
End Sub
gibi...

Kolay Gelsin
Kullanıcı avatarı
pentiumkivanc
Üye
Mesajlar: 350
Kayıt: 19 Şub 2004 10:24
İletişim:

Mesaj gönderen pentiumkivanc »

Teşekküler;

global.asa kullanmadım. session timeout değerini kullanıcı oturum açtıktan sonra 1 kereye mahsus veriyorum. sorun devam ediyor
Ancestor
Üye
Mesajlar: 188
Kayıt: 27 Ara 2004 06:12
Konum: Manisa - Kırkağaç

Mesaj gönderen Ancestor »

ama unutmayalım ki sessionlar kendilerinden istenen performansı her zaman veremezler bu yüzden bence hemen cookie ye zıpla :D
Kullanıcı avatarı
pentiumkivanc
Üye
Mesajlar: 350
Kayıt: 19 Şub 2004 10:24
İletişim:

Mesaj gönderen pentiumkivanc »

:roll: evet sanırım başka çare yok
Teşekkürler
Cevapla