Asp ile parola doğrulama çalışmıyor?

Web tabanlı uygulama geliştirme araçları(PHP, ASP vb...) ile ilgili konuları buraya yazabilirsiniz.
Cevapla
erdoganturkmen

Asp ile parola doğrulama çalışmıyor?

Mesaj gönderen erdoganturkmen »

Herkese merhabalar.. Asp ile bir veritabanına bağlantı yapabiliyorum.. Üyelere ait parola girişi bölümü var. Üyeler kullanıcı adını ve parolasını yazdıktan sonra eğer doğru ise istediğim yere yönlendiriyorum. Bura çalışıyor burda bi sorun yok. Ancak biraz garip ama kullanıcı adı ve parola eğer yanlış giriliyorsa sayfa görüntülenemiyor. Kullandığım Kod :

Kod: Tümünü seç

 <%
kullanici_adi = Request.Form ("kullanici_ad")
sifre = Request.Form ("sifre")
SET objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("admin.mdb")
SET ObjRs = Server.CreateObject ("ADODB.RecordSet")
StrSql = "select * from kayit where kullanici_ad='"&kullanici_adi&"' and sifre='"&sifre&"'"
ObjRs.Open StrSql, ObjConn, 1, 3
if Objrs("kullanici_ad")= kullanici_adi   and  Objrs("sifre")= sifre then
Response.Redirect("adminmesajlar.asp")
else
Response.Redirect("giris.asp")
end if
ObjRs.Close
ObjConn.close
%>
Adminler kullanıcı adını "Giriş.asp" sayfasında yazıyor. Konrol ise bu yazdığım kodların bulunduğu sayfa "Kontrol.asp" sayfasında gerçekleşiyor. Şimdiden Teşekkürler
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

çünkü burada bir hata oluşuyor. eğer giriş yapacak kimse hatalı bilgi girerse sorgu sonucu 0 kayıt döner.

Kod: Tümünü seç

if Objrs("kullanici_ad")= kullanici_adi   and  Objrs("sifre")= sifre then 
bu satırda EOF hatası oluşur. Bu nedenle sayfa görüntülenemiyor diyordur. Bunu yerine dönen kayıt sayısını kontrol et. Kolay gelsin.
erdoganturkmen

Mesaj gönderen erdoganturkmen »

mkysoft yazdı:çünkü burada bir hata oluşuyor. eğer giriş yapacak kimse hatalı bilgi girerse sorgu sonucu 0 kayıt döner.

Kod: Tümünü seç

if Objrs("kullanici_ad")= kullanici_adi   and  Objrs("sifre")= sifre then 
bu satırda EOF hatası oluşur. Bu nedenle sayfa görüntülenemiyor diyordur. Bunu yerine dönen kayıt sayısını kontrol et. Kolay gelsin.
Tamam da hocam asp de daha çok yeniyim. Ne dediğinizi tam olarak anlayamadım. Yani birinci kayıttan son kayıda kadar kontrol etmem mi gerekiyo normalde... Ne yapmam gerektiğini biraz daha açık yazarsanız çok sevinirim. Teşekkürler.
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

Kod: Tümünü seç

if Objrs.RecordCount = 1 then 
şeklinde olmalı o satırın. Bir şey daha hatırlatmak isteri:
birisi browser penceresine http://blabla.com/adminmesajlar.asp yazarsa ne olacak?
Bunu kontrol etmelisin.
erdoganturkmen

Mesaj gönderen erdoganturkmen »

Valla hocam oda ayrı bi sorun... Nasıl yapacağımı bilmiyorum. Session falan kullanmam gerektiği öğrendim internetten araştırarak. Ancak bunun nasıl yapılacağını bilmiyorum :oops:
Peki Ben bu kontrolü yapmak için bi döngü yapmam şart.. Mesela ;

Kod: Tümünü seç

 while Objrs.eof do begin 
end
gibi.. Her kayıtta iken kullanıcı adını ve parolayı kontrol etmem gerekiyor. Bununla ilgili nasıl bir kod yazacağım hakkında beni aydınlatırsanız çok sevinirim..
Cevapla