📄 messages.asp
字号:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Refresh" content="5">
<link href="styles.css" rel="stylesheet" type="text/css">
</head>
<body leftmargin="5">
<!--#include file="config.asp" -->
<%
'检查用户是否登录
call openDB
varSQL = "SELECT * FROM USERS WHERE Username = '" & session.contents("Username") & "';"
rs.open varSQL, conn, 0, 1
if rs.EOF then
Session.Contents.RemoveAll()
else
varActive = rs("Active")
if varActive = 0 then
Session.Contents.RemoveAll()
end if
end if
if NOT session.contents("Status") = "" then
varUsername = session.contents("Username")
varUserID = session.contents("UserID")
'过滤掉不雅观的词汇
Dim swear(10)
swear(0) = "fuck"
swear(1) = "shit"
swear(2) = "cunt"
swear(3) = "bastard"
swear(4) = "bollock"
swear(5) = "twat"
swear(6) = "piss"
swear(7) = "wank"
swear(8) = "arse"
swear(9) = "slag"
swear(10) = "knob"
call openDB
'查询显示出当前聊天室最近的10条发言
rs.Open "Select Top 10 * from MESSAGES INNER JOIN USERS ON MESSAGES.UserID = USERS.UserID WHERE MESSAGES.RoomID = " & session.contents("RoomID") & " ORDER BY MessageID DESC", conn, 0, 1
if rs.EOF then
response.write "There are currently no messages entered for this room"
else
rs.movefirst
response.write "<br>"
i=0
do
i=i+1
varUser = rs("Username")
varMessage = rs("Message")
varStyle = rs("Style")
varColour = rs("Colour")
varTime = rs("MESSAGES.Time")
varTime = FormatDateTime(varTime, 4)
if session.contents("SwearFilter") = "on" then
for each item in swear
'
Dim oRegExp
Set oRegExp = new RegExp
oRegExp.IgnoreCase = True
oRegExp.Pattern = item
'替换掉不雅观的词语
varMessage = oRegexp.Replace(varMessage, "(BEEP)")
next
end if
if varStyle = "None" then
response.write "<font color='red'><b>" & varUser & ":</b></font> <font color=" & varColour & ">" & varMessage & "</font> - <font size='1' color='red'>" & varTime & "</font><br><br>"
else
response.write "<font color='red'><b>" & varUser & ":</b></font> <" & varStyle & "><font color=" & varColour & ">" & varMessage & "</font></" & varStyle & "> - <font size='1' color='red'>" & varTime & "</font><br><br>"
end if
rs.Movenext
loop until i=10 OR rs.EOF
end if
call closeDB
call openDB
'检查用户是否有私聊信息
varSQL = "SELECT * FROM PM WHERE User2ID = " & varUserID & " ORDER BY PMID Desc;"
rs.Open varSQL, conn
if rs.EOF then '如果没有,则不显示
'no messages so do nothing
'response.write "NO PMS"
else
'如果有私聊信息
rs.movefirst
if rs("New") = 1 then
varUser2ID = rs("UserID") '获取对方用户编号
varPMID = rs("PMID")
'弹出私聊对话框
response.write "<script language='Javascript'>"
response.write "window.open('pmwindow.asp?sltUser2ID=" & varUser2ID & "&txtStartID=" & varPMID & "', 'pm" & varPMID & "', 'width=250, height=150, scroll=no, toolbar=no')"
response.write "</script>"
call closeDB
'将是否私聊的状态字段New设置为0,为1表示有新私聊信息
call writeDB("UPDATE PM SET New='0' WHERE PMID = " & varPMID & ";")
end if
end if
else
response.write "你必须首先登录!"
response.write "<script language='Javascript'>parent.location = 'home.asp'</script>"
end if
'如果有错误,则重新刷新页面
If Err.number<>0 then
response.Redirect("messages.asp")
End If
%>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -