唉,沒弄過asp,但公司現在要我維護一個asp平台,
呵呵,也當是一種挑戰,在這裡也謝謝心得,一來照顧一下asp新手,
二來,以後自己再用也好有個地方尋找答案.
需求是這樣的,當線上人數到達一定數量則提示,並發送郵件
Global.asa檔案,
什麼是 Global.asa 檔案?它其實是一個可選檔案,程式編寫者可以在該檔案中指定事件指令碼,並聲明具有會話和Application 領域的對象。該檔案的內容不是用來給使用者顯示的,而是用來儲存事件資訊和由應用程式全域使用的對象。該檔案的名稱必須是 Global.asa 且必須存放在應用程式的根目錄中。每個應用程式只能有一個 Global.asa 檔案。內容如下:
<script language="vbscript" runat="server">
sub Application_Onstart '對當前線上人數及訪問總量的初始化.
Application("online")=0
Application("counter")=0
End Sub
Sub session_Onstart
session.timeout=5 '設定網頁到期時間為5分鐘
application.lock
application("online")=application("online")+1
application("counter")=application("counter")+1
application.unlock
End Sub
Sub session_OnEnd
Application.lock
Application("online")=Application("online")-1
Application.unlock
End Sub
</script>
調用頁面代碼.test.asp
<%
'增加當前人數限制處理,提示學員,並發送郵件
'參數說明
'Subject : 郵件標題
'MailAddress : 發件伺服器的地址,如smtp.163.com
'Email : 收件者郵件地址
'Sender : 寄件者姓名
'Content : 郵件內容
'Fromer : 寄件者的郵件地址
Sub SendAction(subject, email, sender, content)
Set JMail = Server.CreateObject("JMail.Message")
JMail.Charset = "gb2312" ' 郵件字元集,預設為"US-ASCII"
JMail.From = strMailUser ' 寄件者地址
JMail.FromName = sender' 寄件者姓名
JMail.Subject =subject
JMail.MailServerUserName = strMailUser' 身分識別驗證的使用者名稱
JMail.MailServerPassword = strMailPass ' 身分識別驗證的密碼
JMail.Priority = 3'發送郵件類型 1為特級 3為普通
JMail.AddRecipient(email)
JMail.Body = content
JMail.Send(strMailAddress)
End Sub
Dim title,strEmail,strMailAdress,strSender,strContent
Dim strMailAddress,strMailPass,strMailUser,JMail
if application("online")>=1 then
'調用此Sub的例子
title = Request("title")
strContent = "您好,當前線上人數為"&application("online")
strSender = Request("Name") '發信人姓名
strEmail = "a375267603@163.com" '收信人郵箱,可以改為其它的郵箱
strMailAddress = "mail.cdce.cn" '發件伺服器位址 例:smtp.163.com(為163伺服器位址)
strMailUser = "zenghai@cdce.cn" '寄件者使用者名稱
strMailPass = "8888" '發件賬戶密碼
Call SendAction (title,strEmail,strSender,strContent)
strShowMessage = "模組名稱:verifyStudent[超出人數限制]|詳細資料:當前登入考試系統的人數已經超出伺服器的限制【" & application("online") & "】,請您稍後再登入!"
end if
%>