www.gusucode.com > 星云DJ舞曲 4.5a源码程序 > connkkp.asp

    <%
	dim conn
	dim dbpath,userip
   	set conn=server.createobject("adodb.connection")
	DBPath = Server.MapPath("/data/xy.asa")
	conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath
' ---   封锁IP
	Dim User_Ip
	User_Ip=Request.servervariables("REMOTE_ADDR")
	call IpLock(User_Ip)
	Sub IpLock(User_Ip)
	Dim IpArray,WhyIpLock
	IpArray=split(User_Ip,".")
	Dim IpSQL,IpRS
	IpSQL="SELECT iplock From IpLock Where  "& _
	" (ipsame=4 and ip1="&Cint(IpArray(0))&" and ip2="&Cint(IpArray(1))&" and ip3="&Cint(IpArray(2))&" and ip4="&Cint(IpArray(3))&" )  "& _
	" Or (ipsame=3 and  ip1="&Cint(IpArray(0))&"  and  ip2="&Cint(IpArray(1))&"  and  ip3="&Cint(IpArray(2))&" )   "& _
	" Or (ipsame=2 and ip1="&Cint(IpArray(0))&" and ip2="&Cint(IpArray(1))&" )   "& _
	" Or (ipsame=1 and ip1="&Cint(IpArray(0))&" ) Order By ipid "
	Set IpRS=Conn.execute(IpSQL)
	If Not (IpRS.bof or IpRS.eof) Then
	WhyIpLock=split(IpRS("iplock"),"|")
		Response.Write "<script language=""JavaScript""> if (top!=self) top.location.href=location.href;</script><br>"  ' 禁止嵌入页面框架
		Response.Write "<p align=center><strong>"&WhyIpLock(1)&"</strong>"  '当受封锁IP时,页面原因说明
	Response.End
	End If
	Set IpRS=Nothing
	End Sub
' ---   防SQL注入
        Dim Fy_Url,Fy_a,Fy_x,Fy_Cs(),Fy_Cl,Fy_Ts,Fy_Zx
        Fy_Cl = 2	    '处理方式:1=提示信息,2=转向页面,3=先提示再转向
        Fy_Zx = "404.htm" '出错时转向的页面
        On Error Resume Next
        Fy_Url=Request.ServerVariables("QUERY_STRING")
        Fy_a=split(Fy_Url,"&")
        Redim Fy_Cs(ubound(Fy_a))
        On Error Resume Next
        For Fy_x=0 to ubound(Fy_a)
        Fy_Cs(Fy_x) = left(Fy_a(Fy_x),instr(Fy_a(Fy_x),"=")-1)
        Next
        For Fy_x=0 to ubound(Fy_Cs)
        If Fy_Cs(Fy_x)<>"" Then
        If Instr(LCase(Request(Fy_Cs(Fy_x))),"'")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"and")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"select")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"update")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"chr")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"delete%20from")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),";")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"insert")<>0 or Instr(LCase(Request(Fy_Cs(Fy_x))),"mid")<>0 Or Instr(LCase(Request(Fy_Cs(Fy_x))),"master.")<>0 Then
        Select Case Fy_Cl
        Case "1"
        Response.Write "<Script Language=JavaScript>alert('                   出现错误!参数 "&Fy_Cs(Fy_x)&" 的值中包含非法字符串!\n\n  请不要在参数中出现:;,and,select,update,insert,delete,chr 等非法字符!\n\n你想干吗!不要做无聊的事情!谢谢!');window.close();</Script>"
        Case "2"
        Response.Write "<Script Language=JavaScript>location.href='"&Fy_Zx&"'</Script>"
        Case "3"
        Response.Write "<Script Language=JavaScript>alert('                   出现错误!参数 "&Fy_Cs(Fy_x)&"的值中包含非法字符串!\n\n  请不要在参数中出现:;,and,select,update,insert,delete,chr 等非法字符!\n\n你想干吗!不要做无聊的事情!谢谢!');location.href='"&Fy_Zx&"';</Script>"
        End Select
        Response.End
        End If
        End If
Next
%>