TATbim
Banner Ağı
Bedava Reklam
www.tatbim.de
HOSTİNG
Web Hosting
RADYO HOSTİNG
www.jethost.de
Divx Forum
Divx Paylaşım
Türk Film Arşivi
www.dostkervani.net
Site Rehberi
Sitenizi Ekleyin
Hitiniz Artsın
www.yenilist.com
RADYODİLAN
24 Saat
Canlı Yayın
www.radyodilan.net
+ Forum TATbim » Webmaster FORUM » Programlama
 Asp İle Uyelere Özel Sayfalar Hazirlama Kodu

Kullanıcı Adı: Beni Hatirla
Şifre:
Sayfa: [1]
Konu: Asp İle Uyelere Özel Sayfalar Hazirlama Kodu  (Okunma Sayısı 754 defa) Seçenekler Arama
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
« : Aralık 05, 2007, 02:07:26 ÖÖ »
Oscar
Global Moderator
****

Teşekkür Puanı
-Verdiği Teşekkür: 0
-Aldığı Teşekkür: 9


Offline Offline

Mesaj Sayısı: 376

Ya Kral Olurum Ya Kural Koyarim...


Üyelik Bilgileri WWW
Asp İle Uyelere Özel Sayfalar Hazirlama Kodu

Asp'de en çok sorulan sorulardan bir tanesi üye kontrol işlemleridir.
İlk önce üye kontrol işlemlerinde hangi asp metodlarını kullandığımızı yazalım.


(Response.Expires) Sayfanın bilgisayarın Belleğinde(Cache) ne kadar tutacağını gösterir.
- Bu özelliği sayfanın bilgisayarda yedeklenmemesi için kullanacağız.
Kullanımı:
Response.Expires = 10 '10 dakika bilgisayarda kalır.


(Session.TimeOut) Hafıza'ya atadığımız değerlerin kaç dakika sonra son bulacağı belirtilir.
- Bu özelliği ziyaretçimiz giriş yaptıktan sonra bizim istediğimiz bir süre sayfada kalması için kullanacağız.
- Eğer hiç yazılmaz ise varsayılan süre 20 dakikadır.
- Session(Oturum) değerleri browser'ı kapatıp açınca otomatik olarak sonlandırılır.
Kullanımı:
Session.TimeOut = 50 '50 dakika sonra otomatik olarak hafızadaki değerler sıfırlanır


(Session("deger")) Hafızaya istediğimiz isimde değer atamak için kullanılır.
- Bu özelliği ziyaretçimizin izinlerini ayarlamak için kullanacağız.
- Mesela ziyaretçi daha önceden giriş yaptı ise Kullanıcı formu ekrana getirilmeyecek.
Kullanımı:
Session("izin")="hayır" 'izin ismi ile hafızaya hayır değeri kayıt ediliyor.


(SELECT) Seçim, Sql'de veritabanından kayıt seçmek için kullanılır,
- Bu metod ile Kullanıcının formda girdiği değerleri veritabanında olup olmadığını kontrol edeceğiz
- Ceviz.Net Sql bölümünde ayrıntılı olarak anlatılmıştır.


(Eof) End Of File,Dosya sonuna kadar okuma
- Bu özelliği kullanıcı'nın var olup olmadığı sorgusunda kullanacağız.
- Bu metod'u Sql ile Select(Seçim) yaptıktan sonra kullanacağız.
Kullanımı:
KayitNesnesi.Eof


Diğer özellikler script'in içerisinde açıklayalım.

Aşağıdaki kodları uye_kontrol.asp ismi ile kayıt edin.


