ASP网页设计用ASP猎取客户端IP地点的办法
因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。SQLServer还有更多的扩展,可以用存储过程,数据库大小无极限限制。</p> 要想透过代办署理服务器获得客户真个实在IP地点,就要利用Request.ServerVariables("HTTP_X_FORWARDED_FOR")来读取。不外要注重的事,并非每一个代办署理服务器都能用Request.ServerVariables("HTTP_X_FORWARDED_FOR")来读取客户真个实在IP,有些用此办法读取到的仍旧是代办署理服务器的IP。另有一点必要注重的是:假如客户端没有经由过程代办署理服务器来会见,那末用Request.ServerVariables("HTTP_X_FORWARDED_FOR")取到的值将是空的。因而,假如要在程序中利用此办法,能够如许处置:......
userip=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
Ifuserip=""Thenuserip=Request.ServerVariables("REMOTE_ADDR")
......
即:假如客户端经由过程代办署理服务器,则取HTTP_X_FORWARDED_FOR的值,假如没经由过程代办署理服务器,就取REMOTE_ADDR的值。
通用函数:假如不克不及取客户端实在IP,就会取客户真个代办署理IP
PrivateFunctiongetIP()
DimstrIPAddr
IfRequest.ServerVariables("HTTP_X_FORWARDED_FOR")=""ORInStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"),"unknown")>0Then
strIPAddr=Request.ServerVariables("REMOTE_ADDR")
ElseIfInStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"),",")>0Then
strIPAddr=Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"),1,InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"),",")-1)
ElseIfInStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"),";")>0Then
strIPAddr=Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"),1,InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"),";")-1)
Else
strIPAddr=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
EndIf
getIP=Trim(Mid(strIPAddr,1,30))
EndFunction无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的; 它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件) 先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习 封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
页:
[1]