21 January 2009, 21:55 | Mesaj No:1 |
Durumu:
Papatyam No :
1326
Üyelik T.:
16 July 2008
Arkadaşları:0
Cinsiyet:
|
Üyelik Sistemi Yapımı:
Üyelik Sistemi Yapımı: Üyelik Sistemi Yapımı: //giris.asp <% if Session("durum"="giris_yapmis" ; then %> <% Response.Redirect "giris_sayfasi.asp" %> <%else %> <FORM name=loginform action="giris_kontrol.asp" method=post> <FONT face=verdana size=2>Kullanıcı Adı:</FONT></td><td><input name=kullanici_adi></td></tr> <tr><td><FONT face=verdana size=2>Şifre:</FONT></td><td><input type=password name=sifre></td></tr> <tr><td><center><input type=submit value=Gönder></center></FORM> <% end if %> //giris_kontrol.asp <% Set baglanti = Server.CreateObject("ADODB.Connection" baglanti.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("database/db.mdb" %> <% 'Sql Injection 'ı Önlemek ve HTML Kodlarını Pasif Hale Getirmek İçin Kullanılan Karakter Temizleme Metodu function guvenlik(data) data = Replace (data ,"`","",1,-1,1) data = Replace (data ,"=","",1,-1,1) data = Replace (data ,"&","",1,-1,1) data = Replace (data ,"%","",1,-1,1) data = Replace (data ,"!","",1,-1,1) data = Replace (data ,"#","",1,-1,1) data = Replace (data ,"<","",1,-1,1) data = Replace (data ,">","",1,-1,1) data = Replace (data ,"*","",1,-1,1) data = Replace (data ,"And","",1,-1,1) data = Replace (data ,"'","",1,-1,1) data = Replace (data ,"Chr(34)","",1,-1,1) data = Replace (data ,"Chr(39)","",1,-1,1) data = Replace (data ,"select","",1,-1,1) data = Replace (data ,"join","",1,-1,1) data = Replace (data ,"union","",1,-1,1) data = Replace (data ,"where","",1,-1,1) data = Replace (data ,"insert","",1,-1,1) data = Replace (data ,"delete","",1,-1,1) data = Replace (data ,"update","",1,-1,1) data = Replace (data ,"like","",1,-1,1) data = Replace (data ,"drop","",1,-1,1) data = Replace (data ,"create","",1,-1,1) data = Replace (data ,"modify","",1,-1,1) data = Replace (data ,"rename","",1,-1,1) data = Replace (data ,"alter","",1,-1,1) data = Replace (data ,"cast","",1,-1,1) guvenlik=data end function %> <% If trim(guvenlik(request.form("kullanici_adi&quo t))="" then Response.Write "<center><br><br><br> <br><br><br><br><b>U YARI:</b><br><br>Kullanıcı adınızı yazınız!<br><br><a href='javascript:history.back(1)'><FONT color=#e45f0e><u>Geri Dön</u></a></b></center>" response.end end if If trim(guvenlik(request.form("sifre"))=&q uot;" then Response.Write "<center><br><br><br> <br><br><br><br><b>U YARI:</b><br><br>Şifrenizi yazınız!<br><br><a href='javascript:history.back(1)'><FONT color=#e45f0e><u>Geri Dön</u></a></b></center>" response.end end if %> <% Set rs = Server.CreateObject("Adodb.Recordset" Sorgu = "select id, kullanici_adi, sifre from uyeler where kullanici_adi = '" & guvenlik(request.form("kullanici_adi") & "' and sifre = '" & guvenlik(Request.form ("sifre") & "'" rs.Open Sorgu, Baglanti, 1, 3 If rs.BOF And RS.EOF Then Response.Write "<center><br><br><br> <br><br><br><br><b>U YARI:</b><br><br>Kullanıcı adınız ya da şifreniz yanlıştır!<br><br><a href='javascript:history.back(1)'><FONT color=#e45f0e><u>Geri Dön</u></a></b></center>" Else Session("durum" = "giris_yapmis" Session("id" = rs("id" Session("kullanici_adi" = rs("kullanici_adi" Response.Cookies("TekTech"("kullan ici_adi" = Request.Form("kullanici_adi" Response.Cookies("TekTech"("sifre& quot = Request.Form("sifre" Response.Cookies("TekTech".Expires = Now()+15 Response.Redirect "giris_sayfasi.asp" End If %> //giris_sayfasi.asp <% Set baglanti = Server.CreateObject("ADODB.Connection" baglanti.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("database/db.mdb" %> <% if Session("durum"="giris_yapmis" ; then %> <% Set rs = Server.CreateObject("Adodb.Recordset" id = Session("id" Sorgu = "Select * from uyeler where id= " & id rs.Open Sorgu, Baglanti, 1, 3 if rs.eof then Response.Write "<center>Üye bilgisi bulunmamaktadır!</center>" else %> <b>Kullanıcı Adı:</b> <%=rs("kullanici_adi"%> <a href="cikis_yap.asp"><b>ÇIKIŞ YAP</b></a> <% end if %> <%else %> </p> <center><br><br><br><br ><br><br><br><b>UYARI:& lt;/b><br><br>Lütfen giriş yapınız!<br><br><a href='giris.asp'><FONT color=#e45f0e><u>Anasayfa</u></a></b></center> <% end if %> //cikis_yap.asp <% Session("durum"="" Response.Cookies("TekTech"("kullan ici_adi"="" Response.Cookies("TekTech"("sifre& quot="" Session("id"="" %> <% Response.Redirect "giris.asp" %> ----------------------------------------------------------------------------------------------- Yukarıdan da anlaşılacağı üzere üyelik sistemi yapımı oldukça kolaydır. Fakat, burada önemli olan session ve cookie ‘yi en iyi şekilde kullanabilmektir. Session sunucu tarafında, cookie ise istemci tarafında tutulur. Ayrıca, giris_kontrol.asp adlı dosyada yer alan sql tümcesinde uyeler adlı tablodaki tüm sütunları seçip verileri belleğe almak yerine yalnızca o anda ihtiyacım olan sütunları seçtirdim. Bunu yapmanın sebebi, üye girişinin daha hızlı olmasıdır. Örneğin, veritabanımızda 500 üyemiz var. Uyeler tablomuzda id, kullanici_adi, sifre gibi sütunların yanı sıra; üyenin adı, soyadı veya buna benzer bilgilerini içeren sütunlar olsun. Üye girişinde kullanıcı adı ve şifre eşleştirmesi yapılırken üyenin adı ve soyadı bir işimize yaramayacaktır. Üye girişinde işimize yarayacak olan tablolar id, kullanici_adi ve sifre ‘dir. Üye girişinde bu yöntemi kullanmak, üye girişlerinde ki ağırlığı hafifletecektir. Bir konuya daha değinmek istiyorum. Kullanıcı adı ve şifre form kutucuklarının kontrollerini yalnızca javascript kullanarak yapmak sakıncalıdır. Ziyaretçi bu kutucukların bulunduğu sayfayı kendi bilgisayarına kaydettikten sonra javascript kontrollerinin bulunduğu satırları silip formda ki boş bilgileri sayfaya post edebilir. Bu da doğal olarak ziyaretçinin sayfada hata ile karşılaşmasına neden olacaktır. Yukarıda vermiş olduğum örnekte javascript kontrolü yerine asp kodları ile kontrol yapılmaktadır. Ayrıca; giris_kontrol.asp adlı sayfanın en başında görmüş olduğunuz guvenlik adlı fonksiyon, üye girişlerinde sql injection ‘u önlemek ve html kodlarını pasif hale getirmek için kullanılmıştır. |
Bookmarks |
Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
Benzer Konular | ||||
Konu Başlıkları | Konuyu Başlatan | Papatyam Forum Ana Kategori Başlıkları |
Cevaplar | Son Mesajlar |
Badoo Üyelik Nasıl Silinir ? | PESTEMAL | Biligisayar Yardım Bölümü | 0 | 18 September 2014 10:39 |
Linux işletim sistemi nedir? | agasarlinuris | Linux | 0 | 16 July 2008 02:21 |
Güçlü bir bağışıklık sistemi için... | PESTEMAL | Beslenme ve Diyet | 0 | 20 March 2008 11:23 |
Ip sorgulama sistemi. | tamerr89 | php | 0 | 04 March 2008 14:23 |
Geniş Tabanlı Eğitim Sistemi | REHA | Deneme & Düz Yazılar | 4 | 21 April 2006 10:19 |
Tefekküre Davet Köşesi |
|
Papatyam Sosyal Medya Guruplarımıza Katılın |