• 19-12-2010, 20:41:59
    #10
    Üyeliği durduruldu
    <%@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..
  • 19-12-2010, 21:06:13
    #11
    Üyeliği durduruldu
    Microsoft OLE DB Provider for ODBC Drivers
     error '80004005' 
    [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
    isle.asp, line 23
    Bu şekilde hata veriyor access veri tabanında çalışmıyormu acaba?
  • 20-12-2010, 07:45:45
    #12
    Üyeliği durduruldu
    bilgisayarımda access olmadığı için mysql e aktarıp denemiştim.

    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&";"

    bu satırları silerek kendi access bağlantı kodunuzu yazarak değiştiriniz.
  • 20-12-2010, 11:10:12
    #13
    Üyeliği durduruldu
    malesef olmadı, 2 kere gönderdiğimde uyarı veriyor 18 diye

    <%@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">
    <%
    	yol=server.MapPath("data/db.mdb")
    	set baglanti=server.CreateObject("Adodb.connection")
    	baglanti.open("provider=microsoft.jet.oledb.4.0;data source="&yol)
        
        ' 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,a7
        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>