我是ASP编程的初学者。我想找出一个简单的脚本来发送电子邮件。这是我的HTML代码:
<form method="POST" action="email.aspx">
To <input type="text" name="To"/> <br />
From <input type="text" name="From"/> <br />
Subject <input type="text" name="Subject"/> <br />
Body <textarea name="Body" rows="5" cols="20" wrap="physical" >
</textarea>
<input type="submit" />
</form>
这是我的ASP代码:
Dim mail
mail = Server.CreateObject('CDO.Message')
mail.To = Request.Form("To")
mail.From = Request.Form("From")
mail.Subject = Request.Form("Subject")
mail.TextBody = Request.Form("Body")
mail.Send()
Response.Write("Mail Sent!")
mail = Nothing
我知道不再支持set方法,我在使用ASP代码时遇到错误,是否有任何解决方案可以在ASP中发送简单的电子邮件?提前谢谢大家!
答案 0 :(得分:1)
您的代码仅在您的服务器上安装了CDO或CDONTS时才有效 - 尽管支持Classic ASP的大多数虚拟主机都可以使用此代码。
在VBScript中,必须使用Set
运算符分配所有对象(即非数字或字符串的对象)。我知道,这很愚蠢,但这就是你需要做的事情:
Dim mail
Set mail = Server.CreateObject("CDO.Message")
mail.To = Request.Form("To")
mail.From = Request.Form("From")
mail.Subject = Request.Form("Subject")
mail.TextBody = Request.Form("Body")
mail.Send
Response.Write "Mail Sent!"
Set mail = Nothing
如果您的服务器没有安装CDO或CDONTS,那么当您致电CreateObject
时会收到错误消息,但您没有在原始问题中列出任何错误消息。