📄 message_admin.asp
字号:
<!--#include file="../ACT.Function.asp"-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>1</title>
<link href="../Images/css1/css.css" rel="stylesheet" type="text/css">
</head>
<body>
<% If Not ACTCMS.ChkAdmin() Then Call Actcms.Alert("对不起,您没有操作权限!","")
Dim Action,Title, Message, Numc,ShowErr
Action=Trim(Request("Action"))
Select Case Action
Case "SaveMsg"
Call SaveMsg()
Case "Del"
Call Del()
Case "Delall"
Call Delall()
Case "DelChk"
Call DelChk()
Case Else
Call Main()
End Select
Sub SaveMsg()
Server.ScriptTimeout=99999
Dim UserType
UserType = Trim(Request.Form("UserType"))
Title = Trim(Request.Form("title"))
Message = ACTCMS.RSQL(Request.Form("message"))
If Title="" or Message="" Then
ShowErr = "<li>请填写消息的标题和内容</li>"
Response.Redirect("<li>../Error.asp?Errs="&Server.URLEncode(ShowErr)&"&ErrorUrl=</li>")
Response.End
Exit Sub
End If
Select Case UserType
Case "1" : SaveMsg_1() '按指定用户
Case "2" : SaveMsg_2() '按指定用户组
Case "3" : SaveMsg_3() '按所有用户
Case Else
Response.Redirect("../Error.asp?Errs="&Server.URLEncode("<li>请输入收信的用户</li>")&"&ErrorUrl="&"&Title=1")
Response.End
End Select
ShowErr = "<li>操作成功!本次发送<b>"&Numc+1&"</b>个用户.请继续别的操作</li>"
Response.Redirect("../Error.asp?Errs="&Server.URLEncode(ShowErr)&"&ErrorUrl=User/Message_Admin.asp")
End Sub
Sub SaveMsg_1()'按指定用户
Dim ToUserName,Rs,Sql,i
ToUserName = Trim(Request.Form("UserName"))
If ToUserName = "" Then
Response.Redirect("../Error.asp?Errs="&Server.URLEncode("<li>请填写目标用户名,注意区分大小写。</li>")&"&ErrorUrl="&"&Title=1")
Response.End
Exit Sub
End If
ToUserName = Replace(ToUserName,"'","")
ToUserName = Split(ToUserName,",")
Numc= Ubound(ToUserName)
For i=0 To Numc
SQL = "Select UserName From User_ACT Where UserName = '"&ToUserName(i)&"'"
Set Rs = Conn.Execute(SQL)
If Not Rs.eof Then
Conn.Execute("insert into Message_ACT (incept,sender,title,content,sendtime,flag,issend,DelR,DelS) values('"&ToUserName(i)&"','"&Session("AdminName")&"','"&Title&"','"&Message&"',"&NowString&",0,1,0,0)")
End If
Next
Rs.Close : Set Rs = Nothing
End Sub
Sub SaveMsg_2()
Dim GroupID,i
Dim SearchStr,TempValue,DayStr
GroupID = Replace(Request.Form("GroupID"),chr(32),"")
If GroupID="" Then
Response.Redirect("../Error.asp?Errs="&Server.URLEncode("<li>请正确选取相应的用户组</li>")&"&ErrorUrl="&"&Title=1")
Exit Sub
Response.End
Else
GroupID = ACTCMS.RSQL(GroupID)
End If
DayStr = "'d'"
If Instr(GroupID,",")>0 Then
SearchStr = "GroupID in ("&GroupID&")"
Else
SearchStr = "GroupID = "&ACTCMS.RSQL(GroupID)
End If
If SearchStr="" Then
ShowErr = "<li>请填写发送的条件选项。</li>"
End If
If ShowErr<>"" Then Response.Redirect("../Error.asp?Errs="&Server.URLEncode(ShowErr)&"&ErrorUrl="&"&Title=1") : Exit Sub
Dim Rs,Sql
Sql = "Select UserName From User_ACT Where "& SearchStr & " Order By UserID Desc"
Set Rs = Conn.Execute(Sql)
If Not Rs.eof Then
SQL = Rs.GetRows(-1)
Numc= Ubound(SQL,2)
For i=0 To Numc
Conn.Execute("insert into Message_ACT (incept,sender,title,content,sendtime,flag,issend,DelR,DelS) values('"&SQL(0,i)&"','"&Session("AdminName")&"','"&Title&"','"&Message&"',"&NowString&",0,1,0,0)")
Next
End If
Rs.Close : Set Rs = Nothing
End Sub
Sub SaveMsg_3()'所有用户发送
Dim Rs,Sql,i
Sql = "Select UserName From User_ACT Order By UserID Desc"
Set Rs = Conn.Execute(Sql)
If Not Rs.eof Then
SQL = Rs.GetRows(-1)
Numc= Ubound(SQL,2)
For i=0 To Numc
Conn.Execute("insert into Message_ACT (incept,sender,title,content,sendtime,flag,issend,DelR,DelS) values('"&SQL(0,i)&"','"&Session("AdminName")&"','"&Title&"','"&Message&"',"&NowString&",0,1,0,0)")
Next
End If
Rs.Close : Set Rs = Nothing
End Sub
Sub Del()
dim sql
if request("username")="" then
Response.Write("<script>alert('请输入要批量删除的用户名!');history.back();</script>")
Exit Sub
end if
sql="delete from Message_ACT where sender='"&request("username")&"'"
Conn.Execute(sql)
Response.Redirect("../Error.asp?Errs="&Server.URLEncode("<li>操作成功!请继续别的操作。</li>")&"&ErrorUrl=User/Message_Admin.asp")
Response.End
End Sub
Sub Delall()
dim selflag,sql
if request("isread")="yes" then
selflag=""
else
selflag=" and flag=1"
end if
select case request("delDate")
case "all"
sql="delete from Message_ACT where id>0 "&selflag
case 7
sql="delete from Message_ACT where datediff('d',sendtime,Now())>7 "&selflag
case 30
sql="delete from Message_ACT where datediff('d',sendtime,Now())>30 "&selflag
case 60
sql="delete from Message_ACT where datediff('d',sendtime,Now())>60 "&selflag
case 180
sql="delete from Message_ACT where datediff('d',sendtime,Now())>180 "&selflag
end select
Conn.Execute(sql)
Response.Redirect("../Error.asp?Errs="&Server.URLEncode("<li>操作成功!请继续别的操作。</li>")&"&ErrorUrl=User/User/Message_Admin.asp")
Response.End
End Sub
Sub DelChk()
if request.form("keyword")="" then
Response.Redirect("../Error.asp?Errs="&Server.URLEncode("<li>请输入关键字</li>"))
Exit sub
end if
if request.form("selaction")=1 then
conn.Execute("delete from Message_ACT where title like '%"&replace(request.form("keyword"),"'","")&"%'")
elseif request.form("selaction")=2 then
conn.Execute("delete from Message_ACT where content like '%"&replace(request.form("keyword"),"'","")&"%'")
else
Response.Redirect("../Error.asp?Errs="&Server.URLEncode("<li>未指定相关参数!</li>"))
end if
Response.Redirect("../Error.asp?Errs="&Server.URLEncode("<li>操作成功!请继续别的操作。</li>")&"&ErrorUrl=User/Message_Admin.asp")
End Sub
Sub Main() %>
<table width="98%" border="0" align="center" cellpadding="3" cellspacing="1" class="table">
<form name="Msgform" method="post" action="?Action=SaveMsg">
<tr>
<td height="25" colspan="2" align="center" class="bg_tr">发送短消息</td>
</tr>
<tr>
<td width="20%" align="right" class="td_bg"><strong>用户类别:</strong></td>
<td width="80%" class="td_bg"><label for="UserType1">
<input onClick="UType(this.value)" type="radio" value="1" checked="checked" name="UserType" id="UserType1" />
用户名单</label><label for="UserType2">
<input onClick="UType(this.value)" type="radio" value="2" name="UserType" id="UserType2" />
用户组</label><label for="UserType3">
<input onClick="UType(this.value)" type="radio" value="3" name="UserType" id="UserType3" />
所有用户</label> </td>
</tr>
<tr id="ToUserName">
<td align="right" class="td_bg" ><strong>用 户 名:</strong></td>
<td class="td_bg"><input class="textbox" size="45" name="username" type="text" />
<br>
请输入用户名:(多个用户名请以英文逗号“,”分隔,注意区分大小写)</td>
</tr>
<tr id="ToGroupID" style="display:none;">
<td align="right" class="td_bg" ><strong>用 户 组:</strong></td>
<td class="td_bg"><%= ACTCMS.GetGroup_CheckBox("GroupID",0,5) %>
<label for="ChkAll"><input name="ChkAll" type="checkbox" id="ChkAll" onClick="CheckAll(this.form)" value="checkbox">全选</label></td>
</tr>
<tr>
<td width="20%" align="right" class="td_bg"><strong>消息标题:</strong></td>
<td width="80%" class="td_bg"><input name="title" type="text" class="textbox" id="title" value="" size="45" /></td>
</tr>
<tr>
<td width="20%" align="right" class="td_bg"><strong>消息内容:</strong></td>
<td width="80%" class="td_bg"><textarea name="Message" cols="50" rows="8"></textarea></td>
</tr>
<tr>
<td class="td_bg"> </td>
<td class="td_bg"><input name="UserSearch" type="hidden" id="UserSearch" value="7" />
<input name="Submit" type="button" value=" 发送消息 " Class="ACT_BTN" onClick="CheckForm()" />
<input type="reset" name="Submit2" Class="ACT_BTN" value=" 重新填写 "></td>
</tr>
</form></table>
<script language="javascript">
function UType(n){
if (n==1){
document.getElementById("ToUserName").style.display = "";
document.getElementById("ToGroupID").style.display = "none";
}
else if(n==2){
document.getElementById("ToUserName").style.display = "none";
document.getElementById("ToGroupID").style.display = "";
}
else{
document.getElementById("ToUserName").style.display = "none";
document.getElementById("ToGroupID").style.display = "none";
}
}
function CheckAll(form)
{
for (var i=0;i<form.elements.length;i++)
{
var e = Msgform.elements[i];
if (e.name != 'ChkAll'&&e.type=="checkbox")
e.checked = Msgform.ChkAll.checked;
}
}
function CheckForm()
{ var form=document.Msgform;
if (form.title.value=='')
{ alert("请输入消息标题!");
form.title.focus();
return false;
}
form.Submit.value="正在提交数据,请稍等...";
form.Submit.disabled=true;
form.Submit2.disabled=true;
form.submit();
return true;
}
</script>
<table width="98%" border="0" align=center cellpadding="3" cellspacing="1" class="table">
<tr align="center" class="title">
<td height="25" colspan="2" class="bg_tr">短消息管理(批量删除)</td>
</tr>
<form action="?action=Del" method=post>
<td colspan="2" class=td_bg>删除指定用户短消息:<input class="textbox" type="text" name="username" size=30>
<input type="submit" name="Submit" Class="ACT_BTN" value="提 交"> </td> </form>
<form action="?action=Delall" method=post>
<tr>
<td colspan="2" class=td_bg> 批量删除用户指定日期内短消息(默认为删除已读信息):<br>
<select name="delDate" size=1>
<option value=7>一个星期前</option>
<option value=30>一个月前</option>
<option value=60>两个月前</option>
<option value=180>半年前</option>
<option value="all">所有信息</option>
</select>
<input type="checkbox" name="isread" value="yes">
包括未读信息
<input type="submit" name="Submit" Class="ACT_BTN" value="提 交"> </td>
</tr>
</form>
<form action="?action=DelChk" method=post>
<tr>
<td colspan="2" class=td_bg> 批量删除含有某关键字短信(注意:本操作将删除所有已读和未读信息):<br>
关键字:
<input class="textbox" type="text" name="keyword" size=30>
在
<select name="selaction" size=1>
<option value=1>标题中</option>
<option value=2>内容中</option>
</select>
<input type="submit" Class="ACT_BTN" name="Submit" value="提 交">
</td>
</tr>
</form>
</table><%
End Sub
Public Function GetGroup_CheckBox(OptionName,SelectArr,RowNum)
Dim n:n=0
Dim RSObj:Set RSObj=Server.CreateObject("Adodb.Recordset")
IF RowNum<=0 Then RowNum=3
RSObj.Open "Select GroupID,GroupName From Group_ACT",Conn,1,1
GetGroup_CheckBox="<table width=""100%"" align=""center"" border=""0"">"
Do While Not RSObj.Eof
GetGroup_CheckBox=GetGroup_CheckBox & "<TR>"
For N=1 To RowNum
GetGroup_CheckBox=GetGroup_CheckBox & "<TD WIDTH=""" & CInt(100 / CInt(RowNum)) & "%"">"
If Instr(SelectArr,RSObj(0))<>0 Then
GetGroup_CheckBox=GetGroup_CheckBox & "<label for="& RSObj(0) &"><input id="&RSObj(0)&" type=""checkbox"" checked name=""" & OptionName & """ value=""" & RSObj(0) & """>" & RSObj(1) & "</label> "
Else
GetGroup_CheckBox=GetGroup_CheckBox & "<label for="& RSObj(0) &"><input id="&RSObj(0)&" type=""checkbox"" name=""" & OptionName & """ value=""" & RSObj(0) & """>" & RSObj(1) & "</label> "
End IF
GetGroup_CheckBox=GetGroup_CheckBox & "</TD>"
RSObj.MoveNext
If RSObj.Eof Then Exit For
Next
GetGroup_CheckBox=GetGroup_CheckBox & "</TR>"
If RSObj.Eof Then Exit Do
Loop
GetGroup_CheckBox=GetGroup_CheckBox & "</TABLE>"
RSObj.Close:Set RSObj=Nothing
End Function %>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -