|
主题: 怎样根据IP判断提交资料的人是否本校学生?
|
 ljzljz
职务:普通成员
等级:1
金币:0.0
发贴:42
注册:2003/6/25 21:50:15
|
|
 FengHan
职务:普通成员
等级:1
金币:0.0
发贴:8
注册:2003/6/13 22:39:16
|
#22003/6/26 16:21:47
这是不可能的,因为IP地址是不固定地址,除非你是局域网或你学校的电脑都是固定IP
|
 ljzljz
职务:普通成员
等级:1
金币:0.0
发贴:42
注册:2003/6/25 21:50:15
|
#32003/6/26 16:42:57
是呀,是固定的
|
 缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
注册:2004/1/14 19:14:47
|
#42003/6/26 18:47:57
那就简单了,如果大家公用一个固顶ip,根据Request.ServerVariables("REMOTE_ADDR")判断;如果ip段,那么再用Splite分割一下,对每类做比较
|
 ljzljz
职务:普通成员
等级:1
金币:0.0
发贴:42
注册:2003/6/25 21:50:15
|
#52003/6/26 21:55:21
我都是不明白,你可以给我写一段代码吗
|
 风之彼端
职务:普通成员
等级:1
金币:0.0
发贴:2
注册:2003/6/29 3:19:02
|
#62003/6/29 3:21:26
allinhands在上个帖子中说 引用: 那就简单了,如果大家公用一个固顶ip,根据Request.ServerVariables("REMOTE_ADDR")判断;如果ip段,那么再用Splite分割一下,对每类做比较
更正一下,应该是Split函数吧。
|
 udfans
职务:普通成员
等级:2
金币:0.0
发贴:417
注册:2002/2/2 12:32:55
|
#72003/6/29 16:35:23
function ipsource(sip) dim iprs,ipsql,ipconn,ipconnstr if isnumeric(left(sip,2)) then if sip="127.0.0.1" then sip="192.168.0.1" str1=left(sip,instr(sip,".")-1) sip=mid(sip,instr(sip,".")+1) str2=left(sip,instr(sip,".")-1) sip=mid(sip,instr(sip,".")+1) str3=left(sip,instr(sip,".")-1) str4=mid(sip,instr(sip,".")+1) if isNumeric(str1)=0 or isNumeric(str2)=0 or isNumeric(str3)=0 or isNumeric(str4)=0 then
else num=cint(str1)*256*256*256+cint(str2)*256*256+cint(str3)*256+cint(str4)-1 ipconnstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("data/ip.mdb") Set ipconn = Server.CreateObject("ADODB.Connection") ipconn.Open ipconnstr set iprs=server.createobject("adodb.recordset") ipsql="select Top 1 country,city from address where ip1 <="&num&" and ip2 >="&num&"" iprs.open ipsql,ipconn,1,1 if iprs.eof and iprs.bof then country="亚洲" city="" else country=iprs("country") city=iprs("city") end if iprs.close set iprs=nothing ipconn.close set ipconn=nothing end if ipsource=country&city else ipsource="未知" end if end function
|
 缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
注册:2004/1/14 19:14:47
|
#82003/6/29 20:05:46
手误,多谢 风之彼端 更正
|