我不明白为什么会有两条消息出现在我的邮件中。 发送功能启动一次,关于成功发送的消息显示一次。
<?php
require('class.phpmailer.php');
$email = new PHPMailer();
$email->CharSet = 'UTF-8';
$email->From = $_POST['mailmy'];
$email->FromName = '«Тэкс»';
$email->Subject = 'Ваша новая кухня почти готова.';
$email->Body = $_POST['mailText'];
$email->AddAddress( $_POST['mailMeil']);
$email->Send();
echo 'Message has been sent';
if (!$email->send()) {
echo "Mailer Error: " . $email->ErrorInfo;
} else {
echo "Message sent!";
}
?>
答案 0 :(得分:1)
您两次调用send()
方法:
$email->Send(); // first time
echo 'Message has been sent';
if (!$email->send()) { // second time
代码完全按照您的指示执行:发送两次。
您应该做的是第一次存储结果并进行测试:
$sent = $email->Send();
echo 'Message has been sent';
if (!$sent) {
顺便说一句:您的echo
声明没有任何意义。如果您不知道该消息,则不要告诉用户。