就是:要求评论的人写下EMAIL(并不公开,只存于数据库),然后回复评论时,给他回复一封邮件,内容包括,日期,他评论的日志地址,回复内容等。
目的是增加回访客。
我试过两种办法,第一种在本地测试能行,上传到空间后不行了,第二种是用JMAIL,这东西不熟,也没成功,有没大侠帮小弟一把。
Function sendemailCDO
'---------------------------------------------send email--------------------------------------------------------
Call OpenConnect()
Dim jun_Sql,jun_rs,jun_email_content,jun_email_title
jun_Sql="SELECT comm_Author,comm_Content,comm_Email FROM blog_Comment WHERE comm_ID ="&Request.QueryString("id")
SET jun_rs=objConn.execute(jun_Sql)
'这几行是为了.htmlBody在邮件中较好地显示
jun_email_content="您的评论为:<br/><br/>"&Replace(jun_rs("comm_Content"),"[REVERT=","<br/><hr/>")
jun_email_content=Replace(jun_email_content,"回复]","回复<br/><br/>")
jun_email_content=Replace(jun_email_content,"[/REVERT]","<br/>")&"<br/><hr/>"&Request.Form("inpName")&"于 "&Now()&" 回复<br/><br/>"&Request.Form("inpArticle")
jun_email_title="亲爱的"&jun_rs("comm_Author")&",您在7jun.cn的评论有回复了"
Const cdoSendUsingMethod="http://schemas.microsoft.com/cdo/configuration/sendusing"
Const cdoSendUsingPort=2
Const cdoSMTPServer="http://schemas.microsoft.com/cdo/configuration/smtpserver"
Const cdoSMTPServerPort="http://schemas.microsoft.com/cdo/configuration/smtpserverport"
Const cdoSMTPConnectionTimeout="http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"
Const cdoSMTPAuthenticate="http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"
Const cdoBasic=1
Const cdoSendUserName="http://schemas.microsoft.com/cdo/configuration/sendusername"
Const cdoSendPassword="http://schemas.microsoft.com/cdo/configuration/sendpassword"
Dim objConfig ' As CDO.Configuration
Set objConfig = Server.CreateObject("CDO.Configuration")
Dim Fields ' As ADODB.Fields
Set Fields = objConfig.Fields
With Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
.Item(cdoSMTPServer) = "mail.7jun.cn" '改成可用的外部邮件服务器域名
.Item(cdoSMTPServerPort) = 25
.Item(cdoSMTPConnectionTimeout) = 10
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSendUserName) = "
7jun@7jun.cn" '以上服务器的用户名
.Item(cdoSendPassword) = "****" '密码
.Update
End With
Dim objMessage ' As CDO.Message
Set objMessage = Server.CreateObject("CDO.Message")
Set objMessage.Configuration = objConfig
With objMessage
.To = "
dzin@163.com"'jun_rs("comm_Email") '改成接收者的邮件地址 Request("txtEmail")
.From = "
master@7jun.cn" '改成发送人的邮件地址
.Subject = jun_email_title '标题Request("txtSubject")
.htmlBody = jun_email_content '正文Request("txtMessage")
.Send
End With
Set Fields = Nothing
Set objMessage = Nothing
Set objConfig = Nothing
'---------------------------------------------send email------------------------------
End Function
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Function sendEmail
Call OpenConnect()
Dim jun_Sql,jun_rs,jun_email_content,jun_email_title
jun_Sql="SELECT log_id,comm_Author,comm_Content,comm_Email FROM blog_Comment WHERE comm_ID ="&Request.QueryString("id")
SET jun_rs=objConn.execute(jun_Sql)
jun_email_content="您的评论为:<br/><br/>"&Replace(jun_rs("comm_Content"),"[REVERT=","<br/><hr/>")
jun_email_content=Replace(jun_email_content,"回复]","回复<br/><br/>")
jun_email_content=Replace(jun_email_content,"[/REVERT]","<br/>")&"<br/><hr/>"&Request.Form("inpName")&"于 "&Now()&" 回复<br/><br/>"&Request.Form("inpArticle")
jun_email_content=jun_email_content & "<br/><br/>请点击<a href=http://localhost/post/" & jun_rs(log_id) & ".html>
http://localhost/post/" & jun_rs(log_id) & ".html</a>查看"
jun_email_title="亲爱的"&jun_rs("comm_Author")&",您在7jun.cn的评论有回复了"
Set jmail = Server.CreateObject("JMAIL.Message") '建立发送邮件的对象
jmail.silent = true '屏蔽例外错误,返回FALSE跟TRUE两值j
mail.logging = true '启用邮件日志
jmail.Charset = "UTF-8" '邮件的文字编码为国标
jmail.ContentType = "text/html" '邮件的格式为HTML格式
jmail.AddRecipient "
dzin@163.com" '邮件收件人的地址
jmail.From = "
7jun@7jun.cn" '发件人的E-MAIL地址
jmail.MailServerUserName = "
7jun@7jun.cn" '登录邮件服务器所需的用户名
jmail.MailServerPassword = "****" '登录邮件服务器所需的密码
jmail.Subject = jun_email_title '邮件的标题
jmail.Body = jun_email_content '邮件的内容
jmail.Prority = 3 '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
jmail.Send("mail.7jun.cn") '执行邮件发送(通过邮件服务器地址)
jmail.Close() '关闭对象
End Function
这些是放在cmd.asp中的。
另外我不知道怎么调用才好。
给的意见,希望是调试过能成功。谢谢!!
[
本帖最后由 dzin 于 2007-5-3 08:37 编辑 ]