📄 statistics.asp
字号:
<% Option Explicit %>
<!--#include file="conn.asp" -->
<%
Dim intForum
Dim lngTopic
Dim dtmTopic
Dim lngPost
Dim dtmPost
Dim lngPm
Dim dtmPm
Dim lngPoll
Dim intActiveUsers
Dim intGroups
Dim lngMember
Dim dtmMember
Dim lngUserID
Dim strActUser
Dim strForumName
Dim intGuestNumber
Dim intActiveGuests
Dim intActiveMembers
Dim strBrowserUserType
Dim strOS
Dim dtmLastActive
Dim dtmLoggedIn
Dim blnActiveUsers
intForum = 0
lngTopic = 0
lngPost = 0
lngPm = 0
intActiveUsers = 0
intGroups = 0
lngMember = 0
strSQL = "SELECT timescfg.* From timescfg;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then blnActiveUsers = CBool(rsConn("validuser"))
rsConn.Close
strSQL = "SELECT timesbbs.topicnum, timesbbs.postnum FROM timesbbs;"
rsConn.Open strSQL, adoCon
Do While NOT rsConn.EOF
intForum = intForum + 1
lngTopic = lngTopic + CLng(rsConn("topicnum"))
lngPost = lngPost + CLng(rsConn("postnum"))
rsConn.MoveNext
Loop
rsConn.Close
strSQL = "SELECT Count(timesuser.userid) AS CountAuthor FROM timesuser;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then lngMember = CLng(rsConn("CountAuthor"))
rsConn.Close
strSQL = "SELECT Count(timesmess.messid) AS CountPm FROM timesmess;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then lngPm = CLng(rsConn("CountPm"))
rsConn.Close
strSQL = "SELECT Count(timespoll.pollid) AS CountPoll FROM timespoll;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then lngPoll = CLng(rsConn("CountPoll"))
rsConn.Close
strSQL = "SELECT Count(timesgrp.grpid) AS CountGroup FROM timesgrp;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then intGroups = CLng(rsConn("CountGroup"))
rsConn.Close
strSQL = "SELECT TOP 1 timestopic.startdtm FROM timestopic ORDER BY timestopic.startdtm DESC;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then dtmTopic = CDate(rsConn("startdtm"))
rsConn.Close
strSQL = "SELECT TOP 1 timespost.msgdtm FROM timespost ORDER BY timespost.msgdtm DESC;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then dtmPost = CDate(rsConn("msgdtm"))
rsConn.Close
strSQL = "SELECT TOP 1 timesuser.joindtm FROM timesuser ORDER BY timesuser.joindtm DESC;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then dtmMember = CDate(rsConn("joindtm"))
rsConn.Close
strSQL = "SELECT TOP 1 timesmess.messdtm FROM timesmess ORDER BY timesmess.messdtm DESC;"
rsConn.Open strSQL, adoCon
If NOT rsConn.EOF Then dtmPm = CDate(rsConn("messdtm"))
rsConn.Close
%>
<html>
<head>
<title>论坛统计</title>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<link href="includes/style.css" rel="stylesheet" type="text/css">
<meta http-equiv="refresh" content="60">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div align="center">
<p class="text"><span class="heading"><font size="5"><strong>论坛统计</strong></font></span><br>
<br />
<a href="menu.asp" target="_self">返回到管理主菜单</a><br />
</p>
</div>
<table width="600" border="0" cellspacing="0" cellpadding="0" align="center" bgcolor="#000000">
<tr>
<td>
<table width="100%" border="0" align="center" cellpadding="4" cellspacing="1">
<tr align="left" bgcolor="#CCCCCC">
<td colspan="4" class="tHeading">论坛统计</td>
</tr>
<tr bgcolor="#FFFFFF">
<td width="31%" height="12" align="left" class="text">论坛数:<span class="smText"></span></td>
<td width="11%" valign="top" class="text">
<% = intForum %>
</td>
<td width="26%" valign="top" class="text">用户组数:</td>
<td width="32%" height="12" valign="top" class="text">
<% = intGroups %>
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td width="31%" height="12" align="left" class="text">主题数<span class="smText">:</span></td>
<td width="11%" valign="top" class="text">
<% = lngTopic %>
</td>
<td width="26%" valign="top" class="text">新主题发表时间:</td>
<td width="32%" height="12" valign="top" class="text">
<% = FormatDateTime(dtmTopic, vbLongDate) & ", " & FormatDateTime(dtmTopic, vbShortTime) %>
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td width="31%" height="12" align="left" class="text">回复数:<span class="smText"></span></td>
<td width="11%" valign="top" class="text">
<% = lngPost %>
</td>
<td width="26%" valign="top" class="text">新回复发表时间:</td>
<td width="32%" height="12" valign="top" class="text">
<% = FormatDateTime(dtmPost, vbLongDate) & ", " & FormatDateTime(dtmPost, vbShortTime) %>
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td height="2" align="left" class="text">会员数:</td>
<td valign="top" class="text">
<% = lngMember %>
</td>
<td valign="top" class="text">新会员加入时间:</td>
<td height="2" valign="top" class="text">
<% = FormatDateTime(dtmMember, vbLongDate) & ", " & FormatDateTime(dtmMember, vbShortTime) %>
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td height="2" align="left" class="text">短信数:</td>
<td valign="top" class="text">
<% = lngPm %>
</td>
<td valign="top" class="text">新短信发表时间:</td>
<td height="2" valign="top" class="text">
<% = FormatDateTime(dtmPm, vbLongDate) & ", " & FormatDateTime(dtmPm, vbShortTime) %>
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td height="2" align="left" class="text">投票数:</td>
<td valign="top" class="text">
<% = lngPoll %>
</td>
<td valign="top" class="text"> </td>
<td height="2" valign="top" class="text"> </td>
</tr>
</table></td>
</tr>
</table>
<div align="center">
<br /><br />
<%
If blnActiveUsers Then
strSQL = "SELECT Count(timesonline.userid) AS ActiveUser From timesonline;"
rsConn.Open strSQL, adoCon
intActiveUsers = CInt(rsConn("ActiveUser"))
rsConn.Close
strSQL = "SELECT Count(timesonline.userid) AS ActiveUser From timesonline WHERE timesonline.userid=2;"
rsConn.Open strSQL, adoCon
intActiveGuests = CInt(rsConn("ActiveUser"))
intActiveMembers = intActiveUsers - intActiveGuests
rsConn.Close
Response.Write(" <span class=""text"">现在有 " & intActiveMembers & " 个用户 " & intActiveGuests & " 位客人,共 " & intActiveUsers & " 人在线</span><br />")
%>
<br />
<table width="600" border="0" cellspacing="0" cellpadding="1" bgcolor="#000000" align="center">
<tr>
<td>
<table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF">
<tr>
<table width="100%" height="14" border="1" cellpadding="3" cellspacing="1" bordercolor="#999999" bgcolor="#FFFFFF">
<tr>
<td bgcolor="#CCCCCC" width="93" class="tHeading"><div align="center">用户名</div></td>
<td bgcolor="#CCCCCC" width="120" class="tHeading"><div align="center">注册时间</div></td>
<td bgcolor="#CCCCCC" width="117" class="tHeading"><div align="center">最后一次登录</div></td>
<td width="66" nowrap bgcolor="#CCCCCC" class="tHeading"><div align="center">在线时间</div></td>
<td bgcolor="#CCCCCC" width="95" align="left" class="tHeading"><div align="center">浏览器</div></td>
<td bgcolor="#CCCCCC" width="96" align="left" class="tHeading"><div align="center">操作系统</div></td>
</tr>
<%
strSQL = "SELECT timesonline.*, timesuser.Username FROM timesuser INNER JOIN timesonline ON timesuser.userid = timesonline.userid ORDER BY timesonline.Active DESC;"
rsConn.Open strSQL, adoCon
Do While NOT rsConn.EOF
lngUserID = CLng(rsConn("userid"))
strActUser = rsConn("Username")
strBrowserUserType = rsConn("Browser")
strOS = rsConn("OS")
dtmLastActive = CDate(rsConn("Active"))
dtmLoggedIn = CDate(rsConn("Login"))
%>
<tr>
<td width="93" height="24" nowrap bgcolor="#FFFFFF" class="text">
<%
If lngUserID = 2 Then
intGuestNumber = intGuestNumber + 1
Response.Write("Guest "& intGuestNumber)
Else
Response.Write(strActUser)
End If
%>
</td>
<td nowrap bgcolor="#FFFFFF" class="smText">
<% Response.Write(FormatDateTime(dtmLoggedIn, vbLongDate) & " " & FormatDateTime(dtmLoggedIn, vbShortTime)) %>
</td>
<td nowrap bgcolor="#FFFFFF" class="smText">
<% Response.Write(FormatDateTime(dtmLastActive, vbLongDate) & " " & FormatDateTime(dtmLastActive, vbShortTime)) %>
</td>
<td nowrap bgcolor="#FFFFFF" class="text">
<% = DateDiff("n", dtmLoggedIn, dtmLastActive) %>
分钟</div></td>
<td bgcolor="#FFFFFF" class="text" nowrap="NOWRAP">
<% = strBrowserUserType %>
<div align="center"></div></td>
<td bgcolor="#FFFFFF" class="text" nowrap="NOWRAP">
<% = strOS %>
</td>
</tr>
<%
rsConn.MoveNext
Loop
rsConn.Close
End If
%>
</table>
</tr>
</table>
</td>
</tr>
</table><%
Set rsConn = Nothing
adoCon.Close
Set adoCon = Nothing
%>
<br />
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -