📄 write.asp
字号:
<!--#include file="Setting.asp"-->
<%
if InfoID=0 then Call Cl.OutMsg(0,"请指定评论ID!",ComeUrl)
if ChannelID=0 then Call Cl.OutMsg(0,"请指定频道ID",ComeUrl)
Dim Rs,SQL,InfoTitle,InfoUpdateTime
Cl.Get_WebSetting
Cl.Get_ChannelSetting(ChannelID)
Cl.ChkUserLogin
CommentID = Cl.GetClng(Request("CommentID"))
ModuleID = Cl.GetClng(Cl.Channel.selectSingleNode("@moduleid").text)
Select Case Action
Case "save"
Call SaveComment()
Case Else
Call WriteComment()
End Select
Cl.Title = InfoTitle & "[发表评论]"
Response.write Template.ReplaceAllFlag(TempStr)
Sub WriteComment()
if not Cl.ChkUserGroupID(Cl.Web_Setting(34),Cl.UserGroupID) then
Call Cl.OutErr(0,Cl.Language.SelectSingleNode("//NoLoginErr").text)
end if
if Instr(Session("CommentedID"),"#"&ChannelID&"|"&InfoID&"#")>0 then
Call Cl.OutErr(0,"<li>你已经对该篇文章发表过评论了!请勿连续对同一篇文章发表评论。</li>")
end if
Select Case ModuleID
Case 1 : SQL="Select Title,UpdateTime from Cl_Article Where InfoID = "&InfoID
Case 2 : SQL="Select SoftName,UpdateTime from Cl_Soft Where InfoID = "&InfoID
Case 3 : SQL="Select PhotoName,UpdateTime from Cl_Photo Where InfoID = "&InfoID
Case 4 : SQL="Select MovieName,UpdateTime from Cl_Movie Where InfoID = "&InfoID
Case 5 : SQL="Select ProductName,UpdateTime from Cl_Product Where InfoID = "&InfoID
Case Else : SQL="Select Title,UpdateTime from Cl_Article Where InfoID = "&InfoID
End Select
Set Rs = Cl.Execute(SQL)
If Rs.Eof Then
Call Cl.OutErr(0,replace(Cl.Language.SelectSingleNode("//InfoNoFind").text,"{$channelitemname}",Cl.Channel.SelectSingleNode("@channelitemname").text))
End if
InfoTitle = Rs(0)
InfoUpdateTime= Rs(1)
Rs.Close : Set Rs = Nothing
TempStr = Template.Read(TemplateWrite)
TempStr = Replace(TempStr,"{$infoid}",InfoID)
TempStr = Replace(TempStr,"{$channelid}",ChannelID)
TempStr = Replace(TempStr,"{$channelname}",Cl.Channel.selectSingleNode("@channelname").text)
TempStr = Replace(TempStr,"{$infotitle}",InfoTitle)
TempStr = Replace(TempStr,"{$infoupdatetime}",InfoUpdateTime)
TempStr = Replace(TempStr,"{$webdir}",InstallDir)
If Cl.UserID>0 Then
TempStr = Replace(TempStr,"{$username}",Cl.MemberName)
TempStr = Replace(TempStr,"{$useremail}",Cl.User_Info(7))
TempStr = Replace(TempStr,"{$isdisabled}"," disabled")
Else
TempStr = Replace(TempStr,"{$username}",Cl.GetUserGroupName(Cl.UserGroupID))
TempStr = Replace(TempStr,"{$useremail}",Cl.Web_Info(8))
TempStr = Replace(TempStr,"{$isdisabled}","")
End If
TempStr = Replace(TempStr,"{$usevalidcode}",UseValidCode)
TempStr = Replace(TempStr,"{$usergroupname}",Cl.GetUserGroupName(Cl.UserGroupID))
TempStr = Replace(TempStr,"{$comeurl}",ComeUrl)
end sub
sub SaveComment()
if Cl.ChkIsOuter then Call Cl.OutMsg(0,"请不要从外部访问此文件!","Index.asp")
if not Cl.ChkUserGroupID(Cl.Web_Setting(34),Cl.UserGroupID) then
Call Cl.OutErr(0,Cl.Language.SelectSingleNode("//NoLoginErr").text)
end If
If UseValidCode=1 Then
If Not Cl.CodeIsTrue(Trim(request.Form("Comment_ValidCode")),"Comment_ValidCode") then
Call Cl.OutErr(0,"验证码不正确,请刷新页面重新输入")
End if
End if
if Instr(Session("CommentedID"),"#"&ChannelID&"|"&InfoID&"#")>0 then
Call Cl.OutErr(0,"<li>你已经对该篇文章发表过评论了!请勿连续对同一篇文章发表评论。</li>")
end if
Dim rsComment,ClassID,tClass,IsNoPassed,SucMsg,Hidden
Dim UserName,UserEmail,Argue
Dim CommentTitle,AgreeContent,DisAgreeContent,CommentContent
IsNoPassed=True
if Cl.UserID>0 Then
UserName = Trim(Cl.MemberName)
UserEmail = Trim(Cl.User_Info(7))
else
UserName = Trim(request.Form("UserName"))
UserEmail = Trim(request.Form("UserEmail"))
if UserName="" Then UserName = Cl.GetUserGroupName(Cl.UserGroupID)
' Call Cl.OutMsg(0,"<br /><li>请输入您的姓名</li>","-1")
'end if
If Not Cl.ChkEmail(UserEmail) Then UserEmail = Cl.Web_Info(8)
' Call Cl.OutMsg(0,"<br /><li>请输入您的邮箱</li>","-1")
'end if
end if
Argue = Cl.GetClng(request.Form("Argue"))
Hidden = Cl.GetClng(request.Form("Hidden"))
CommentTitle = Trim(request.Form("CommentTitle"))
AgreeContent = Trim(request.Form("AgreeContent"))
DisAgreeContent = Trim(request.Form("DisAgreeContent"))
CommentContent = Trim(request.Form("CommentContent"))
If Argue = 1 Then
If AgreeContent="" Or DisAgreeContent="" Then
Call Cl.OutMsg(0,"<br /><li>请输入辨题正方及反方观点!</li>","-1")
End If
CommentContent = AgreeContent & "[PK]" & DisAgreeContent
Else
Argue = 0
End if
if CommentContent = "" then
Call Cl.OutMsg(0,"<br /><li>请输入评论内容</li>","-1")
end if
CommentContent = Cl.HTMLEncode(CommentContent)
if Cl.Web_Setting(3)="Yes" then '脏话过滤
CommentContent = Cl.ChkBadWords(CommentContent)
end if
Select Case ModuleID
Case 1
set tClass=Cl.Execute("select ClassID from Cl_Article where InfoID=" & InfoID)
Case 2
set tClass=Cl.Execute("select ClassID from Cl_Soft where InfoID=" & InfoID)
Case 3
set tClass=Cl.Execute("select ClassID from Cl_Photo where InfoID=" & InfoID)
Case 4
set tClass=Cl.Execute("select ClassID from Cl_Movie where InfoID=" & InfoID)
Case 5
set tClass=Cl.Execute("select ClassID from Cl_Product where InfoID=" & InfoID)
Case Else
set tClass=Cl.Execute("select ClassID from Cl_Article where InfoID=" & InfoID)
end Select
if tClass.bof and tClass.eof then
Call Cl.OutErr(0,replace(Cl.Language.SelectSingleNode("//InfoNoFind").text,"{$channelitemname}",Cl.Channel.SelectSingleNode("@channelitemname").text))
else
ClassID=tClass(0)
end if
set tClass=Cl.Execute("Select CommentGroup,CommentIsChk From Cl_Class where ClassID="&Clng(ClassID))
if tClass.bof and tClass.eof then
Call Cl.OutMsg(0,"找不到指定文章栏目!",ComeUrl)
End if
if Not Cl.ChkUserGroupID(tClass(0),Cl.UserGroupID) then
Call Cl.OutMsg(0,"对不起,此栏目只有 “"&Cl.GetUserGroupName(tClass(0))&"” 方可发表评论!",ComeUrl)
end if
IsNoPassed=tClass(1)
set tClass=Nothing
set rsComment=server.createobject("adodb.recordset")
sql="select Top 1 * from Cl_Comment"
OpenConn : rsComment.open sql,Conn,1,3
rsComment.addnew
rsComment("ChannelID") = ChannelID
rsComment("InfoID") = InfoID
rsComment("UserID") = Cl.UserID
rsComment("UserName") = UserName
rsComment("UserGroupID")= Cl.UserGroupID
rsComment("UserEmail") = UserEmail
rsComment("UserIP") = Cl.UserTrueIP
rsComment("CommentTitle") = CommentTitle
rsComment("CommentContent") = CommentContent
rsComment("CommentTime") = now()
rsComment("Hidden") = Hidden
rsComment("Argue") = Argue
if IsNoPassed=True then
rsComment("Status") = 0
SucMsg="发表评论成功,等待管理员审核后通过。点击返回!"
else
rsComment("Status") = 1
SucMsg="发表评论成功,点击返回!"
end if
rsComment.update
rsComment.close:set rsComment=Nothing
ReSessionCedID
Call Cl.OutMsg(0,SucMsg,"List.asp?ChannelID=" & ChannelID & "&InfoID=" & InfoID)
end sub
' 更新Session
Sub ReSessionCedID()
Dim sSCID,sSPCID
sSCID=Session("CommentedID")
if Trim(sSCID)="" then
sSCID="#" & ChannelID & "|" & InfoID & "#"
else
sSCID=left(sSCID,len(sSCID)-1)
sSCID=right(sSCID,len(sSCID)-1)
sSPCID=split(sSCID,"#")
if Ubound(sSPCID) < 50 then
sSCID="#" & sSCID & "#" & ChannelID & "|" & InfoID & "#"
else
sSCID=replace("#" & sSCID,"#" & sSCID(0) & "#","#") & "#" & ChannelID & "|" & InfoID & "#"
end if
end if
Session("CommentedID")=sSCID
End Sub
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -