在PHP中引用表单数据时出现语法错误

时间:2012-06-28 19:51:23

标签: php phpmailer

当用户提交表单时,我正在使用PHPMailer以HTML格式发送表单数据。在电子邮件正文中放置引号fullName时会出现语法错误。如果没有引号,则不会显示错误。我是PHP的新手,当我声明一组代码是HTML时,我不确定如何从PHP中引用HTML表单。这是我的代码:

注意:我正在使用Dreamweaver对此进行编码,有时语法更正不正确,但我想确保在忽略它并编写整个文档之前。

<?php
require("class.phpmailer.php");
$mail = new PHPMailer();$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = "smtp1.example.com;smtp2.example.com";
$mail->SMTPAuth = true;
$mail->Username = 'smtpusername';
$mail->Password = 'smtppassword';

$mail->From="mailer@example.com";
$mail->FromName="My site's mailer";
$mail->Sender="mailer@example.com";

$mail->AddAddress("email@example.com");
$mail->Subject = "Test 1";

$mail->IsHTML(true);
$mail->Body = "
<h1>Graphics Request</h1>

Name: $_POST['fullName']<br />
";
$mail->AltBody="This is text only alternative body.";

if(!$mail->Send())
{
   echo "Error sending: " . $mail->ErrorInfo;;
}
else
{
   echo "Letter is sent";
}
?>

3 个答案:

答案 0 :(得分:1)

实际上,这是PHP中的语法错误。因为你在一个双引号字符串中,你可以(并且必须)在那里写$_POST[fullname]

这是PHP试图帮助你的设计师的一个例子。就像他们在continue内打破布尔运算符和switch的行为时所做的那样。

答案 1 :(得分:1)

我把所有的帖子结果都放在变量中,你应该养成这个习惯,这就像上面的工作一样。只是我的.02美分

答案 2 :(得分:0)

重写为:

$mail->Body = "
<h1>Graphics Request</h1>

Name: {$_POST['fullName']}<br />
";