几年前我在ASP中创建了一个'sendmail'脚本,包括电子邮件格式验证和CAPTCHA验证。它运作良好。
我暂时没有通过表单收到任何查询,所以我想自己会测试一下联系页面。瞧,剧本似乎不再起作用了。
有谁知道我的方法(见下文)在过去几年是否已经过时了?!现在有不同的推荐方法(经典)ASP吗?
以下是我的脚本的第一部分(电子邮件地址已更改为隐私):
<%
Dim mail
Dim msgtext
Set mail = CreateObject("CDO.Message")
mail.To = "abcdef@ymail.com"
mail.Cc = "abcdefg@gmail.com"
mail.From = Request.Form("From")
mail.Subject = "Enquiry from website"
mail.TextBody = "From: " & Request.Form("Fname") & vbCRLF & "Message: " & Replace(Request.Form("Body"),vbCrLf ,"") & vbCRLF & "Telephone: " & Request.Form("Phone") & vbCRLF
if not IsEmpty(Request.Form("btnTest")) then
if TestCaptcha("ASPCAPTCHA", Request.Form("captchacode")) then
else
msgtext = "c"
end if
end if
mail.Send()
'Destroy the mail object!
Set mail = nothing
msgtext = "y"
%>
答案 0 :(得分:1)
唯一可以跳出来的是默认邮件服务器可能会停止/找不到。 从我记忆中,指向特定服务器的好习惯
mail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing")=2
'Name or IP of remote SMTP server
mail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver")="smtp.server.com"
'Server port
mail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport")=25
mail.Configuration.Fields.Update
mail.Send
set mail=nothing
答案 1 :(得分:0)
毫无疑问,你最后添加了Captcha,所以这将是通过取消定义其要求来测试的第一件事。也...