灰儿 发表于 2011-5-8 15:03:04

asp使用Jmail组件发送信息到指定邮箱

本帖最后由 灰儿 于 2011-5-8 15:15 编辑

要做在线发邮件首先要该服务器支持jamil组件(现在的空间商基本上都支持),如果在自己机子上测试的
时候到网上去找个jmail安装一个就行了,记住本程序只适用于4.2以后的版本!
<%
a=request("姓名")
aa=request("电话")
aaa=request("mail")
aaaa=request("yb")
aaaaa=request("dz")
b=request("bt")
bb=request("内容")
'上面是请求的数据,由普通表单提交过来即可。

Dim JMail, contentId
Set JMail = Server.CreateObject("JMail.Message")

JMail.Charset = "gb2312" ’ 邮件字符集,默认为"US-ASCII"
’ JMail.ISOEncodeHeaders = False ’ 是否进行ISO编码,默认为True

’ 发送者信息(可用变量方式赋值)
JMail.From = "xx@xxx.com" ’ 用于发送的邮箱
JMail.FromName = "网站1" ’ 发送者姓名
JMail.Subject = "信箱a" ’ 邮件主题

’ 身份验证
JMail.MailServerUserName = "xx@xxx.com" ’用于发送的邮箱
JMail.MailServerPassword = "xxxxxxx" ’ 密码

’ 设置优先级,范围从1到5,越大的优先级越高,3为普通
JMail.Priority = 3

JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR")

’ 加入一个收件人【变量email:收件人地址】可以同一语句重复加入多个
JMail.AddRecipient(yy@yyyy.com)

’ 加入附件【变量filename:附件文件的绝对地址,确保用户IUSR_????有访问的权限】
’ 【参数设置是(True)否(False)为Inline方式】
’contentId = JMail.AddAttachment (filename, True)

’ 邮件主体(HTML(注意信件内链接附件的方式))
JMail.HTMLBody = ""发信人姓名:"&a&"<br>电话:"&aa&"<br>mail:"&aaa&"<br>邮编:"&aaaa&"<br>联系地址:"&aaaaa&"<br>标题:"&b&"&nbsp;<br>
内容:"&bb&"<br>"

’ 邮件主体(文本部分)
JMail.Body = "我们的邮件采用了HTML格式,请点击邮件下方""HTML内容""来查看详细内容。"

’ 发送【调用格式:objJMail.Send(SMTPServerAddress[:Port])】
sendok=JMail.Send("mail.xxx.com") '发送mail服务器

    if sendok then
    endstr= "已经成功发送了邮件!"
    else
    endstr= "发送邮件失败,可能是您填写了错误的邮件地址。<br/>" & _
    "如果您确信没有写错邮件地址,则可能是发信程序出了<br/>" & _
    "故障,请与管理员联系!"
    end if

’ 关闭并清除对象
JMail.Close()
Set JMail = Nothing
%>
<%=endstr%>


上面就是利用jmail发送邮件的主要代码
下面还有一个html页面就是用来填写发送表单信息的

<html>
<head>
<title>小妖——在线发送邮件</title>
<meta http-equiv="content-type=" content="text/html; charset=gb2312">
</head>
<body>
<form method="post" action="">
发件人名称:<input type="text" name="fname"><br>
发件人邮箱:<input type="text" name="femail"><br>
收件人名称:<input type="text" name="tname"><br>
收件人邮箱:<input type="text" name="temail"><br>
邮件标题:<input type="text" name="title"><br>
邮件内容:<textarea rows="9" cols="40" name="content"></textarea><br>
<div align="center"><input type="submit" name="submit" value="发送"></div>
</form>
</body>
</html>


已经全部结束了,上面那个发送邮件的asp代码中的注释部分可以用表单值代替,不过最好写成先把
值赋给一个变量,如:title=request.form("title"),然后把注释部份用title代替,一但用了变变量赋
值时就要把jmail.subject=""这对引号去掉了可以直接写成jmail.subject=title就OK了。



页: [1]
查看完整版本: asp使用Jmail组件发送信息到指定邮箱