Kod:
<%'SAYFAYI CACHE'DE HİÇ TUTMAResponse.Expires = -1
'HAFIZAYA ATADIĞIMIZ İZİN 900 DAKİKA GEÇERLİ OLSUNSession.TimeOut = 900
'VY İSMİ İLE VERİTABANI YOLUNU GÖSTERİYORUZ'UYE_KONTROL.ASP İLE AYNI YERDE BULUNAN UYE.MDB DOSYASINI KULLANACAĞIZ.vy = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("uye.mdb") 'Access 2000
'VB İSMİ İLE ACTİVE-X DATA OBJECT KULLANARAK 'VERİTABANI BAĞLANTI NESNESİNİ OLUŞTURUYORUZ.set vb = Server.CreateObject("adodb.connection")
'OLUŞTURDUĞUMUZ BAĞLANTI NESNESİNİ AÇIYORUZ 'HANGİ VERİTABANINI AÇACAĞIMIZDA OPENDAN SONRA BİR BOŞLUK BIRAKARAKYAZIYORUZ.vb.open vy
'OTURUM(SESSİON) NESNELERİ İNTERNET ADRESİNE GÖRE TUTULUR.'YALNIZ AYNI ADRES ALTINDA BİR ÇOK SİTE 'BARINDIRILABİLİR, (BEDAVA SERVERLARDA FALAN)'HAFIZA İSMİ ALTINDA TIRNAK İÇERİSİNDE KARIŞIK BİR ŞEYLER YAZIN'AMAÇ DİĞER SİTELER SİZİN HAFIZA ADINIZI YAZARAK KAÇAK GİRİŞ 'YAPMASIN.(ÖNEMLİDİR)hafiza = "2R0kK85" 'Hafıza değişkenin adı, Üye doğru giriş yapınca bu isimdeki 'bir değişkeni kayıt edecek
'VERİTABANINDAN SEÇİM YAPARKEN (SQL-SELECT) İLE BAZI UYANIK ZİYARETÇİLER.'KÖTÜ AMAÇLAR İÇİN SORGUMUZA SOKUŞTURMA YAPABİLİRLER 'BUNLARI BİZ SIFIRLAYALIM'FUNCTİON KULLANARAK TOPLU İŞLEMLER OLUŞTURABİLİRİZ KODARA İSMİ 'ALTINDA BİR FONKSİYON HAZIRLIYORZ'FONKSİYONDAKİ AMAÇ BİZİM KÖTÜ NİYETLİ GÖRDÜĞÜMÜZ 'SORGU SOKUŞTURMALARINI ÖNLEMEK.Function kodara(duzenlenecek)'BUNU YAPMAK İÇİNDE REPLACE (DEĞİŞTİRME) ÖZELLİĞİNİ KULLANIYORUZduzenlenecek = Replace(duzenlenecek,duzenlenecek,""& duzenlenecek &"", 1, -1, 1)'FONKSİYONA GELEN DEĞERLERDE AŞAĞIDAKİ KELİMELER VAR İSE ONLARI SIFIRLIYORUZduzenlenecek = Replace(duzenlenecek,"<","", 1, -1, 1)duzenlenecek = Replace(duzenlenecek,">","", 1, -1, 1)duzenlenecek = Replace(duzenlenecek,"'","", 1, -1, 1)duzenlenecek = Replace(duzenlenecek,"select","", 1, -1, 1)duzenlenecek = Replace(duzenlenecek,"union","", 1, -1, 1)duzenlenecek = Replace(duzenlenecek,"like","", 1, -1, 1)kodara = duzenlenecekEnd Function
'BİR KISAYOL KOYALIMResponse.Write "<a href='uye_kontrol.asp'>Üye Giriş Formu</a>"
'ZİYARETÇİ NE YAPMAK İSTİYOR ÜYE GİRİŞİ YAPMAKMI YOKSA ÇIKMAKMI.?'QUERYSTRİNG İLE ZİYARETÇİNİN NE YAPMAK İSTEDİĞİ SORULUYOR. uyeislem=Request.QueryString("uyeislem")'SELECT CASE İLE ZİYARETÇİ NE YAPMAK İSTİYORSA ZİYARETÇİMİZİ 'O BÖLÜME YOLLUYORUZ.Select Case uyeislemCase "giris" : girisCase "cikis" : cikis'HİÇ BİR ŞEY BELİRTMEMİŞ İSE GİRİS BÖLÜMÜNE YOLLUYORUZ ZİYARETÇİMİZİCase else : girisEnd Select
'SİFRE GİR DİYE BİR BÖLÜM AÇIYORUZ'BU BÖLÜMDE ZİYARETÇİNİN KULLANICI ADINI VE ŞİFRESİNİ 'GİRECEĞİ BİR FORM YAPIYORUZ.SUB SifreGirResponse.Write "<table align=center width='80%' border='0'>"Response.Write "<tr><td align='center' width='100%' colspan='2'>Lütfen Bilgilerinizi Giriniz.</td></tr>"Response.Write "<form method=post action=''>"Response.Write " <tr>"Response.Write "<td align='right' width='30%'>Kullanıcı Adı...:</td>"Response.Write "<td align='left' width='70%'><input type=text name=ad></td>"Response.Write " </tr>"Response.Write " <tr>"Response.Write "<td align='right' width='30%'>Şifre...:</td>"Response.Write "<td align='left' width='70%'><input type=password name=sifre></td>"Response.Write " </tr>"Response.Write " <tr>"Response.Write "<td align='center' width='100%' colspan='2'><input type=submit value='Giriş' class=tus></td>"Response.Write " </tr>"Response.Write "</form></table>"'Response.EndEND SUB

