如何使用PHPMailer添加更多变量

时间:2013-01-20 04:23:27

标签: php email phpmailer

我有一个HTML(表格)订单表格。用户需要填写各种单元格以显示他们想要订购各种商品的数量,如您所见:http://angelasmith.com.au/staging/

我刚刚使用他们提供的默认代码设置了PHPMailer,并确认我收到了这些电子邮件。我现在需要修改他们的代码,以便我收到的电子邮件实际显示用户在我的订单中键入的信息/数量。

以下是我的mail.php文件中的示例。目前,我收到的电子邮件中写着“这是以粗体显示的HTML邮件正文!”根据指定的Body变量。我需要收到包含用户输入的信息/数量的订单。我已经在线搜索过,并且只能找到电子邮件和电子邮件的示例。消息,而不是其他自定义表单字段。

$mail->Subject = "New Online Form Enquiry";
$mail->Body    = "This is the HTML message body <b>in bold!</b>";
$mail->AltBody = "This is the body in plain text for non-HTML mail clients";

if(!$mail->Send())
{
   echo "Message could not be sent. <p>";
   echo "Mailer Error: " . $mail->ErrorInfo;
   exit;
}

echo "Message has been sent";
?>

我的HTML文件中的表格行示例。我把它包括在内,因为我认为我需要添加每个单元名称的变量,例如$ b15来检索用户输入,但我不确定。我不介意我收到的电子邮件是否显示为表格 - 我只需要能够阅读用户在表格中输入的内容。

<tr>
 <td rowspan="2" align="right" class="leftColText"><strong>10 RE</strong></td>
 <td height="28"><input name="b15" type="text" class="tdcenter" id="b15" value="1200" style="width:100%;"/></td>
 <td><input name="c15" type="text" id="c15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="d15" type="text" id="d15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="e15" type="text" id="e15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="f15" type="text" id="f15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="h15" type="text" id="h15" style="width:100%;"onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="i15" type="text" id="i15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="j15" type="text" id="j15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="k15" type="text" id="k15" style="width:100%;" onchange="javascript:calcupptbl(15,1.2,5)"/></td>
 <td><input name="l15" type="text" class= "tdcenter" id="l15" value="0.00" style="width:100%;"/></td>
 <td><input name="m15" type="text" class="tdcenter" id="m15" value="0" style="width:90%;" onchange="javascript:calcupptbl(15,1.2)"/></td>
</tr>

1 个答案:

答案 0 :(得分:1)

好的......所以,如果我清楚地理解,一旦客户点击“提交订单”,就会使用post方法调用发送邮件的脚本。所以你必须检索提交的值。因此,在脚本的顶部执行此操作,例如:

if (!empty($_POST))
{
    $quantity = isset($_POST['quantity']) ? $_POST['quantity'] : 0;
    $account = isset($_POST['quantity']) ? $_POST['quantity'] : 'Anonymous';

现在......一旦您检索,清理并检查了所有值,就将它们插入邮件正文中:

    $mail->Body = "I just received an order of $quantity items from $account!";

每个$ _POST值对应于表单的输入ID。