2012-01-05 61 views
1

我正在使用PHP页面来构建电子邮件。部分电子邮件文本由来自ealier页面的$ POST变量提供。某些变量包含空格,这会导致字符串截断为我电子邮件中的一个单词。关于如何将整个字符串放入我的电子邮件文本中的任何语法想法? '。 $ _POST ['VariableName']。 '显然不起作用。

$message = ' 
<html> 
<HEAD> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>EuroClassic Transfer Notice</title> 
</HEAD> 

<body bgcolor="#F5EEDB"> 

<TABLE ID=hor-minimalist-b SUMMARY=EuroClassic Customer> 
<THEAD> 
<TR> 
<TH colspan=4 scope=col>Shipping Logistics:</th> 
</TR> 
</THEAD> 
<TBODY> 

<TR> 
<TD>Shipping From: </TD> 
<TD><INPUT type=text size=35 name=from value=' . $_POST['from'] . '></TD> 
<TD>Shipping To: </TD> 
<TD><INPUT type=text size=35 name=ToLocation value=' . $_POST['ToLocation'] . '></TD> 
</TR> 
<TR> 
<TD>PO Number: </TD> 
<TD><INPUT type=text size=20 name=PO value=' . $_POST['PO'] . '></TD> 
<TD>Address: </TD> 
<TD><INPUT type=text size=35 name=address value=' . $_POST['address'] . '></TD> 
</TR> 
<TR> 
<TD>Ship Date: </TD> 
<TD><INPUT type=text size=20 name=ShipDate value=' . $_POST['ShipDate'] . '></TD> 
<TD>City/State/ZIP: </TD> 
<TD><INPUT type=text size=35 name=city value=' . $_POST['city'] . '></TD> 
</TR> 
<TR> 
<TD>Arrival Date: </TD> 
<TD><INPUT type=text size=20 name=ArrivalDate value=' . $_POST['ArrivalDate'] . '></TD> 
<TD>Freight: </TD> 
<TD><INPUT type=text size=20 name=cost value=' . $_POST['cost'] . '></TD> 
</TR> 
</TBODY> 
</TABLE> 

</div> 
</body> 
</html> 
'; 
+2

也阅读了HEREDOC字符串语法的例子。 – mario 2012-01-05 21:12:45

回答

15

只要在属性值周围加引号。

+3

你应该已经为你的所有属性做了反正... – animuson 2012-01-05 21:11:16

+0

而不是:'''从']。'>>'输入' 2012-01-05 21:11:24

+1

此外,使用'htmlspecialchars'或'htmlentities'来转义数据。 – Lekensteyn 2012-01-05 21:14:36