ASP教程之开放源码 - 访客统计查询(五)
SQL Server是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。统计 <%<Script Language = "VBScript" RunAt = "Server">
Function DealIP(srcIP)
Dim lngIP, aryIP, I
lngIP = 0
aryIP = Split(srcIP, ".")
If UBound(aryIP) <> 3 Then
DealIP = 0
Exit Function
End If
For I = 0 To 3
lngIP = lngIP + (CInt(aryIP(I)) * (256 ^ (3 - I)))
Next
DealIP = lngIP - 1
If Err Then DealIP = 0
End Function
<!--METADATA TYPE="typelib" uuid="00000205-0000-0010-8000-00AA006D2EA4" -->
Sub Statistics_Add()
Session("IsRecorded") = False
Session("sttPage") = Request.ServerVariables("SCRIPT_NAME")
Session("refPage") = Request.ServerVariables("HTTP_REFERER")
If Not Session("IsRecorded") Then
Dim objConn, objRS, strSQL
Dim IEVersion, IPAddress, VisitDate, VisitTime, IPAddressDeal, tmpID
Dim sttPage, refPage
IEVersion = Request.ServerVariables("HTTP_USER_AGENT")
IPAddress = Request.ServerVariables("REMOTE_ADDR")
VisitDate = Date()
VisitTime = Time()
sttPage = Session("sttPage")
refPage = Session("refPage")
Set objConn = Server.CreateObject("ADODB.Connection")
With objConn
' 数据库毗连,字符串自定
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("... ...")
.Open
End With
IPAddressDeal = DealIP(CStr(IPAddress))
Set objRS = Server.CreateObject("ADODB.Recordset")
With objRS
.ActiveConnection = objConn
.CursorType = adOpenForwardOnly
.LockType = adLockReadOnly
.Source = "Select * From IPDatas Where IP_Lower <= " & IPAddressDeal & " And IP_Upper >= " & IPAddressDeal
.Open
End With
If objRS.EOF Then
tmpID = 29510
Else
tmpID = objRS("IP_ID")
End If
objRS.Close
With objRS
.ActiveConnection = objConn
.CursorType = adOpenForwardOnly
.LockType = adLockPessimistic
.Source = "Select * From IPs"
.Open
.AddNew
.Fields.Item("IEVersion") = IEVersion
.Fields.Item("IPAddress") = IPAddress
.Fields.Item("IP_ID") = tmpID
.Fields.Item("VisitDate") = VisitDate
.Fields.Item("VisitTime") = VisitTime
.Fields.Item("sttPage") = sttPage
.Fields.Item("refPage") = refPage
.Update
End With
objRS.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing
Session("IsRecorded") = True
End If
End Sub
Sub Application_OnStart()
Application("NowOnline") = 0
End Sub
Sub Session_OnStart()
Session.TimeOut = 20
Session("IsRecordedCCCNet") = False
Call Statistics_Add
Application.Lock
Application("NowOnline") = Application("NowOnline") + 1
Application.UnLock
End Sub
Sub Session_OnEnd()
Application.Lock
Application("NowOnline") = Application("NowOnline") - 1
Application.UnLock
End Sub
</Script>
%>
</p>专业性的服务。有的ASP商提供垂直型的应用服务,针对某一特定行业提供应用服务。 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助: 我想问如何掌握学习节奏(先学什么再学什么)最好详细点? 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 不能只是将它停留在纸上谈兵的程度上。 Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名") Session:这个存储跟客户端会话过程的数据,默认20分钟失效 从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了 下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助... 跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组 Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。
页:
[1]