换行不起作用


line breaks isnt working

为什么消息在一行中出现?在我添加了$headers之后,我的消息开始变成单行。

<?php 
// your email
$user_email = "marketing@fontlife.com.br";  
$mail = array(
    "name" => htmlspecialchars($_POST['cf_name']),
    "email" => htmlspecialchars($_POST['cf_email']),
    "subject" => htmlspecialchars($_POST['cf_subject']),
    "assunto" => 'Novo contato realizado via website',      
    "message" => htmlspecialchars($_POST['cf_message'])
);
$nome = $_POST['cf_name'];
$email = $_POST['cf_email'];
$assunto = $_POST['cf_subject'];
$assunto_mensagem = 'Novo contato realizado via website';
$mensagem = $_POST['cf_message'];
$assunto = 'Novo contato realizado a partir do site Font Life';
$headers = "MIME-Version: 1.1'r'n".
               "Content-type: text/html; charset=utf-8'n".
               "Content-Transfer-Encoding: 8bit'n".
               "From: ". $_POST['cf_name'] ." <". $_POST['cf_email'] .">'n".
               "Reply-to: ". $_POST['cf_name'] ." <". $_POST['cf_email'] .">'n".
               "Date: ". date( "r" ). "'n";
function validate($arr){
    return !empty($arr['name']) && strlen($arr['message']) > 20 && filter_var($arr['email'],FILTER_VALIDATE_EMAIL);
}
if(validate($mail)){
    echo mail($user_email, $mail['assunto'], 
        "Nome : $nome'n" 
        ."Assunto : $assunto'n"
        ."E-mail : $email'n"
        ."Mensagem : $mensagem'n",
        $headers
    );
}
?>

消息是这样来的:

名称:Pedro Assunto: Novo contato realizado a partir do site字体生活E-mail: pedro.hkms@outlook.com messagem: asdklnasklasdmklasdmasd lasd, lasd

有一个错误在我的代码?

  1. 你应该分割标题与'r'n(而不仅仅是'n)。
  2. 内容部分应该是html -所以在内容中你应该使用<br>换行。


这是标题部分:

$headers = "MIME-Version: 1.1'r'n".
           "Content-type: text/html; charset=utf-8'r'n".
           "Content-Transfer-Encoding: 8bit'r'n".
           "From: ". $_POST['cf_name'] ." <". $_POST['cf_email'] .">'r'n".
           "Reply-to: ". $_POST['cf_name'] ." <". $_POST['cf_email'] .">'r'n".
           "Date: ". date( "r" );

这是对邮件函数的调用:

mail($user_email, $mail['assunto'],
    "Nome : $nome<br />'n". 
    "Assunto : $assunto<br />'n".
    "E-mail : $email<br />'n".
    "Mensagem : $mensagem<br />'n",
    $headers
);

使用它可能会工作!!

      echo mail($user_email, $mail['assunto'], 
            "Nome : $nome". <br><br>" 
            . "Assunto : $assunto"." <br><br>"
            ."E-mail : $email"."<br> <br>"
             ."Mensagem : $mensagem"
             ."<br><br> ",
            $headers
);