'############################## ŞİFRE KORUMASI #####################'EĞER KULLANICI ADI VE ŞİFRE DOĞRU DEĞİL İSE FORM EKRANA GELİYOR.'ŞİMDİDE SAYFAMIZDA İKİNCİ BİR BÖLÜM AÇIYORUZ BU BÖLÜMDE ŞİFRE GİRİŞ FORMUMUZSUB giris
'ASP'NİN HATA KONTROL NESNESİNDEN YARARLANIYORUZ'AMACIMIZ KULLANICIYA ANLAMSIZ VEYA BAZILARI İÇİN ANLAMLI :D ŞEYLER DÖKMEMEKOn error resume next
'DAHA ÖNCEDEN FORMDAN BİLGİ GİRİLİP İZİN ALINDI İSE HİÇ BİR ŞEY YAPILMIYOR.'HAFIZIDAKİ OTURUM DEĞERİ EVET İSEIf session(""& hafiza &"izin")="evet" then
'HOŞGELDİNİZ DE ZİYARETÇİMİZE, VE ÇIKIŞ YAPABİLMESİ İÇİN BİR KISAYOL OLUŞTUR.Response.Write "Hoşgeldiniz...: "& Session(""& hafiza &"dad") &",<a href=uye_kontrol.asp?uyeislem=cikis>Çıkış</a>"
'EĞER ZİYARETÇİMİZ DAHA ÖNCE BİZDEN İZİN ALMADI İSE AŞAĞIDAKİ KODLARI YORUMLAelse
'KULLANICI FORMDA NE GİRDİ İSE O DEĞERLERİ FAD,FSIFRE 'DİYE DEĞİŞKENLERE ATIYORUZ.'TRİM İLE'DE FORMU GİRERKEN SAĞDAN VEYA SOLDAN BOŞLUK VERDİ 'İSE ONLARI TEMİZLİYORUZ.fad = trim(Request.Form ("ad"))fsifre = trim(Request.Form ("sifre"))
'FORMUN DOLDURULUP DOLDURULMADIĞINI KONTROL EDİLİYOR.'FORMDA GİRİLEN AD VEYA ŞİFRE BOŞ İSEif fad="" or fsifre=""then
'SAYFANIN ÜSTÜNDE SIFRE GIR DİYE BİR BÖLÜM AÇMIŞTIK BİZ O BÖLÜMLER 'ÇAĞIRMADAN BÖLÜMLERDEKİ KODLAR EKRANA DÖKÜLMEZ BÖLÜMLERİ ÇAĞIRMAK İÇİN 'CALL'I KULLANIYORUZ. EĞER KULLANICI ADINI VEYA ŞİFRESİNİ YAZMADIYSA SIFREGIR 'BOLUMUNU EKRANA GETİRKİ YAZSIN.Call Sifregir
'SIFREGIR BÖLÜMÜNÜ ÇAĞIRDIKTAN SONRA SAYFANIN DİĞER İŞLEMLERİNİ 'YORUMLAMASINA GEREK YOK SONLANDIRIYORUZ.Response.End
'EĞER FAD,FSIFRE BOŞ DEĞİL İSE BU SORGUDA BİR ŞEY YAPMA,elseend if
'ÜYE TABLOSUNDA FORMDA GİRİLEN KULLANICI ADI VARMI YOKMU BAKILIYOR'İŞTE ASIL ÖNEMLİ OLAN YER BURASI ASLINDA TÜM YAPTIĞIMIZ İŞLEMDE BU SATIR'KELİME,KELİME ANLATALIM'SELECT (SEÇ)'* TÜM ALANLARI'FROM uyeler UYE TABLOSUNDAKİ'ÜYELER TABLOSUNDAKİ TÜM ALANLARI SEÇ DEDİKTEN SONRA WHERE 'İLE KISTAS(SÜZME) YAPIYORUZ.'uyead='"& kodara(fad) &"' ÜYE AD'I FORMDA GİRİLEN ÜYE ADINA 'EŞİT OLANLARI SEÇ'and uyesifre='"& kodara(fsifre) &"' VE AYRICA UYESIFRE ALANI 'FORMDA GİRİLEN ŞİFREYE EŞİT OLANLARI'KODARA KOYMAMIZIN SEBEBİ KÖTÜ NİYETLİ KULLANICILAR 'SEÇİMİMİZE SOKUŞTURMA YAPMAMASIsql = "SELECT * FROM uyeler WHERE uyead='"& kodara(fad) &"' and uyesifre='"& kodara(fsifre) &"'"
'RS İSMİ İLE ADO NESNEMİZİN KAYIT SETİ ÖZELLİĞİNİ TANIMLIYORUZ.set rs = Server.CreateObject("adodb.recordset")
'SQL İLE KAYITLARIMIZI SEÇMİŞTİK, ŞİMDİ SEÇİLEN KAYIDIMIZI 'AÇALIM SORGULAMA YAPACAĞIZ.rs.open sql , vb , 3 , 3
'SORGULAMIZA ŞİMDİ BAŞLIYORUZ.'SON KAYIDA KADAR OKU VE BENİM SEÇİMİMDE BİR KAYIT VARMI BAK. (EOF)'EĞER FORMDA GİRİLEN BİLGİLERE GÖRE KULLANICI ADI VE ŞİFRESİ VARMI.?'BOŞ İSEif rs.EOF then
'UYARI MESAJI YAZDIR.Response.Write "<font color='red'><center>Yanlış Şifre veya Parola</center></font>"
'VE ŞİFRE GİRME BÖLÜMÜNĞÜ TEKRAR EKRANA DÖK DOĞRU OLANI GİRSİN.Call Sifregir
'BUNDAN SONRA DİĞER İŞLEMLERİ YORUMLAMASINA GEREK YOK SIFIRLAResponse.End
'EĞER BOŞ DEĞİL İSE'YANİ KULLANICININ FORMDA GİRDİĞİ KULLANICI ADI VE 'ŞİFRESİ UYELER TABLOMUZDA VAR İSEelse
'SESSİONLARA(BU OTURUMA) KULLANICI İSMİ VE İZİNİ ATANIYOR.session(""& hafiza &"did") = rs("uyeno")session(""& hafiza &"dad") = rs("uyead")session(""& hafiza &"izin") = "evet"
'VE EKRANA UYARI MESAJI GETİRİLİYOR.Response.Write "Giriş Yapıldı."
'KULLANICI ADI VE ŞİFRESİ DOĞRUMU SORGUSU BİTİRİLİYOR.end if
'BAĞLANTI KAPATILIYOR. (KAYIT SETİ)rs.close
'BAĞLANTIMIZI SIFIRLIYORUZ.set rs=nothing
'DAHA ÖNCEDEN İZİN VERİLİP VERİLMEDİĞİNİ KONTROL EDEN SORGU BİTİLİYOR.end if
'EĞER HİÇ BİR HATA OLUŞMADI İSE BİR İŞLEM YAPILMIYOR.'HATA OLUŞTU İSE UYARI MESAJI ÇIKARILIYOR.if err.number = "0" thenelseResponse.Write "<font class=uyari>(X) Hata Oluştu</font><br>"Err.Clearend ifOn Error Goto 0
'VE SAYFAMIZDAKİ GİRİŞ BÖLÜMÜMÜZ BİTİRİLİYOR.END SUB'Giris'########################### ŞİFRE KORUMASI #####################

