换行html电子邮件

时间:2016-02-12 11:23:20

标签: php html email

论坛的新手,并尝试一些编码帮助一个似乎无法做到这一点的朋友..

话虽如此,我最初在网站上无法发送电子邮件时遇到问题。经过一段网上搜索并在这里添加了一些组件后,它终于可以工作了,但现在我还有一个问题..

当电子邮件被发送出去时(这是一个商业网站,它从那里发送电子邮件到相关的销售部门等),它们全都推到了一条线上,看起来很糟糕。

像这样 -

  

"姓名:来自WEBSITETel的测试电子邮件:011 937 0572电子邮件:   myemail@zmail.com消息:测试请确认

     

测试38"

我无法找到的是如何分离文本,以便在电子邮件中以这样的单独行显示 -

  

名称:客户

     

电话:011 000 0000

     

电子邮件:myemail@zmail.com

     

消息:此处的文字等。

我已将联系表单链接到.php文档,因此我认为在本文档中需要进行更改?我试图添加<br /> & <div>但是当我尝试从网站发送表单时,除了给我一个错误消息之外什么都不做。

此处是contactgenie.php的代码,该代码链接到100%

的联系表单
<?php

$EmailFrom = "myeamail@zmail.co.za";
$EmailTo = "myemail@zmail.co.za";
$Subject = "Company Name - Online Enquiry";
$Name = Trim(stripslashes($_POST['Name']));
$Tel = Trim(stripslashes($_POST['Tel']));
$Email = Trim(stripslashes($_POST['Email']));
$Message = Trim(stripslashes($_POST['Message']));

// validation
$validationOK=true;
if (!$validationOK) {
  print "There has been an error, please make sure you entered a correct email address."; // You can edit this to your own error message
  exit;
}

// prepare email body text
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "";
$Body .= "Tel: ";
$Body .= $Tel;
$Body .= "";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "";

// send email
$success = mail($EmailTo, $Subject, $Body, $Headers = "From: <$EmailFrom\r\n");

// redirect to success page
if ($success){
  print "Thank you, your email has been sent! We will be in touch shortly!"; // You can edit this to your own success message
}
else{
  print "There has been an error, please make sure you have entered your details correctly."; // You can edit this to your own error message
}
?>

对此的任何帮助将不胜感激,谢谢 狄龙

5 个答案:

答案 0 :(得分:1)

您可以使用双引号内的标准换行符预先格式化邮件正文:

$Body = "
    Name: {$Name}
    Tel: {$Tel}
    Email: {$Email}
    Message: {$Message}";

要获得双线高度,请在线之间插入另一个返回值:

$Body = "
    Name: {$Name}

    Tel: {$Tel}

    Email: {$Email}

    Message: {$Message}";

答案 1 :(得分:1)

感谢所有帮助人员!我得到它的工作,我在代码中添加了“\ n”,它完美地工作,我只需要它来分离文本,以便当电子邮件从网站传来时更容易阅读,再次感谢真的帮助我有这个!

答案 2 :(得分:0)

添加<br/>标记以使用您的变量添加新行空间

   $Body = "";
$Body .= "Name: ";
$Body .= $Name.'<br/>';

以及您想要添加新行空间的其他地方 为此,您必须使用HTML格式 因为有两种类型的电子邮件html和richtext。也照顾好。

答案 3 :(得分:0)

不确定这是否有效,但如果是HTML电子邮件,这应该可行。

$Body .= '<html><body>';
$Body .= "Name: ";
$Body .= $Name;
$Body .= "<br>";
$Body .= "Tel: ";
$Body .= $Tel;
$Body .= "<br>";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "<br>";
$Body .= "Message: ";
$Body .= wordwrap($Message, 50);
$Body .= '</body></html>';

该消息可能有效,也可能无效。在这方面,不要让你的希望达到最高。

答案 4 :(得分:0)

添加<br/>标记以使用您的变量添加新行空间

$Body  = "Name   : " $Name    ."<br/>";
$Body .= "Tel    : " $Tel     ."<br/>";
$Body .= "Email  : " $Email   ."<br/>";
$Body .= "Message: " $Message ."<br/>";
相关问题