簡體   English   中英

換行 html 電子郵件

[英]Line break html Email

論壇新手,嘗試編寫一些代碼來幫助一個似乎無法做到這一點的朋友..

話雖如此,我最初在無法發送電子郵件的網站上遇到聯系表問題。 在網上搜索了一下並在這里和那里添加了一些組件后,它終於可以工作了,但是現在我還有一個問題..

當電子郵件通過(這是一個商業網站並從那里向相關銷售部門等發送電子郵件)發送時,它全部排成一行,看起來很糟糕..

像這樣-

“名稱:來自網站的測試電子郵件電話:011 937 0572電子郵件:myemail@zmail.com消息:測試請確認

測試 38"

我無法找到的是如何分隔文本,以便它在電子郵件中像這樣單獨出現 -

名稱:客戶

電話:011 000 0000

郵箱:myemail@zmail.com

消息:在此處發短信等。

我已將聯系表鏈接到 .php 文檔,所以我認為在此文檔中需要進行更改? 我試圖添加<br /> & <div>但除了在我嘗試從網站發送表單時給我一條錯誤消息外,什么都不做。

這是鏈接到 100% 工作的聯系表單的 contactgenie.php 的代碼

<?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
}
?>

對此的任何幫助將不勝感激,謝謝狄龍

您可以使用雙引號內的標准換行符來預先格式化郵件正文,如下所示:

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

要獲得雙行高度,請在兩行之間插入另一個返回:

$Body = "
    Name: {$Name}

    Tel: {$Tel}

    Email: {$Email}

    Message: {$Message}";

感謝您的幫助! 我可以使用它,我在代碼中添加了“ \\ n”,它可以正常工作,我只需要用它來分隔文本,以便從站點接收電子郵件時更容易閱讀,再次感謝您的幫助有了這個!

添加<br/>標記以使用這樣的變量添加新的行空間

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

並且您想為此添加新行空間的其他任何地方都必須采用HTML格式,因為電子郵件html和richtext有兩種類型。 也要注意這一點。

不知道這是否有效,但如果是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>';

該消息可能會或可能不會起作用。 在這方面不要抱太大希望。

添加<br/>標記以使用這樣的變量添加新的行空間

$Body  = "Name   : " $Name    ."<br/>";
$Body .= "Tel    : " $Tel     ."<br/>";
$Body .= "Email  : " $Email   ."<br/>";
$Body .= "Message: " $Message ."<br/>";

不要使用 break 標記,它不起作用。您可以輕松地使用 "\\r\\n" 作為換行符

$Body = "Name : ". $name ."\r\n"."Email : " . $email ."\r\n"."Contact : " . $contact;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM