📄 admin_counter.asp
字号:
<%
Option Explicit
Response.Buffer = True
Response.Expires = -1
Response.ExpiresAbsolute = Now() - 1
%>
<!--#Include File="../Conn.asp"-->
<!--#Include File="Admin_CheckPurview.asp"-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<link href='Admin_Style.css' type='text/css' rel='stylesheet'>
<title>网站流量统计</title>
<script language="javascript" src="../js/Common.js"></script>
<script language="javascript" src="../js/InstallDir.js"></script>
</head>
<body>
<%
If EL_Admin.Purview <> 1 Then
If EL_Admin.CheckAdminPurview(8, 3) = False Then
EL_Admin.ShowPurviewError("对不起!您没有足够的管理权限")
End If
End If
Dim ArrCounterField(8)
ArrCounterField(1) = "1$客户端IP地址分析$IP 地 址"
ArrCounterField(2) = "2$客户端地址分析$地址分析"
ArrCounterField(3) = "3$客户端链接页面分析$链接页面"
ArrCounterField(4) = "4$客户端浏览器分析$浏 览 器"
ArrCounterField(5) = "5$客户端字符串分析$字 符 串"
ArrCounterField(6) = "6$客户端操作系统分析$操作系统"
ArrCounterField(7) = "7$客户端屏幕大小分析$屏幕大小"
ArrCounterField(8) = "8$客户端屏幕色彩分析$屏幕色彩"
Dim Search_Keywords, Search_Field, CurrentPath
Search_Keywords = EL_Common.ReplaceBadChar(EL_Common.ELRequest("Search_Keywords", 1))
Search_Field = EL_Common.ReplaceBadChar(EL_Common.ELRequest("Search_Field", 1))
CurrentPath = "·您现在的位置:<a href='"& EL_CurrentScriptName &"'>网站流量统计</a> "
%>
<table width="100%" border="0" cellpadding="0" cellspacing="1" class="Border">
<tr>
<td align="center" class="top_25"><strong>网站流量统计</strong></td>
</tr>
<tr>
<td class="td_50">管理导航:<a href="Admin_Counter.asp">网站流量统计分析</a> | <a href="Admin_Counter.asp?Action=Config">网站流量统计配置</a> | <a href="Admin_Counter.asp?Action=InitData">初始化统计数据</a> | <a href="Admin_Counter.asp?Action=IpData">IP库管理</a> | <a href="Admin_Counter.asp?Action=AddIp">添加IP数据</a></td>
</tr>
<% If Action <> "InitData" And Action <> "ResetData" And Action <> "Config" And Action <> "IpData" And Action <> "SaveConfig" And Action <> "AddIp" And Action <>"ModifyIp" And Action <> "SaveNewIp" And Action <> "SaveModifyIp" Then %>
<tr>
<td class="item_25">| <a href="Admin_Counter.asp">综合统计</a> | <a href="Admin_Counter.asp?Action=Record">访问记录</a> | <a href="Admin_Counter.asp?Action=Year">年 报 表</a> | <a href="Admin_Counter.asp?Action=AllYear">全 部 年</a> | <a href="Admin_Counter.asp?Action=Month">月 报 表</a> | <a href="Admin_Counter.asp?Action=AllMonth">全 部 月</a> | <a href="Admin_Counter.asp?Action=Week">周 报 表</a> | <a href="Admin_Counter.asp?Action=AllWeek">全 部 周</a> | <a href="Admin_Counter.asp?Action=Day">日 报 表</a> | <a href="Admin_Counter.asp?Action=AllDay">全 部 日</a> | </td>
</tr>
<tr>
<td class="item_25">| <a href="Admin_Counter.asp?Action=Online">在线用户</a> |
<%
Dim i, arr
For i = 1 To Ubound(ArrCounterField)
arr = Split(ArrCounterField(i), "$")
Response.Write "<a href='Admin_Counter.asp?Action=Counter_"& arr(0) &"'>"& arr(2) &"</a> | "
Next
%> </td>
</tr>
<% End If %>
</table>
<br>
<%
Select Case Action
Case "Config": Call Config()
Case "SaveConfig": Call SaveConfig()
Case "IpData": Call IpManage()
Case "AddIp": Call AddIp()
Case "SaveNewIp": Call SaveNewIp()
Case "DeleteIp": Call DeleteIp()
Case "ModifyIp": Call ModifyIp()
Case "InitData": Call InitData()
Case "ResetData": Call ResetData()
Case "SaveModifyIp": Call SaveModifyIp()
Case "": Call Colligate()
Case "Record": Call Record()
Case "ShowVisitorInfo": Call ShowVisitorInfo()
Case "Year": Call YearReport(1)
Case "AllYear": Call YearReport(2)
Case "Month": Call MonthReport(1)
Case "AllMonth": Call MonthReport(2)
Case "Week": Call WeekReport(1)
Case "AllWeek": Call WeekReport(2)
Case "Day": Call DayReport(1)
Case "AllDay": Call DayReport(2)
Case "Online": Call ShowOnline()
Case "Counter_1": Call Counter_1()
Case "Counter_2": Call Counter_2()
Case "Counter_3": Call Counter_3()
Case "Counter_4": Call Counter_4()
Case "Counter_5": Call Counter_5()
Case "Counter_6": Call Counter_6()
Case "Counter_7": Call Counter_7()
Case "Counter_8": Call Counter_8()
End Select
Call EL_Common.Bottom()
Call ApplicationTerminate()
Sub ResetData()
On Error Resume Next
Response.Write "<div style='margin:20px; line-height:150%;'>"
Response.Write "<p><strong>开始初始化数据,在此过程中,请不要刷新页面!</strong></p>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 IP地址 表………………"
Conn.Execute("DELETE FROM EL_CounterIp")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 地址分析 表………………"
Conn.Execute("DELETE FROM EL_CounterAddress")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 链接页面 表………………"
Conn.Execute("DELETE FROM EL_CounterRefer")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 浏览器 表………………"
Conn.Execute("DELETE FROM EL_CounterBrowser")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 字符串 表………………"
Conn.Execute("DELETE FROM EL_CounterMozilla")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 操作系统 表………………"
Conn.Execute("DELETE FROM EL_CounterSystem")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 屏幕大小 表………………"
Conn.Execute("DELETE FROM EL_CounterScreen")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 屏幕色彩 表………………"
Conn.Execute("DELETE FROM EL_CounterColor")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 年报表 ………………"
Conn.Execute("DELETE FROM EL_CounterYearReport WHERE YearName!='Total'")
Conn.Execute("Update EL_CounterYearReport SET [1]=0,[2]=0,[3]=0,[4]=0,[5]=0,[6]=0,[7]=0,[8]=0,[9]=0,[10]=0,[11]=0,[12]=0")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 月报表 ………………"
Conn.Execute("DELETE FROM EL_CounterMonthReport WHERE MonthName!='Total'")
Conn.Execute("Update EL_CounterMonthReport SET [1]=0,[2]=0,[3]=0,[4]=0,[5]=0,[6]=0,[7]=0,[8]=0,[9]=0,[10]=0,[11]=0,[12]=0,[13]=0,[14]=0,[15]=0,[16]=0,[17]=0,[18]=0,[19]=0,[20]=0,[21]=0,[22]=0,[23]=0,[24]=0,[25]=0,[26]=0,[27]=0,[28]=0,[29]=0,[30]=0,[31]=0")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 周报表 ………………"
Conn.Execute("DELETE FROM EL_CounterWeekReport WHERE WeekName!='Total'")
Conn.Execute("Update EL_CounterWeekReport SET [1]=0,[2]=0,[3]=0,[4]=0,[5]=0,[6]=0,[7]=0")
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 日报表 ………………"
Conn.Execute("DELETE FROM EL_CounterDayReport WHERE DayName!='Total'")
Conn.Execute("Update EL_CounterDayReport SET [0]=0,[1]=0,[2]=0,[3]=0,[4]=0,[5]=0,[6]=0,[7]=0,[8]=0,[9]=0,[10]=0,[11]=0,[12]=0,[13]=0,[14]=0,[15]=0,[16]=0,[17]=0,[18]=0,[19]=0,[20]=0,[21]=0,[22]=0,[23]=0")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 访问记录 表………………"
Conn.Execute("DELETE FROM EL_CounterVisitor")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 在线用户 表………………"
Conn.Execute("DELETE FROM EL_CounterOnline")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p class=redtext>正在初始化 综合统计 表………………"
Conn.Execute("UPDATE EL_CounterConfig SET StartDate='"& Date() &"',TotalIp=0,TotalView=0,TodayName='"& Date() &"',TodayNum=0,TodayView=0,MaxMonthNum=0,MaxMonthName='"& Year(Date()) &"-"& Month(Date()) &"',MaxDayNum=0,MaxDayName='"& Date() &"',MaxHourNum=0,MaxHourName='"& Date() &" "& Hour(Now()) &":00:00" &"',TheMonthNum=0,TheMonthName='"& Year(Date()) &"-"& Month(Date()) &"',MaxDayNumOfTheMonth=0,MaxDayNameOfTheMonth='"& Date() &"'")
EL_Common.ShowScriptError()
Response.Write "<strong class=bluetext>完成!</strong></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
Response.Flush()
Response.Write "<p><strong>初始化数据完成!</strong></p>"
Response.Write "</div>"
Response.Flush()
Response.Write "<div style='text-align=center'><a href='Admin_Counter.asp'><strong>返回</strong></a></div>"
Response.Write "<p></p>"
Response.Write "<script>scrollBy(0,document.body.scrollHeight)</script>"
EL_Common.ShowScriptError()
End Sub
Sub SaveModifyIp()
On Error Resume Next
Dim StartIp, EndIp, Address, StartIpCode, EndIpCode , OldStartIp, OldEndIp, OldAddress
StartIp = EL_Common.ELRequest("StartIp", 3)
EndIp = EL_Common.ELRequest("EndIp", 3)
Address = EL_Common.ELRequest("Address", 3)
OldStartIp = EL_Common.ELRequest("OldStartIp", 3)
OldEndIp = EL_Common.ELRequest("OldEndIp", 3)
OldAddress = EL_Common.ELRequest("OldAddress", 3)
If CheckIp(StartIp) = False Then
EL_Common.ShowErrorMsg("请正确输入起始IP")
Exit Sub
End If
If CheckIp(EndIp) = False Then
EL_Common.ShowErrorMsg("请正确输入结束IP")
Exit Sub
End If
If Address = "" Then
EL_Common.ShowErrorMsg("请输入详细地址")
Exit Sub
End If
StartIpCode = IpEncode(StartIp)
EndIpCode = IpEncode(EndIp)
Conn.Execute("UPDATE EL_IpInfo SET StartIp="& StartIpCode &",EndIp="& EndIpCode &",Address='"& Address &"' WHERE StartIp="& OldStartIp &" And EndIp="& OldEndIp)
EL_Common.ShowSuccessMsg("修改IP成功!<br><span class=redtext>原IP:"& IpDecode(OldStartIp) &" - "& IpDecode(OldEndIp) &" :"& EL_Common.ServerHTMLEncode(OldAddress) &"</span><br><span class=bluetext>新IP:"& StartIp &" - "& EndIp &" :"& EL_Common.ServerHTMLEncode(Address) &"</span>")
EL_Common.ShowScriptError()
End Sub
Sub DeleteIp()
On Error Resume Next
Dim StartIp, EndIp
StartIp = EL_Common.ELRequest("StartIp", 1)
EndIp = EL_Common.ELRequest("EndIp", 1)
Conn.Execute("DELETE FROM EL_IpInfo WHERE StartIp="& StartIp &" AND EndIp="& EndIp)
EL_Common.ShowScriptError()
Response.Redirect ComeURL
End Sub
Sub SaveNewIp()
On Error Resume Next
Dim StartIp, EndIp, Address, StartIpCode, EndIpCode
StartIp = EL_Common.ELRequest("StartIp", 3)
EndIp = EL_Common.ELRequest("EndIp", 3)
Address = EL_Common.ELRequest("Address", 3)
If CheckIp(StartIp) = False Then
EL_Common.ShowErrorMsg("请正确输入起始IP")
Exit Sub
End If
If CheckIp(EndIp) = False Then
EL_Common.ShowErrorMsg("请正确输入结束IP")
Exit Sub
End If
If Address = "" Then
EL_Common.ShowErrorMsg("请输入详细地址")
Exit Sub
End If
StartIpCode = IpEncode(StartIp)
If Conn.Execute("SELECT COUNT(*) FROM EL_IpInfo WHERE StartIp="& StartIpCode)(0)>0 Then
EL_Common.ShowErrorMsg("添加失败!IP段已存在")
Exit Sub
End If
EndIpCode = IpEncode(EndIp)
Conn.Execute("INSERT INTO EL_IpInfo(StartIp,EndIp,Address) VALUES("& StartIpCode &", "& EndIpCode &",'"& Address &"')")
EL_Common.ShowSuccessMsg("添加IP成功!"& StartIp &" - "& EndIp &" :"& EL_Common.ServerHTMLEncode(Address))
EL_Common.ShowScriptError()
End Sub
Function CheckIp(ByVal StrIp)
CheckIp = False
If StrIp = "" Or IsNULL(StrIp) Then Exit Function
Dim arr, i
arr = Split(StrIp, ".")
If UBound(arr) <> 3 Then Exit Function
For i = 0 To 3
If Not IsNumeric(arr(i)) Then Exit Function
If EL_Common.ELClng(arr(i))<0 Or EL_Common.ELClng(arr(i))>255 Then Exit Function
Next
CheckIp = True
End Function
Sub SaveConfig()
On Error Resume Next
Dim OnlineTimer, IntervalTime, IntervalNum, MaxRecord, CounterField
OnlineTimer = EL_Common.ELRequest("OnlineTimer", 2)
IntervalTime = EL_Common.ELRequest("IntervalTime", 2)
IntervalNum = EL_Common.ELRequest("IntervalNum", 2)
MaxRecord = EL_Common.ELRequest("MaxRecord", 2)
CounterField = EL_Common.ELRequest("CounterField", 1)
Conn.Execute("Update EL_CounterConfig Set OnlineTimer='"& OnlineTimer &"',IntervalTime='"& IntervalTime &"',IntervalNum='"& IntervalNum &"',MaxRecord='"& MaxRecord &"',CounterField='"& CounterField &"'")
Application("EL_IntervalTime") = IntervalTime
Application("EL_IntervalNum") = IntervalNum
EL_Common.ShowSuccessMsg("修改网站流量统计配置成功")
EL_Common.ShowScriptError()
End Sub
Sub Counter_8()
On Error Resume Next
Dim CounterCmd, rsCounter, i, StrFields, StrCondition
Dim PageCounts, RowCount, TotalRowCount, Percent, TotalNum
StrFields = "*"
StrCondition = "1=1"
TotalNum = Conn.Execute("SELECT SUM(Num) FROM EL_CounterColor")(0)
Call EL_Common.InitCommand(CounterCmd, "EL_SP_SplitPage")
With CounterCmd
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -