Php 电子邮件正文中的其他文本

Php 电子邮件正文中的其他文本,php,email,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"];

我正在建立一个简单的订单系统,并希望在表单提交后发送电子邮件。我的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);
这很好,除了在电子邮件正文中,我在“Message sent…”之前的一开始就得到$item1字符串的值-就像我将其添加到$Message中一样(据我所知,我没有添加到$Message中)。

这里有:

$headers = "From: $email\r\n" .
您希望这样做:

$headers = "From: $email\r\n";
否则,您将把下一行出现的内容(恰好是
$item1
的定义)连接到
$headers
的末尾。尽管这在技术上是无效的(即,内容是邮件标题的一部分,而不是正文),但大多数电子邮件客户端都会不屑一顾地显示出来。

如果有:

$headers = "From: $email\r\n" .
您希望这样做:

$headers = "From: $email\r\n";

否则,您将把下一行出现的内容(恰好是
$item1
的定义)连接到
$headers
的末尾。尽管这在技术上是无效的(即,内容是邮件标题的一部分,而不是正文),但大多数电子邮件客户端都会不屑一顾地显示出来。

请,请,请在生产中使用此功能之前,向您的POST变量添加一些清理

让我们看看这里:

$email=$_POST["orderEmail"];
$headers = "From: $email\r\n";
mail("sales@company.com", "Order", $message, $headers);
我可以发送一个POST请求,其中
“orderEmail”
包含:

"helo@helo.lv\r\n
 From: viagra@farmacety.net\r\n
 BCC: victim1@domain1.com, victom2@domain3.com"
你的无害表格对我向全世界发送垃圾邮件非常有用。建议:

if ( ereg( "[\r\n]", $name ) || ereg( "[\r\n]", $email ) ) {
    [... direct user to an error page and quit ...]
}

请,请,请在生产中进行此操作之前,为您的POST变量添加一些消毒

让我们看看这里:

$email=$_POST["orderEmail"];
$headers = "From: $email\r\n";
mail("sales@company.com", "Order", $message, $headers);
我可以发送一个POST请求,其中
“orderEmail”
包含:

"helo@helo.lv\r\n
 From: viagra@farmacety.net\r\n
 BCC: victim1@domain1.com, victom2@domain3.com"
你的无害表格对我向全世界发送垃圾邮件非常有用。建议:

if ( ereg( "[\r\n]", $name ) || ereg( "[\r\n]", $email ) ) {
    [... direct user to an error page and quit ...]
}