我需要在我正在制作的网站上添加一个联系表单,并找到一些有用的代码,有些人非常喜欢那些没有PHP经验的人。
将代码粘贴并编辑到页面中并将其上传到临时站点后,我使用我的gmail地址对其进行了测试,并且工作正常。唯一的问题是电子邮件文本中没有换行符。
以下是代码:
<?php
if ($_POST["email"]<>'') {
$ToEmail = 'myemailadress@gmail.com';
$EmailSubject = 'Site contact form';
$mailheader = "From: ".$_POST["email"]."\r\n";
$mailheader .= "Reply-To: ".$_POST["email"]."\r\n";
$mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n";
$MESSAGE_BODY = "Name: ".$_POST["name"]."";
$MESSAGE_BODY .= "Email: ".$_POST["email"]."";
$MESSAGE_BODY .= "Comment: ".nl2br($_POST["comment"])."";
mail($ToEmail, $EmailSubject, $MESSAGE_BODY, $mailheader) or die ("Failure");
?>
Your message was sent
<?php
} else {
?>
<form action="contactus.php" method="post">
<table width="400" border="0" cellspacing="2" cellpadding="0">
<tr>
<td width="29%" class="bodytext">Your name:</td>
<td width="71%"><input name="name" type="text" id="name" size="32"></td>
</tr>
<tr>
<td class="bodytext">Email address:</td>
<td><input name="email" type="text" id="email" size="32"></td>
</tr>
<tr>
<td class="bodytext">Comment:</td>
<td><textarea name="comment" cols="45" rows="6" id="comment" class="bodytext"> </textarea></td>
</tr>
<tr>
<td class="bodytext"> </td>
<td align="left" valign="top"><input type="submit" name="Submit" value="Send"></td>
</tr>
</table>
</form>
<?php
};
?>
这是我收到收件箱时收到的内容:
姓名:Mr J Bloggs电子邮件:email@address.com评论:评论文本。
我想要的是它看起来像这样:
姓名:J Bloggs先生 电子邮件:email@address.com
评论:评论文本。
提前感谢您的帮助。
答案 0 :(得分:2)
只需在每行后添加换行符:
$MESSAGE_BODY = "Name: ".$_POST["name"]."<br/>";
$MESSAGE_BODY .= "Email: ".$_POST["email"]."<br/>";
$MESSAGE_BODY .= "Comment: ".nl2br($_POST["comment"]);
答案 1 :(得分:2)
你应该做
$MESSAGE_BODY = "Name: ".$_POST["name"]."\n";
$MESSAGE_BODY .= "Email: ".$_POST["email"]."\n";
$MESSAGE_BODY .= "Comment: ".nl2br($_POST["comment"])."\n";