关于用IP限制投票的问题
不知道下面这段代码有什么不对的,在我调试的,本机上,如果是同一IP就不能添加,但是在其它机子上(同一局域网内)同一台机子,同一个IP 也可以投票,请大侠指点一下。
<%
dim subject,xm1,xm2,xm3,xm4,xm5 '定义变量
set rs=server.createobject("adodb.recordset") '用createobject方法创建recordset对象
rs.open "select * from vote",conn,1,1
subject=rs("subject")
xm1=rs("xm1")
xm2=rs("xm2")
xm3=rs("xm3")
xm4=rs("xm4")
xm5=rs("xm5")
rs.close
set rs=nothing
%>
<%
dim myip,rsip
myip=request.ServerVariables("REMOTE_ADDR")
if request("act")="save" then
set rsv=server.createobject("adodb.recordset")
rsv.open "select * from vote",conn,1,3
vote=split(rsv("vote"),",")
set rsip=server.createobject("adodb.recordset")
rsip.open "select * from ip",conn,3,2
if myip=rsip("ip") then
%>
<%
response.write "<script>alert('你已经投过票了.');</script>"
response.redirect "view.asp"
else
%>
<%
if request.form("xm1")="" then
vote(0)=vote(0)
elseif request.form("xm1")="1" then
vote(0)=vote(0)+1
rsv("all")=rsv("all")+1
end if
if request.form("xm2")="" then
vote(1)=vote(1)
elseif request.form("xm2")="1" then
vote(1)=vote(1)+1
rsv("all")=rsv("all")+1
end if
if request.form("xm3")="" then
vote(2)=vote(2)
elseif request.form("xm3")="1" then
vote(2)=vote(2)+1
rsv("all")=rsv("all")+1
end if
if request.form("xm4")="" then
vote(3)=vote(3)
elseif request.form("xm4")="1" then
vote(3)=vote(3)+1
rsv("all")=rsv("all")+1
end if
if request.form("xm5")="" then
vote(4)=vote(4)
elseif request.form("xm5")="1" then
vote(4)=vote(4)+1
rsv("all")=rsv("all")+1
end if
if myip <> rsip("ip") then
rsip.addnew
rsip("ip")=myip
rsip.update
rsip.close
end if
set rsip=nothing
rsv("vote")=vote(0)&","&vote(1)&","&vote(2)&","&vote(3)&","&vote(4)&","
rsv.update
rsv.close
set rsv=nothing
response.redirect "view.asp"
end if
end if
%>