这是我用来发送邮件的代码。但是要在邮件中传递的消息中的换行符不会插入新行。我尝试使用"
"," / n"," / r / n"。但是我正在将这些信息与消息一起提供,否则消息根本无法传递。
<?php
$to="******";
$sub="contact_details";
$userdetails="Name:".$_REQUEST["name"];
$userdetails.="<br/>Phone number:".$_REQUEST["phone"];
$userdetails.="<br/>Email:".$_REQUEST["email"]";
$userdetails.="<br/>Message:".$_REQUEST["message"].`"<br>"`;
if($_REQUEST["name"] && $_REQUEST["phone"] && $_REQUEST["email"] && $_REQUEST["message"])
{
$mail=mail($to,$sub,$userdetails);
if($mail){
echo "<script type='text/javascript'>alert('Submitted Successfully!')
</script>";
}
else{
echo"<script type='text/javascript'>alert('Failed!')</script>";
}
}
else {
echo "<script type='text/javascript'>alert('Please enter all fields!');
</script>";
}
?>
提前致谢。
答案 0 :(得分:0)
您发送的电子邮件不支持HTML,您需要添加\n
,为了使html正常工作,您需要添加以下标题:
// Always set content-type when sending HTML email
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
// More headers
$headers .= 'From: <webmaster@example.com>' . "\r\n";
$headers .= 'Cc: myboss@example.com' . "\r\n";
mail($to,$subject,$message,$headers);
答案 1 :(得分:0)
你必须纠正错误的语法,你在电子邮件后添加了额外的&#34;(双引号),删除它,你可以使用&#34; \ n&#34;用于添加换行符。
<?php
$to="******";
$sub="contact_details";
$userdetails="Name:".$_REQUEST["name"]. "\n";
$userdetails.="<br/>Phone number:".$_REQUEST["phone"]. "\n";
$userdetails.="<br/>Email:".$_REQUEST["email"]. "\n";
$userdetails.="<br/>Message:".$_REQUEST["message"]. "\n";
?>
另外,标题不是强制发送邮件,即使未设置标题,也可以发送邮件。