'CIKIŞ BÖLÜMÜMÜZ OLUŞTURULUYOR. ZİYARETÇİMİZ 900 DAKİKA 'DAN 'ÖNCE ÇIKMAK İSTEDİ İSESub cikis
'OTURUM İZİN DEĞERİNİ HAYIR YAPIYORUZ.session(""& hafiza &"izin") = "hayır"
'UYARI MESAJI ÇIKARIYORUZ.Response.Write "Çıkış işleminiz tamamlandı."
'BUNDAN SONRAKİ İŞLEMLERİ SONLANDIRIYORUZ.Response.End
'ÇIKIŞ BÖLÜMÜMÜZDE TAMAMLANMIŞ OLDU.End Sub 'cikis
'BAĞLANDIĞIMIZ VERİTABANINI KAPATIYOR VE SIFIRLIYORUZ.vb.closeset vb=nothing%>


Şimdi yapmamız gereken tek şey üye kontrolü yapmak istediğimiz sayfanın başına Bunu Uygulamak


Kod:
<!--#INCLUDE FILE="uye_kontrol.asp"-->

Son önemli not eğer bu scripti kullanacak iseniz uye.mdb dosyasının ismini ve hatta yerini
Güvenliğiniz için değiştirin, uye.mdb dosyasını değiştirdikten sonra uye_kontrol.asp 'deki
10.Satırdaki uye.mdb ismini ve yerini belirtmeyi unutmayın

Linklerin Gorulmesine izin Verilmiyor
Linki Gorebilmek icin Uye Ol veya Giris Yap
Tıkla


Logged

Linklerin Gorulmesine izin Verilmiyor
Linki Gorebilmek icin Uye Ol veya Giris Yap
Sayfa: [1]
 
Gitmek istediğiniz yer:  

Arşiv
MySQL ile Güçlendirildi PHP ile Güçlendirildi Powered by SMF 1.1.4 | SMF © 2006, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks

Copyright © 2001-2007 TATbim™
XHTML 1.0 Geçerli! CSS Geçerli!
|Sitemap|Sitemap1|Sitemap2|Wap|Wap2|Wap Forum|XML|