如何判断表单是不是从本站提交的
做了一个表单处理数据,因为处理的数据要较高的安全性,所以想检查表单是从本站提交的还是外部提交的,请问如何实现?
<%
Function isSelfRefer()
Dim sHttp_Referer, sServer_Name
sHttp_Referer = CStr(Request.ServerVariables("HTTP_REFERER"))
sServer_Name = CStr(Request.ServerVariables("SERVER_NAME"))
If Mid(sHttp_Referer, 8, Len(sServer_Name)) = sServer_Name Then
IsSelfRefer = True
Else
IsSelfRefer = False
End If
End Function
if isSelfRefer() then
response.write "ok"
else
response.write "no"
end if
%>
把以上代码放到aa.asp,如果是直接输入网址或者是从外部网部链接到本站,http://doamain/aa.asp 就会显示NO,
如果系从本站链接到aa.asp,或通过表单提交到aa.asp,将会显示ok
可以防止一些伪造表单向站内提交数据