PHPMailer奇怪地停在addAddress()处

PHPMailer奇怪地停在addAddress()处,php,Php,我正在尝试使用PHPmailer通过电子邮件发送一个简单的表单提交(一个简单的“联系我们”表单,可以通过电子邮件将表单中填写的信息发送给我) 我让PHPmailer在以前的项目中工作得很好,所以我复制并粘贴了相同的代码。现在出现的问题是php脚本似乎完全停止在addAddress代码处。在它运行之前的一切都完美无缺,但之后的一切似乎都没有运行。我在页面的开头运行了这个脚本,因此,我得到的只是一个空白页面。我已经测试了上面的问题,在这里和那里输入随机的回音,然后用虚拟信息重新提交我的表单,回音在a

我正在尝试使用PHPmailer通过电子邮件发送一个简单的表单提交(一个简单的“联系我们”表单,可以通过电子邮件将表单中填写的信息发送给我)

我让PHPmailer在以前的项目中工作得很好,所以我复制并粘贴了相同的代码。现在出现的问题是php脚本似乎完全停止在addAddress代码处。在它运行之前的一切都完美无缺,但之后的一切似乎都没有运行。我在页面的开头运行了这个脚本,因此,我得到的只是一个空白页面。我已经测试了上面的问题,在这里和那里输入随机的回音,然后用虚拟信息重新提交我的表单,回音在addAddress运行之前一直运行良好

我还尝试了一个try/catch函数来查看是否有任何错误,我也得到了一个空白页…不知道发生了什么,如果有任何帮助,我将不胜感激

以下是我使用的通用代码:

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测试了一下,以防万一,但还是有同样的问题。你有什么错误吗?非常感谢你发现了。我完全错过了。这就是问题所在。^^没问题。你介意投票给这个答案吗?