【发布时间】:2019-02-20 03:02:30
【问题描述】:
我测试了我的 PHPMailer 脚本,但它只接收来自某些电子邮件地址的电子邮件。
当我尝试在表单中输入另一个电子邮件地址(我创建的虚拟地址)时,它不会发送电子邮件。
如何让它接收来自输入表单的所有地址的电子邮件
<?php
$result="";
if(isset($_POST['submit'])){
require 'phpmailer/PHPMailerAutoload.php';
$mail = new PHPMailer;
$mail->Host='smtp.gmail.com';
$mail->Port=587;
$mail->SMTPAuth=true;
$mail->SMPTSecure='tls';
$mail->Username='jerrytesting12345@gmail.com';
$mail->Password='******';
$mail->setFrom($_POST['email'],$_POST['name']);
$mail->addAddress('jerrytesting12345@gmail.com');
$mail->addReplyTo($_POST['email'],$_POST['name']);
$mail->isHTML(true);
$mail->Subject='Bradas Contact: '.$_POST['subject'];
$mail->Body='Message: '.$_POST['msg'].'</h1>';
if(!$mail->send()){
$result='something went wrong';
} else {
$result='thank you';
}
}
?>
【问题讨论】:
-
伪造发件人:地址会触发各种垃圾邮件过滤。
-
强制参考:stackoverflow.com/questions/24644436/… - 也适用于 PHPMailer。
-
Gmail 不会让您从地址伪造。将您的代码基于 PHPMailer 提供的 contact form 和 gmail 示例。