<%@LANGUAGE="VBSCRIPT" CODEPAGE="1254"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
<title></title>
</head>
<body>
<center>
<table width="367" border="0" class="yazi">
<tr>
<td>
<p style="text-align: center">
<%
mysql_server = "localhost"
mysql_user = "root"
mysql_pass = "root"
mysql_db = "movedb"
set baglanti = server.createobject("ADODB.connection")
baglanti.open "DRIVER={MySQL ODBC 5.1 Driver}; SERVER="&mysql_server&"; UID="&mysql_user&"; pwd="&mysql_pass&";db="&mysql_db&";"
' Burada zararlı ifadeler temizliyoruz.
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
' Burada ilk olarak dim adsoyad,... diyerek oluşturacağımız değişkenlerin isimlerini belirtiyoruz.
' Daha sonra değişkenlere eşit gelecek verileri request.Form ile alıyoruz.
' Burada trim(guvenlik()) diyerek kötü niyetli kişilerin işlerini zorlaştırıyoruz. Yularıdaki güvenlik fonksiyonumuzu burada çalıştırıyoruz.
dim a1,a2,a3,a4,a5,a6
a1=trim(guvenlik(request.Form("a1")))
a2=trim(guvenlik(request.Form("a2")))
a3=trim(guvenlik(request.Form("a3")))
a4=trim(guvenlik(request.Form("a4")))
a5=trim(guvenlik(request.Form("a5")))
a6=request.ServerVariables("REMOTE_ADDR")
a7=FormatDateTime(Date)
' Flood koruması gerçekleştiriyoruz
if session("x")="" then
session("x")=0
else
session("x")=session("x")+1
end if
if CInt(session("x"))>500 then ' Eğer 5 kereden fazla bu sayfaya geldiyse aşağıdaki hatayı vermesini sağlıyoruz. Buradaki 5 yerine siz dilediğiniz bir rakamı yazabilirsiniz.
Session.TimeOut=1 ' Uzaklaştırılma süresi
%><font face="Calibri" size="3" color="#333333">
Flood koruması devrede olduğu için bu sayfaya bir süreliğine ulaşamayacaksınız. Lütfen daha sonra tekrar deneyiniz.
<%
response.end
end if
' Aslında default.asp' de bu kontrolü yapmıştık. Eğer boş alan bırakılırsa hata veriyordu.
' Burdada diyelim ki biri direkt olarak www.siteadi.com/isle.asp sayfasına girdi, Default.asp' den gelmedi. O zaman boş bir şekilde veri kaydı gerçekleşir.
' Bu kontrolü yaparakta bunu engellemiş olduk. Eğer biz bunu yapmasak boş mesajlar gönderilebilinirdi.
if a1="" then
response.Redirect("form.asp") ' response bir cevap verme nesnesidir. redirect ise yönlendirme nesnesidir.
else
' Kayıt işlemi gerçekleşiyor
set kaydet=server.createobject("ADODB.recordset")
sql="Select * from form where a5='"&a5&"'"
kaydet.open sql,baglanti,1,3
toplam = kaydet.recordcount
if toplam => "18" then
response.write "<script>alert('18 Kişilik Limit Dolmuştur!')</script>"
%>
<script type="text/javascript">
window.location='form.asp';
</script>
<%
response.end
else
kaydet.addnew
kaydet("a1")=a1
kaydet("a2")=a2
kaydet("a3")=a3
kaydet("a4")=a4
kaydet("a5")=a5
kaydet("a6")=a6
kaydet.update
end if
%>
<br /><br />
<b>
<img border="0" src="images/webdev-ok-icon.png" width="128" height="128"></b></font></span><font face="Calibri" size="3" color="#333333"><br /><br />
işleminiz başarılı
bir şekilde tamamlanmıştır.
<br />
<br />
<b><a href="javascript:history.back();"><font color="#333333">Geri Dön</font></a></b><font color="#333333">
</font>
</font>
</span><font face="Trebuchet MS" size="2" color="#333333">
<%
end if
%>
</font>
</td>
</tr>
</table>
</center>
</body>
</html>denedim çalışıyor..