Programlamaya Neden Yönetici panelinden başlıyoruz diye soracak olan arkadaşlar için açıklama yapıyorum
Web programcılıgında önemli olan bölüm yönetim panelidir, bütün ayarlarımızı buradan yapıcağımız için ilk önce paneli inşa etmeliyiz Anasayfamız sadece kayıt okuyan sayfa olacağı için herşeyi veritabanında alacak.
Örnek; Sobayı yakmadan ısınamayacağımız gibi...
Form'un action'unu girisyap.asp olarak belirliyoruz.
Textbox'lara isim vermek için öncellikle textbox'sımızın üstüne bir kere tıklıyoruz, sonra mouse imlecinin olduğu yere adını yazıyoruz, formdan verileri çekerken lazım olacak,
yönetici ve parola textboxlarını adlandırmayı kesinlikle unutmayın arkadaşlar!!
Ben Bu Şekilde basit bir form oluşturdum, daha güzellerini siz kendi siteniz için uyarlayın
-------------------------------------------------------------
Sıra geldi girisyap.asp sayfamızın içeriğine..
öncesinden birtane veritabanımızla bağlantımızı sağlayacak conn.asp adında sayfa oluşturalım sonrasında giris.asp içine include ediceğiz...
conn.asp
içine şunları yazalım
Kod:
<%
'veritabanı için bağlantımızı oluştuyoruz...
Set conn = server.createobject("adodb.connection")
conn.open "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" & Server.MapPath("dbmiz.mdb")
'veritabanına başarılı şekilde bağlanmış olduk arkadaşlar
%>
dbmiz.mdb ; veritabanımızın adıdır. yani access dosyamısın adı, ben admin klasörü içinde kullanacağım için sadece "dbmiz.mdb" yazdım
ana dizinde olsaydı "../dbmiz.mdb" yazmam gerekecekti.
burada ki ".." anadizini göstermekte,ve ondan sonra veritabanının yerini, eğer
veritabanımız anadizinde değilde başka bir klasörde olsaydı o zaman şu şekilde yazmamız gerekicekti
"../altklasor/dbmiz.mdb" bununda anlaşıldığını varsayarak devam ediyoruz...
-------------------------------------------------------
Kısa Açıklama :
set conn = server.createobject("adodb.connection")
Asp'nin server bağlantı objesidir, bizim veritabanı için en sık kullanacağımız 2 tane " Server.Creatobject " objesi vardır
birincisi ; set conn = server.createobject("adodb.connection") <<< budur
ikincisi ; Set kayitseti = Server.CreateObject("AdoDb.RecordSet") << budur
ikinici objemizi veritabanı işlemlerinde bol bol kullanacağız... Daha sonra açıklayacağım işleyiş mantığını...
-------------------------------------------------------
Set conn = server.createobject("adodb.connection")
'Set' den sonra gelen conn değişkendir (istediğimiz herşeyi yazabiliriz onun yerine). conn yerine baglanti, veya baglan veya ali, veli de yazabilirdik. Ben conn'u seçtim.
yeni başlangıç seviyesinde ki arkadaşlar conn'u değiştirmemeleri öneriliri kafanız karışabilir yoksa.
Şimdi girisyap.asp'yi yazıyoruz...
Kod:
<% 'asp tagımızı açıyoruz. ve devam ediyoruz
yonetici = Request.Form("yonetici") 'formda yonetici yazan textboxa yazılanı çektik
parola = Request.Form("parola") 'formda parola alanında ki yazılanı çektik
IF yonetici="" or parola="" Then 'eğer formdan gelen yonetici ve parola alanları boşsa
Response.Write "Bos Alanlari Doldurdugunuzdan Emin olun veya Yönetici Oldugunuzdan Emin Olum." ' Burada ki Response.write sayfaya yazdır komutumuzdur! ben kısaca R.w. diyeceğim, evet form boş olarak gönderildiğini fark ettik ve hatayı kullanıcıya belirttik
Response.End ' Response.end ile'de fonksiyonumuzu durduruyoruz ki sayfa sonuna kadar çalışmasın
END IF ' En başta açtığımız IF'mizi kapatıyoruz
'eğer yönetici adı ve parola yazıldıysa
veritabanında form'a girilen değerlerin olup olmadğını sorgulatıcaz
sql="Select * From yonetim Where onay=1 and yonetici = '"& yonetici &"' and parola = '"&parola&"'"
Set Kontrol = conn.ExeCute(sql)
'sql komutumuz veritabanı işlemlerimizi yapacak olan sorgu, buradaki sql yazısıda
girisyap.asp henüz bitmedi, resime bakıp burada ki kodlardan bi eksiklik varmı diye araştırıyoruz...
devamına aşağıdaki kodları yazıyoruz..
Kod:
IF Kontrol.eof Then
Response.Write "Yönetici adi veya Parola Yanlis"
Else
Session("ustagirdinmi") = "panelburami"
Session("id") = Kontrol("id")
Session("yonetici") = Kontrol("yonetici")
Response.Redirect "yonetim.asp"
END IF
Sql'e sorgulattıdıktan sonra Formda ki veriler yanlış ise Response.write
ile bilgilerin veritabanında olmadığını söylettik
Doğru ise;
Session("ustagirdinmi") = "panelburami" adında oturum açtık
Yanılmıyorsam 20 dakikalık bi oturum süresi açar bize.. bunun default süresi bu kadar. (yanlış hatırlamıyorsam tabii, yani 20 dakika aynı sayfada hiç bir işlem yapmadan durursak 21.dakikada bize otomatik çıkış yaptırır)
yine resmi inceliyoruz, eksiğimiz varmı diye kontrollümüzü yaptıktan sonra diğer derse geçiyoruz...