电子邮件正文中的其他文字

Mac*_*yka 1 php email

我正在构建一个简单的订单系统,并希望在提交表单后发送电子邮件.我的PHP代码看起来与此类似:

$name=$_POST["orderName"];
$company=$_POST["orderCompany"];
$email=$_POST["orderEmail"];
$phone=$_POST["orderPhone"];
$headers = "From: $email\r\n" .

$item1=$_POST["orderItem1"];
$qty1=$_POST["orderQty1"];

$item2=$_POST["orderItem2"];
$qty2=$_POST["orderQty2"];

$item3=$_POST["orderItem3"];
$qty3=$_POST["orderQty3"];

$date = date("l, F j Y, G:i") ;

$message="Message sent: $date \n\n

Name: $name\n
Company: $company\n
Email: $email\n
Phone: $phone\n\n

Order:\n
$item1 \tx$qty1\n
$item2 \tx$qty2\n
$item3 \tx$qty3\n";

mail("sales@company.com", "Order", $message, $headers);
Run Code Online (Sandbox Code Playgroud)

这工作正常,除了在电子邮件的正文中,我在一开始就得到$ item1字符串的值,在"Message sent ..."之前 - 就像我将它添加到$ message(我不是我可以看到).

Vot*_*ple 6

你有这个:

$headers = "From: $email\r\n" .
Run Code Online (Sandbox Code Playgroud)

你想要这个:

$headers = "From: $email\r\n";
Run Code Online (Sandbox Code Playgroud)

否则,你将连接下一行(恰好是其定义$item1)的内容连接到结尾$headers.虽然这在技术上并不有效(即内容是邮件标题的一部分而不是正文),但大多数电子邮件客户端无论如何都会有效地耸耸肩并展示它.