用户在safari上时未发送PHP电子邮件
所以我有一张表格作为志愿者订阅我组织的活动。对于不是mac/safari的用户来说,一切都很好。但是,当用户在mac ios/osx上,他/她将在safari上填写表单时,电子邮件永远不会发送。数据库中充满了用户信息,但确认邮件从未到达用户 我正在使用PHP邮件脚本 这是我的邮件部分的PHP代码:用户在safari上时未发送PHP电子邮件,php,email,safari,Php,Email,Safari,所以我有一张表格作为志愿者订阅我组织的活动。对于不是mac/safari的用户来说,一切都很好。但是,当用户在mac ios/osx上,他/她将在safari上填写表单时,电子邮件永远不会发送。数据库中充满了用户信息,但确认邮件从未到达用户 我正在使用PHP邮件脚本 这是我的邮件部分的PHP代码: $subject = 'Bevestiging Vrijwilliger Dollen Dinsdag 2017'; $message = $surname . ', bedankt
$subject = 'Bevestiging Vrijwilliger Dollen Dinsdag 2017';
$message = $surname . ', bedankt voor je aanmelding!<br><br>';
$message .= 'Om je inschrijving af te ronden vragen we je om deze te bevestigen door op de onderstaande link te drukken.<br><br>';
$message .= '<a href="http://www.domain.nl/subscribe.php?action=confirm&userId='.$userId.'&userCode='.$confirmationCode.'">http://www.domain.nl/subscribe.php?action=confirm&userId='.$userId.'&userCode='.$confirmationCode.'</a><br>';
$message .= 'Werkt de link niet door erop te klikken, kopieer en plak deze dan in je browser.<br><br>';
$message .= 'Klopt deze aanmelding niet? klik dan <a href="http://www.domain.nl/subscribe.php?action=decline&userId=' .$userId. '&userCode=' .$confirmationCode. '">http://www.domain.nl/subscribe.php?action=decline&userId=' .$userId. 'userCode=' .$confirmationCode. '</a> om de aanmelding te annuleren.<br>';
$message .= 'Werkt de link niet door erop te klikken, kopieer en plak deze dan in je browser.<br><br>';
$message .= 'Met vriendelijke groet,<br>';
$message .= 'Stichting Dollen Dinsdag';
$headers = "Reply-To: Organization <info@domain.nl>".PHP_EOL;
$headers .= "Return-Path: Dollen Dinsdag <info@dollendinsdag.nl>".PHP_EOL;
$headers .= "From: organization <info@domain.nl>".PHP_EOL;
$headers .= "Organization: organization".PHP_EOL;
$headers .= "MIME-Version: 1.0".PHP_EOL;
$headers .= "Content-type: text/html; charset=iso-8859-1".PHP_EOL;
$headers .= "X-Priority: 3".PHP_EOL;
$headers .= "X-Mailer: PHP". phpversion() .PHP_EOL;
/////////////////////////
//$mail->SMTPDebug = 3; // Enable verbose debug output
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'mail.domain.nl'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'mail@domain.nl'; // SMTP username
$mail->Password = 'pass'; // SMTP password
$mail->SMTPSecure = 'tls'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 25; // TCP port to connect to
$mail->setFrom('info@dollendinsdag.nl', 'Dollen Dinsdag');
$mail->addAddress($email); // Add a recipient
//$mail->addAddress('ellen@example.com'); // Name is optional
$mail->addReplyTo('info@dollendinsdag.nl', 'Vrijwilliger');
//$mail->addCC('cc@example.com');
//$mail->addBCC('bcc@example.com');
//$mail->addAttachment('/var/tmp/file.tar.gz'); // Add attachments
//$mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $subject;
$mail->Body = $message;
$mail->AltBody = $message;
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
echo 'success';
}
$subject='Bevestiging Vrijwilliger Dollen Dinsdag 2017';
$message=$name',贝丹克特·沃耶·安梅尔丁
';
$message.=“我们将为ronden vragen修建一条道路,我们将为deze de onderstaande link de drukken修建一条道路。”;
$message.='
';
$message.='Werkt de link niet door erop te klikken,kopieer en plak deze dan in je浏览器。
';
$message.='Klopt deze aanmelding niet?我和我的朋友们在一起;
$message.='Werkt de link niet door erop te klikken,kopieer en plak deze dan in je浏览器。
';
$message.='Met vriendelijke groet,
';
$message.='Stichting Dollen Dinsdag';
$headers=“回复:组织”。PHP\u EOL;
$headers.=“返回路径:Dollen Dinsdag”.PHP_EOL;
$headers.=“From:organization”.PHP\u EOL;
$headers.=“组织:组织”。PHP\u EOL;
$headers.=“MIME版本:1.0”。PHP_EOL;
$headers.=“内容类型:text/html;charset=iso-8859-1”;
$headers.=“X优先级:3”。PHP\u EOL;
$headers.=“X-Mailer:PHP”。phpversion().PHP_EOL;
/////////////////////////
//$mail->SMTPDebug=3;//启用详细调试输出
$mail->isSMTP();//将邮件程序设置为使用SMTP
$mail->Host='mail.domain.nl';//指定主SMTP服务器和备份SMTP服务器
$mail->SMTPAuth=true;//启用SMTP身份验证
$mail->Username=mail@domain.nl'; // SMTP用户名
$mail->Password='pass';//SMTP密码
$mail->SMTPSecure='tls';//启用TLS加密,也接受'ssl'
$mail->Port=25;//要连接到的TCP端口
$mail->setFrom('info@dollendinsdag.nl“Dollen Dinsdag”);
$mail->addAddress($email);//添加收件人
//$mail->addAddress('ellen@example.com'); // 名称是可选的
$mail->addReplyTo('info@dollendinsdag.nl“Vrijwilliger”);
//$mail->addCC('cc@example.com');
//$mail->addBCC('bcc@example.com');
//$mail->addAttachment('/var/tmp/file.tar.gz');//添加附件
//$mail->addAttachment('/tmp/image.jpg','new.jpg');//可选名称
$mail->isHTML(正确);//将电子邮件格式设置为HTML
$mail->Subject=$Subject;
$mail->Body=$message;
$mail->AltBody=$message;
如果(!$mail->send()){
echo“无法发送消息”;
回显“邮件错误:”。$mail->ErrorInfo;
}否则{
呼应"成功",;
}
听起来,$email
没有被正确处理。在将变量推送到PHPMailer之前,我会尝试执行以下操作
$email = preg_replace('~\R~u', "\r\n", $email);
$mail->addAddress($email);
谢谢你的回复。似乎有一些问题同时出现。我已经仔细查看了代码,邮件问题似乎是gmail将mij帐户列入了黑名单…考虑到服务器上运行的PHP,我怀疑浏览器是否会影响邮件的发送。您是否在任何其他设备或浏览器上尝试过此方法,或者用户是否尝试过此方法?如果是这样,结果如何?PHP在服务器端运行,操作系统或浏览器不会影响邮件发送脚本。尝试使用工作导航器(如chrome)和safari验证html输入。一旦发现差异,就可以找出问题的原因!还有,有多少用户报告了该问题?如果只有少数,那么他们可能使用同一个电子邮件提供商,这就是问题所在。这是在Linux主机上吗?
$mail->send()
是否总是导致“成功”或抛出错误?