📄 console.asp
字号:
<%
Class ImplMocomWAPmoWAPConsole
Private strHandle
Private blnError
Private strError
Private Sub Class_Initialize()
Set MyXML = MyKernel.XMLParser
strHandle = Request.QueryString("Handle")
blnError = True
End Sub
Private Sub Class_Terminate()
End Sub
Public Sub main()
MyXML.Align = "center"
MyXML.Println "我的控制台"
MyXML.Align = "left"
If IsGuest() Then
Call RegisterHint("只有注册用户才能使用控制台")
ElseIf Request.ServerVariables("REQUEST_METHOD") = "POST" Then
Call doPost
Else
Call doGet
End If
Call BackHome
Call setLog("console", 0)
MyXML.Transform Response
End Sub
Private Sub doGet()
Select Case LCase(strHandle)
Case "info"
Call doGetInfo
Case "modify"
Call doGetModify
Case "password"
Call doGetPassword
Case "publish"
Call doGetPublish
Case "publish.modify"
Call doGetPublishModify
Case Else
Call doGetMain
End Select
End Sub
Private Sub doPost()
Select Case LCase(strHandle)
Case "modify"
Call doPostModify
Case "password"
Call doPostPassword
Case "publish.modify"
Call doPostPublishModify
Case Else
Call doGetMain
End Select
End Sub
Private Sub doGetInfo()
MyXML.Println "[我的基本资料]"
MyXML.Println String(16, "-")
MyXML.Println "昵称:" & MyKernel.Memory("Nick")
MyXML.Println "真实姓名:" & MyKernel.Memory("UserName")
MyXML.Println "手机号码:" & IIf(ValidMobile(MyKernel.Memory("Mobile")), MyKernel.Memory("Mobile"), "")
MyXML.Println "注册时间:" & FormatTime(getDate(MyKernel.Memory("RegisterTime")), "YYYY-MM-DD HH24:MI:SS")
MyXML.Println "终端名称:" & MyKernel.Memory("FirstUserAgent")
MyXML.Println CreateA("console.asp?Handle=Modify", "修改资料", "")
MyXML.Println CreateA("console.asp?Handle=Password", "修改密码", "")
MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
End Sub
Private Sub doGetModify()
MyXML.Println "[修改资料]"
MyXML.SetF FormatURL("console.asp?Handle=Modify"), "post", "", True
MyXML.SetN "Nick", "text", "", "您的昵称:", "", True
MyXML.SetN "Name", "text", "", "真实姓名:", "", True
MyXML.SetN "Mobile", "text", "", "手机号码:", "", True, 11, 0, "NNNNNNNNNNN"
MyXML.SetN "", "submit", "确定", "", "", True
MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
End Sub
Private Sub doGetPassword()
MyXML.Println "[修改密码]"
MyXML.SetF FormatURL("console.asp?Handle=Password"), "post", "", True
MyXML.SetN "Passwd", "password", "", "旧密码:", "", True
MyXML.SetN "NewPwd", "password", "", "新密码:", " 区分大小写,最少6位", True
MyXML.SetN "CfmPwd", "password", "", "确认密码:", " 再输入一遍新密码,以便确认", True
MyXML.SetN "", "submit", "确定", "", "", True
MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
End Sub
Private Sub doGetMain()
MyXML.Println CreateA("msgbox.asp", "我的信箱", getImagePrefix("msgbox.gif"))
MyXML.Println CreateA("marker.asp", "我的书签", getImagePrefix("marker.gif"))
MyXML.Println CreateA("console.asp?Handle=Info", "我的资料", getImagePrefix("info.gif"))
MyXML.Println CreateA("console.asp?Handle=Publish", "我的信息", getImagePrefix("publish.gif"))
End Sub
Private Sub doPostModify()
MyXML.Println "[修改资料]"
If MyIO.Parse(KBYTE) <> 0 Then
strError = "超过最大数据请求长度:" & KBYTE
Else
Dim strNick, strName, strMobile
Dim strSQL
strNick = Trim(MyIO.Form("Nick"))
strName = Trim(MyIO.Form("Name"))
strMobile = Trim(MyIO.Form("Mobile"))
If strNick = "" Then strNick = MyKernel.Memory("Nick")
If strName = "" Then strName = MyKernel.Memory("Name")
If strMobile = "" Then strMobile = MyKernel.Memory("Mobile")
strSQL = getLimitSQL(1, "SEQID", T_USER, "NICK='$(Nick)' AND SEQID<>$(SeqId)", "", "")
strSQL = Replace(strSQL, "$(Nick)", SafeString(strNick))
strSQL = Replace(strSQL, "$(SeqId)", MyKernel.Memory("SeqId"))
If strMobile <> "" And Not ValidMobile(strMobile) Then
strError = "手机号码格式错误"
ElseIf LenC(strNick) > 20 Then
strError = "昵称的长度不能超过20个字节(即10个汉字)"
ElseIf Not ValidName(strNick) Then
strError = "请勿在昵称中使用特殊字符"
ElseIf MyKernel.DB.hasRecord(strSQL) Then
strError = "该昵称已被占用"
Else
blnError = False
strError = "资料修改成功"
strSQL = "UPDATE $(Table) SET NICK='$(Nick)',USERNAME='$(Name)',MOBILE='$(Mobile)' WHERE SEQID=$(SeqId)"
strSQL = Replace(strSQL, "$(Table)", T_USER)
strSQL = Replace(strSQL, "$(Nick)", SafeString(strNick))
strSQL = Replace(strSQL, "$(Name)", SafeString(strName))
strSQL = Replace(strSQL, "$(Mobile)", SafeString(strMobile))
strSQL = Replace(strSQL, "$(SeqId)", MyKernel.Memory("SeqId"))
MyKernel.DB.Exec strSQL
End If
End If
MyXML.Println strError
If blnError Then
Call doGetModify
Else
MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
End If
End Sub
Private Sub doPostPassword()
MyXML.Println "[修改密码]"
If MyIO.Parse(KBYTE) <> 0 Then
strError = "超过最大数据请求长度:" & KBYTE
Else
Dim strOld, strNew, strCfm
strOld = Trim(MyIO.Form("Passwd"))
strNew = Trim(MyIO.Form("NewPwd"))
strCfm = Trim(MyIO.Form("CfmPwd"))
If strOld = "" Then
strError = "请输入旧密码"
ElseIf MyKernel.Memory("Passwd") <> MD5(strOld) Then
strError = "旧密码错误"
ElseIf strNew = "" Then
strError = "请输入新密码"
ElseIf strNew <> strCfm Then
strError = "新密码与确认密码不符合"
Else
blnError = False
strError = "密码修改成功,您的新密码是:" & strNew
Dim strSQL
MyKernel.Memory("Passwd") = MD5(strNew)
strSQL = "UPDATE $(Table) SET PASSWD='$(Passwd)' WHERE SEQID=$(SeqId)"
strSQL = Replace(strSQL, "$(Table)", T_USER)
strSQL = Replace(strSQL, "$(Passwd)", MyKernel.Memory("Passwd"))
strSQL = Replace(strSQL, "$(SeqId)", MyKernel.Memory("SeqId"))
MyKernel.DB.Exec strSQL
End If
End IF
MyXML.Println strError
If blnError Then
Call doGetPassword
Else
MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
End If
End Sub
Private Sub doGetPublish
MyXML.Println "[我发布的信息]"
MyXML.Println String(16, "-")
Dim clsPage
Dim rs
Dim i
Set clsPage = MyKernel.Page()
clsPage.PageNum = MyIO.QueryString("Page")
clsPage.PageSize = 10
clsPage.DataType = WM_DataType
clsPage.Increment = "SeqId"
clsPage.Column = "SEQID,STAPLEID,TITLE,INTIME,EXAMINE"
clsPage.Table = T_CONTENT
clsPage.Where = "UserId=" & MyKernel.Memory("UserId")
clsPage.Sort = "SeqId DESC"
clsPage.SortType = True
Set rs = clsPage.Execute()
MyXML.Println "共发布信息" & clsPage.TotalRow & "条"
If clsPage.TotalRow > 0 Then
i = 0
Do While rs.EOF = False And i < clsPage.PageSize
MyXML.Printf ((clsPage.PageNum - 1) * clsPage.PageSize + i + 1) & "." & rs("Title") & "[" & IIf(atoi(rs("Examine")) = 1, "已审核", "未审核") & "/"
MyXML.Printf CreateA(getContentURL(rs("StapleId"), 1, rs("SeqId"), rs("Intime"), 1), "查看", "")
MyXML.Printf "/"
MyXML.Printf CreateA("console.asp?Handle=Publish.Modify&SeqId=" & rs("SeqId"), "编辑", "")
MyXML.Println "]"
rs.MoveNext
i = i + 1
Loop
If clsPage.PageNum < clsPage.TotalPage Then
MyXML.Printf CreateA("console.asp?Handle=Publish&Page=" & (clsPage.PageNum + 1), "下一页", "")
MyXML.Printf "|"
MyXML.Println CreateA("console.asp?Handle=Publish&Page=" & (clsPage.TotalPage), "最末页", "")
End If
If clsPage.PageNum > 1 Then
MyXML.Printf CreateA("console.asp?Handle=Publish&Page=" & (clsPage.PageNum - 1), "上一页", "")
MyXML.Printf "|"
MyXML.Println CreateA("console.asp?Handle=Publish", "第一页", "")
End If
If clsPage.TotalPage > 2 Then
MyXML.SetF "console.asp", "get", "", True
Call setQuery
MyXML.SetN "Handle", "hidden", "Publish", "", "", False
MyXML.SetN "Page", "text", "", clsPage.PageNum & "/" & clsPage.TotalPage & "页>>跳到", "页", False, 5, 5, "N*"
MyXML.SetN "", "submit", "GO", "", "", True
End If
End If
If Not rs Is Nothing Then rs.Close
Set rs = Nothing
Set clsPage = Nothing
MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
End Sub
Private Sub doGetPublishModify()
MyXML.Println "[编辑信息]"
Dim rs, strSQL
strSQL = getLimitSQL(1, "SeqId,Title,Content", T_CONTENT, "SeqId=$(SeqId) AND UserId=$(UserId)", "", "")
strSQL = Replace(strSQL, "$(SeqId)", atol(Request.QueryString("SeqId")))
strSQL = Replace(strSQL, "$(UserId)", MyKernel.Memory("UserId"))
Set rs = MyKernel.DB.Execute(strSQL)
If rs.EOF = False Then
MyXML.SetF FormatURL("console.asp?Handle=Publish.Modify&SeqId=" & rs("SeqId")), "post", "", True
MyXML.SetN "Title", "text", rs("Title"), "标题:", "", True
MyXML.SetN "Content", "text", rs("Content"), "内容:", "", True
MyXML.SetN "", "submit", "确定编辑", "", "", True
Else
MyXML.Println "未找到您要编辑的信息"
End If
rs.Close
Set rs = Nothing
MyXML.Println CreateA("console.asp?Handle=Publish", "返回我的信息", getImagePrefix("back.gif"))
MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
End Sub
Private Sub doPostPublishModify()
MyXML.Println "[编辑信息]"
Dim rs, strSQL
strSQL = getLimitSQL(1, "SEQID,STAPLEID,TITLE,CONTENT,INTIME,OUTIME", T_CONTENT, "SEQID=$(SeqId) AND USERID=$(UserId)", "", "")
strSQL = Replace(strSQL, "$(SeqId)", atol(Request.QueryString("SeqId")))
strSQL = Replace(strSQL, "$(UserId)", MyKernel.Memory("UserId"))
Set rs = MyKernel.DB.Query(strSQL, adOpenKeyset, adLockOptimistic, adCmdText)
If rs.EOF = False Then
Dim strTitle, strContent
strTitle = MyIO.Form("Title")
strContent = MyIO.Form("Content")
If strTitle = "" Then
MyXML.Println "编辑失败:请先输入标题"
Else
MyXML.Println "信息编辑成功"
rs("Title") = strTitle
rs("Content") = strContent
rs("Outime") = getTime(Now())
rs.Update
RemoveCacheZ rs("SeqId"), rs("Intime"), rs("StapleId")
End If
Else
MyXML.Println "未找到您要编辑的信息"
End If
rs.Close
Set rs = Nothing
MyXML.Println CreateA("console.asp?Handle=Publish", "返回我的信息", getImagePrefix("back.gif"))
MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
End Sub
Public Function newInstance()
Set newInstance = New ImplMocomWAPmoWAPConsole
End Function
End Class
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -