⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 admin_smspost.asp

📁 个人网站比较简短
💻 ASP
📖 第 1 页 / 共 2 页
字号:
<!--#include file="Admin_Common.asp"-->
<!--#include file="../Include/PowerEasy.MD5_New.asp"-->
<%
'**************************************************************
' Software name: PowerEasy SiteWeaver
' Web: http://www.powereasy.net
' Copyright (C) 2005-2008 佛山市动易网络科技有限公司 版权所有
'**************************************************************

Const NeedCheckComeUrl = True   '是否需要检查外部访问

Const PurviewLevel = 2      '0--不检查,1--超级管理员,2--普通管理员
Const PurviewLevel_Channel = 0   '0--不检查,1--频道管理员,2--栏目总编,3--栏目管理员
Const PurviewLevel_Others = ""   '其他权限

Dim SendTo
SendTo = Trim(Request("SendTo"))
If AdminPurview > 1 Then
    Select Case SendTo
    Case "Member"
        PurviewPassed = CheckPurview_Other(AdminPurview_Others, "SendSMSToMember")
    Case "Contacter"
        PurviewPassed = CheckPurview_Other(AdminPurview_Others, "SendSMSToContacter")
    Case "Consignee"
        PurviewPassed = CheckPurview_Other(AdminPurview_Others, "SendSMSToConsignee")
    Case "Other"
        PurviewPassed = CheckPurview_Other(AdminPurview_Others, "SendSMSToOther")
    End Select
    If PurviewPassed = False Then
        Response.write "<br><p align='center'><font color='red' style='font-size:9pt'>对不起,你没有此项操作的权限。</font></p>"
        Response.End
    End If
End If
Dim arrMobile()
regEx.Pattern = "[^0-9]"

Dim mSendNum     '接收短信的手机号
Dim mContent     '短信内容
Dim mSendTiming  '是否定时发送,0为否(默认),1为定时
Dim mSendTime    '定时发送时间
Dim MD5String   'MD5校验字符。MD5字符是由上述几个字段加上用户密码,然后用MD5函数加密得到的字符串。字段顺序如下:
                 'SMSUserName & SMSKey & mSendNum & mContent & mSendTiming & mSendTime
Dim RecieverCount
RecieverCount = 0
mContent = Trim(Request("Content"))
mSendTiming = PE_CLng(Trim(Request("SendTiming")))
Select Case SendTo
Case "SendToMember"
    mSendNum = GetReciever_Member()
Case "SendToContacter"
    mSendNum = GetReciever_Contacter()
Case "SendToConsignee"
    mSendNum = GetReciever_Consignee()
Case "SendToOther"
    mSendNum = Trim(Request("Receiver"))
    Dim arrReceiver
    arrReceiver = Split(mSendNum, vbCrLf)
    RecieverCount = UBound(arrReceiver) + 1
End Select
If mSendNum = "" Then
    FoundErr = True
    ErrMsg = ErrMsg & "<li>找不到满足条件的手机号码</li>"
End If
mSendTime = Trim(Request("SendDate")) & " " & Trim(Request("SendTime_Hour")) & ":" & Trim(Request("SendTime_Minute")) & ":00"

If mContent = "" Then
    FoundErr = True
    ErrMsg = ErrMsg & "<li>请输入短信内容</li>"
End If
If mSendTiming = 1 And IsDate(mSendTime) = False Then
    FoundErr = True
    ErrMsg = ErrMsg & "<li>定时发送时间的格式不对!</li>"
End If

If FoundErr = True Then
    Response.write ErrMsg
    Response.End
End If

Dim ID, ranNum, dtNow
Randomize
dtNow = Now()
ranNum = Int(900 * Rnd) + 100
ID = Year(dtNow) & Right("0" & Month(dtNow), 2) & Right("0" & Day(dtNow), 2) & Right("0" & Hour(dtNow), 2) & Right("0" & Minute(dtNow), 2) & Right("0" & Second(dtNow), 2) & ranNum

Dim PE_MD5
Set PE_MD5 = New Md5_Class
MD5String = UCase(Trim(PE_MD5.MD5(ID & SMSUserName & SMSKey & mSendNum & mContent & mSendTiming & mSendTime)))
Set PE_MD5 = Nothing

Dim MessageCount
MessageCount = ((Len(mContent) \ 70) + 1) * RecieverCount
%>
<html>
<head>
<Title>短信预览</Title>
<meta http-equiv='Content-Type' content='text/html; charset=gb2312' />
<link href='Admin_Style.css' rel='stylesheet' type='text/css'>
</head>
<body>
<table width='100%' border='0' align='center' cellpadding='2' cellspacing='1' class='border'>
  <tr class='topbg'>
    <td height='22' colspan='10'><table width='100%'><tr class='topbg'><td align='center'><b>发 送 手 机 短 信</b></td><td width='60' align='right'><a href='http://go.powereasy.net/go.aspx?UrlID=10047' target='_blank'><img src='images/help.gif' border='0'></a></td></tr></table></td>
  </tr>
  <tr class='tdbg'>
    <td width='70' height='30'><strong>管理导航:</strong></td>
    <td><a href='Admin_SMS.asp?SendTo=Member'>给会员发送短信</a>&nbsp;|&nbsp;    <a href='Admin_SMS.asp?SendTo=Contacter'>给联系人发送短信</a>&nbsp;|&nbsp;    <a href='Admin_SMS.asp?SendTo=Consignee'>给订单中的收货人发送短信</a>&nbsp;|&nbsp;    <a href='Admin_SMS.asp?SendTo=Other'>给其他人发送短信</a>    </td>
  </tr>
</table>
<form name='message' method='post' action='http://sms.powereasy.net/MessageGate2/MessageGate.aspx'>
<table width='100%' border='0' align='center' cellpadding='2' cellspacing='1' class='border'>
<tr class='title'><td colspan='2' align='center'>预 览 短 信</td></tr>
<tr class='tdbg' valign='top'>
<td width='300'>下面是根据您指定的条件查找到的接收人:<br><textarea name="SendNum" rows='20' cols='40' readonly><%= mSendNum %></textarea></td>
<td><b>短信内容:</b><br><textarea name="Content" rows='5' cols='60' readonly><%= mContent %></textarea><br><br><br><br><br><br><b>短信统计:</b><br>需要向 <%=RecieverCount%> 个号码发送 <%=MessageCount%> 条短信<br><br><b>说明:</b><br>因为每条短信不能超过70个字,所以短信数可能会大于号码数。<br>因为短信内容中的变量替换等原因,可能会导致实际发送的短信数会超过这里计算的短信数,最终结果以动易短信通平台上的实际发送数目为准。</td></tr>
<tr class='tdbg'><td colspan='2' height='50' align='center'><input type='submit' name='submit' value='提交给短信服务器'>
<input type="hidden" name="UserName" value="<%= SMSUserName %>" />
<input type="hidden" name="SendTiming" value="<%= mSendTiming %>" />
<input type="hidden" name="SendTime" value="<%= mSendTime %>" />
<input type="hidden" name="MD5String" value="<%= MD5String %>" />
<input type="hidden" name="Reserve" value="管理员ID:<%= AdminID %>" />
<input type="hidden" name="ID" value="<%= ID %>" />
</td></tr></table>
</form>
</body>
</html>
<%
Function FoundMobile(sMobile, iTemp)
    Dim i, bl
    bl = False
    For i = iTemp To 0 Step -1
        If Trim(arrMobile(i)) = Trim(sMobile) Then
            bl = True
            Exit For
        End If
    Next
    FoundMobile = bl
End Function

Function GetValidNumber(sNumber)
    Dim strTemp, l
    strTemp = regEx.Replace(sNumber, "")
    l = Len(strTemp)
    If (l = 11 Or l = 12) And (Left(strTemp, 1) = "0" Or Left(strTemp, 1) = "1") Then
        GetValidNumber = strTemp
    Else
        GetValidNumber = ""
    End If
End Function

Function GetReciever_Member()
    Dim InceptType, GroupID, inceptUser
    Dim sqlUser, strReciever, strMobile
    Dim BeginID, EndID
    inceptUser = Replace(ReplaceBadChar(Request("InceptUser")), ",", "','")
    BeginID = PE_CLng(Trim(Request("BeginID")))
    EndID = PE_CLng(Trim(Request("EndID")))
    strReciever = ""
    sqlUser = "select U.UserName,C.TrueName,C.Mobile,C.PHS from PE_User U left join PE_Contacter C on U.ContacterID=C.ContacterID where (C.Mobile<>'' or C.PHS<>'')"
    InceptType = PE_CLng(Trim(Request("InceptType")))
    GroupID = Trim(Request("GroupID"))
    If IsValidID(GroupID) = False Then
        GroupID = ""
    End If

    If GroupID <> "" Then
        sqlUser = sqlUser & " and U.GroupID in (" & GroupID & ")"
    End If

    If inceptUser <> "" Then
        sqlUser = sqlUser & " and U.UserName in ('" & inceptUser & "')"
    End If
    If BeginID > 0 Then
        sqlUser = sqlUser & " And U.UserID>=" & BeginID
    End If
    If EndID > 0 Then
        sqlUser = sqlUser & " And U.UserID<=" & EndID
    End If
    sqlUser = sqlUser & " order by C.Mobile,C.PHS"
    Dim rsUser, strMoblie
    Set rsUser = server.CreateObject("adodb.recordset")
    rsUser.open sqlUser, Conn, 1, 1
    ReDim arrMobile(rsUser.recordcount)
    Do While Not rsUser.EOF
        strMobile = rsUser("Mobile")
        If strMobile = "" Then strMobile = rsUser("PHS")
        strMobile = GetValidNumber(strMobile)
        If strMobile <> "" Then
            If FoundMobile(strMobile, RecieverCount) = False Then
                arrMobile(RecieverCount) = strMobile
                If strReciever <> "" Then
                    strReciever = strReciever & vbCrLf
                End If
                strReciever = strReciever & strMobile & "," & rsUser("UserName")
                If rsUser("TrueName") <> "" Then
                    strReciever = strReciever & "," & rsUser("TrueName")
                End If
                RecieverCount = RecieverCount + 1

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -