我在我的网站上有一个人们可以参加活动的表单。他后面的代码以这种方式工作:通过SMTP发送邮件?
1. 所有信息都保存在数据库中。这部分做工精细
2. 代码的第二部分发送电子邮件给我,并与他采访了该信息(如保存在数据库中同一信息),用户
的问题是,电子邮件通过主机帐户上的默认电子邮件未经身份验证发送。我必须修改脚本以在我的主机帐户下使用有效的电子邮件强制SMTP身份验证来修复错误。现在脚本发送电子邮件,但它以所有ISP的垃圾邮件过滤器结束,因此用户永远不会收到电子邮件。
我不知道该怎么做,或者创建代码,以便脚本使用SMTP身份验证。以下是我的票价。有人能帮我吗?
<?
// SEND OUT EMAIL PART
// COPY SEND TO MY SELF
$to = "[email protected]";
$from = $_REQUEST['email'] ;
$name = $_REQUEST['name'] ;
$headers = "From: $from";
$subject = "Thanks!";
$fields = array();
$fields{"name"} = "Name";
$fields{"address"} = "Address";
$fields{"phone"} = "Phone";
$fields{"email"} = "E-mail addesse";
$body = "INFO:\n\n"; foreach($fields as $a => $b){ $body .= sprintf("%20s: %s\n",$b,$_REQUEST[$a]); }
// SEND TO THE USER
$headers2 = "From: [email protected]";
$subject2 = "THANKS!";
$fields2 = array();
$from = $_REQUEST['email'] ;
$name = $_REQUEST['name'] ;
$headers = "From: $from";
$subject = "Thanks!";
$body2 = "
TEXT TO EMAIL RECEIVER
\n\n"; foreach ($fields2 as $a => $b){ $body2 .= sprintf("%20s: %s\n",$b,$_REQUEST[$a]); }
// ERROR MESSAGES
if($from == '') {print "MISSING EMAIL ADDRESS.";}
else {
if($name == '') {print "MISSING NAME";}
else {
$send = mail($to, $subject, $body, $headers);
$send2 = mail($from, $subject2, $body2, $headers2);
if($send)
{header("Location: http://mysite/send.php");}
else
{print "MISSING EMAIL ADDRESS ALL FILDS MUST BE FILLED!"; }
}
}
?>
@Micakkef难道我只是添加我的上述代码上面的代码,改变信息,以便它适合我的,上传PHPMailer的,然后它的工作或做我需要做一些额外得到它的工作?我不知道这个phpmailer如何工作 –
看看他们的网站看到一个工作的例子。您需要下载这些文件并将其包含在您的脚本中。 http://phpmailer.worxware.com/index.php?pg=examplebsmtp – malta