PHP只在页面中发送一个mail()

时间:2016-04-30 16:50:21

标签: php html email

突然间,我的PHP代码在有人在表单上注册后发送电子邮件停止工作。我试图弄清楚发生了什么事,我正在开头......

我已经测试了一小段代码通过电子邮件发送给自己,但它确实有用。 我在页面执行时观察了Chrome中的控制台窗口,但它没有显示任何错误。

代码向我发送一封包含表单信息的电子邮件,并向用户的收件箱发送一封电子邮件,告知注册成功。

// SENDING EMAIL

//To me
$line_break = "\r\n";
$emailSender = "subscriptions@mydomain.com";
$emailTOme = "me@mydomain.com";
$cco = "support@mydomain.com";
$subject= "my subject";
$messageHTML = '
    <p>Nome.......: ' . $nome . '</p>
    <p>E-mail.......: '.$email . ' </p>
    <p>Profissão.......: '. $profissao . '  </p>
    <p>Endereço.....: '. $endereco . ', ' . $endereco_num . ' </p>
    <p>Complemento.....: '. $complemento . '</p>
    <p>Bairro.......: ' . $bairro . ' </p>
    <p>CEP..........: '. $cep . ' </p>
    <p>Cidade.......: ' . $cidade . ' </p>
    <p>UF...........: ' . $uf . ' </p>
    <p>Telefone.....: ' . $telefone . ' </p>
    <p>Celular......: ' . $celular . ' </p>
    <p>Inscrição p/.: ' . $evento . '</p>
    <p>Valor da inscrição: <b>R$' . $valor_inscricao . '</b></p>';

$headers = "MIME-Version: 1.1" . $line_break;
$headers .= "Content-type: text/html; charset=iso-8859-1". $line_break;
$headers .= "From: " . $emailSender . $line_break;
$headers .= "Return-Path: " . $emailSender . $line_break;
$headers .= "Bcc: " . $cco . $line_break;
$headers .= "Reply-to: " .  $emailSender . $line_break;

mail($emailTOme , $subject, $messageHTML,$headers, $emailSender);  

//email for the user
$messageHTMLuser = '
    <p> Lorem </p>
    <p> Ipsum </b></p>';


$headers2 = "MIME-Version: 1.1" . $line_break;
$headers2 .= "Content-type: text/html; charset=iso-8859-1". $line_break;
$headers2 .= "From: " . $emailSender . $line_break;
$headers2 .= "Return-Path: " . $emailSender . $line_break;
$headers2 .= "Reply-to: " .  $emailSender . $line_break;

mail($email, 'We recieved your registration', $messageHTMLuser, $headers2, $emailSender);

问题是现在只有第二个mail()功能正常工作。

第二个函数的$email来自上一个表单。

2 个答案:

答案 0 :(得分:2)

尝试注释掉“BCC”行。

由于当前的php邮件不支持此选项(不再) - 显然是为了避免使用bcc-form-spamers ..

为了使用高级电子邮件功能,您可能最好使用PHPMailer(或类似的lib):https://packagist.org/packages/phpmailer/phpmailer

答案 1 :(得分:0)

将其添加到脚本的开头,它应该在页面顶部显示您的错误(如果有的话)。

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);