用户在safari上时未发送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

所以我有一张表格作为志愿者订阅我组织的活动。对于不是mac/safari的用户来说,一切都很好。但是,当用户在mac ios/osx上,他/她将在safari上填写表单时,电子邮件永远不会发送。数据库中充满了用户信息,但确认邮件从未到达用户

我正在使用PHP邮件脚本

这是我的邮件部分的PHP代码:

$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()
是否总是导致“成功”或抛出错误?