PHPMailer奇怪地停在addAddress()处
我正在尝试使用PHPmailer通过电子邮件发送一个简单的表单提交(一个简单的“联系我们”表单,可以通过电子邮件将表单中填写的信息发送给我) 我让PHPmailer在以前的项目中工作得很好,所以我复制并粘贴了相同的代码。现在出现的问题是php脚本似乎完全停止在addAddress代码处。在它运行之前的一切都完美无缺,但之后的一切似乎都没有运行。我在页面的开头运行了这个脚本,因此,我得到的只是一个空白页面。我已经测试了上面的问题,在这里和那里输入随机的回音,然后用虚拟信息重新提交我的表单,回音在addAddress运行之前一直运行良好 我还尝试了一个try/catch函数来查看是否有任何错误,我也得到了一个空白页…不知道发生了什么,如果有任何帮助,我将不胜感激 以下是我使用的通用代码:PHPMailer奇怪地停在addAddress()处,php,Php,我正在尝试使用PHPmailer通过电子邮件发送一个简单的表单提交(一个简单的“联系我们”表单,可以通过电子邮件将表单中填写的信息发送给我) 我让PHPmailer在以前的项目中工作得很好,所以我复制并粘贴了相同的代码。现在出现的问题是php脚本似乎完全停止在addAddress代码处。在它运行之前的一切都完美无缺,但之后的一切似乎都没有运行。我在页面的开头运行了这个脚本,因此,我得到的只是一个空白页面。我已经测试了上面的问题,在这里和那里输入随机的回音,然后用虚拟信息重新提交我的表单,回音在a
require 'PHPMailer/PHPMailerAutoload.php';
$mail = new PHPMailer();
$mail->isSMTP();
$mail->Host = '[my email host here]';
$mail->From = 'source@email.com';
$mail->FromName = 'Contact Form';
$mail->addReplyTo('actualsource@email.com', 'Contact form');
$mail->WordWrap = 250; // Set word wrap to 250
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = 'Contact Us Website Inquiry';
$fullname = $_POST['FullName'];
$phone = $_POST['phone'];
$mail = $_POST['mail'];
$message = $_POST['mess'];
$mail->Body = 'Info Request<br><br><b>Name:</b> '.$fullname.'<br><b>Phone Number:</b>'.$phone.'<br><b>Email Address:</b>'.$mail.'<br><b>Message:</b> '.$message;
//Everything after this point seems to never happen
$mail->addAddress('email1@email.com', 'John Doe1');
$mail->addAddress('email2@email.com', 'John Doe2');
$mail->addAddress('email3@email.com', 'John Doe3');
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
}
//Rest of the page's HTML code here.
需要'PHPMailer/phpmailerautoad.php';
$mail=new PHPMailer();
$mail->isSMTP();
$mail->Host='[我的电子邮件主机在此];
$mail->Fromsource@email.com';
$mail->FromName='Contact Form';
$mail->addReplyTo('actualsource@email.com","联络表格";;
$mail->WordWrap=250;//将换行设置为250
$mail->isHTML(正确);//将电子邮件格式设置为HTML
$mail->Subject='联系我们网站查询';
$fullname=$_POST['fullname'];
$phone=$_POST['phone'];
$mail=$_POST['mail'];
$message=$_POST['mess'];
$mail->Body='Info Request
名称:'.$fullname.
电话号码:'.$Phone.
电子邮件地址:'.$mail.
消息:'.$Message;
//这之后的一切似乎永远不会发生
$mail->addAddress('email1@email.com","约翰·多伊",;
$mail->addAddress('email2@email.com","无名氏2",;
$mail->addAddress('email3@email.com","无名氏3",;
如果(!$mail->send()){
echo“无法发送消息”;
回显“邮件错误:”。$mail->ErrorInfo;
}
//这里是页面的其余HTML代码。
(这不是答案)
因为你没有得到任何东西,所以使用异常
$mail = new PHPMailer(true);//set here true for exception handling
try {
//your entire Code STARTS
$mail->isSMTP();
$mail->Host = '[my email host here]';
$mail->From = 'source@email.com';
$mail->FromName = 'Contact Form';
$mail->addReplyTo('actualsource@email.com', 'Contact form');
$mail->WordWrap = 250; // Set word wrap to 250
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = 'Contact Us Website Inquiry';
$fullname = $_POST['FullName'];
$phone = $_POST['phone'];
$mail = $_POST['mail'];
$message = $_POST['mess'];
$mail->Body = 'Info Request<br><br><b>Name:</b> '.$fullname.'<br><b>Phone Number:</b>'.$phone.'<br><b>Email Address:</b>'.$mail.'<br><b>Message:</b> '.$message;
//Everything after this point seems to never happen
$mail->addAddress('email1@email.com', 'John Doe1');
$mail->addAddress('email2@email.com', 'John Doe2');
$mail->addAddress('email3@email.com', 'John Doe3');
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
}
//your CODE ENDS
} catch (phpmailerException $e) {
echo $e->errorMessage();
} catch (Exception $e) {
echo $e->getMessage();
}
$mail=newphpmailer(true)//将此处设置为true以进行异常处理
试一试{
//您的整个代码开始
$mail->isSMTP();
$mail->Host='[我的电子邮件主机在此];
$mail->Fromsource@email.com';
$mail->FromName='Contact Form';
$mail->addReplyTo('actualsource@email.com","联络表格";;
$mail->WordWrap=250;//将WordWrap设置为250
$mail->isHTML(true);//将电子邮件格式设置为HTML
$mail->Subject='联系我们网站查询';
$fullname=$_POST['fullname'];
$phone=$_POST['phone'];
$mail=$_POST['mail'];
$message=$_POST['mess'];
$mail->Body='Info Request
名称:'.$fullname.
电话号码:'.$Phone.
电子邮件地址:'.$mail.
消息:'.$Message;
//这之后的一切似乎永远不会发生
$mail->addAddress('email1@email.com","约翰·多伊",;
$mail->addAddress('email2@email.com","无名氏2",;
$mail->addAddress('email3@email.com","无名氏3",;
如果(!$mail->send()){
echo“无法发送消息”;
回显“邮件错误:”。$mail->ErrorInfo;
}
//你的代码结束了
}捕获(phpmailerException$e){
echo$e->errorMessage();
}捕获(例外$e){
echo$e->getMessage();
}
您正在为post数据重新分配邮件。您已经为PHPMailer分配了$mail,它现在是一个对象。测试时出现此错误:
可捕获的致命错误:第11行中的类PHPMailer的对象无法转换为字符串
将$mail=$\u POST['mail']更改为其他内容。AddAddress我认为a是大写字母,它是小写字母,我也检查了phpMail源代码以确保:(在这里检查。有一次用大写字母A测试了一下。我也用大写字母A测试了一下,以防万一,但还是有同样的问题。你有什么错误吗?非常感谢你发现了。我完全错过了。这就是问题所在。^^没问题。你介意投票给这个答案吗?