【发布时间】:2017-07-08 16:49:46
【问题描述】:
我有一个电子邮件模板正在尝试在用户订购某些商品后发送给他们。使用内联 css 和 html 作为电子邮件模板发送电子邮件,并将其保存为 .html。问题是我如何将用户购买的所有项目加载到每个表中,并在发送之前将其传递给电子邮件 html 模板文件
<tbody style="-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;margin: 0;font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;font-size: 14px;">
{{ item }}
</tbody>
这是我发送邮件的 php
$mail = new PHPMailer;
$mail->From = "email@email.com";
$mail->FromName = "test";
$mail->addAddress($email); //Recipient name is optional
$mail->addReplyTo("email@email.com", "Reply");
$mail->isHTML(true);
$variables = array();
$variables['name'] = 'john';
$template = file_get_contents("eorder.html");
foreach($data as $row){
$eprodname = $this->get_name_from_id('product_name','product','product_id',$row['id']);
$variables['item'] ='<tr style="-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;margin: 0;font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;font-size: 14px;page-break-inside: avoid;">
<td style="-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;margin: 0;font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;font-size: 14px;vertical-align: top;padding: 8px;line-height: 1.428571429;border-top: 1px solid #ddd;background-color: #fff!important;">1</td>
<td style="-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;margin: 0;font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;font-size: 14px;vertical-align: top;padding: 8px;line-height: 1.428571429;border-top: 1px solid #ddd;background-color: #fff!important;">'. $eprodname .'</td>
<td style="-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;margin: 0;font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;font-size: 14px;vertical-align: top;padding: 8px;line-height: 1.428571429;border-top: 1px solid #ddd;background-color: #fff!important;">'. $row['quantity'] .'</td>
<td style="-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;margin: 0;font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;font-size: 14px;vertical-align: top;padding: 8px;line-height: 1.428571429;border-top: 1px solid #ddd;background-color: #fff!important;">'. $row['price'] .'</td>
</tr>';
}
foreach($variables as $key => $value)
{
$template = str_replace('{{ '.$key.' }}', $value, $template);
}
$mail->Subject = "Order Details";
$mail->Body = $template;
$mail->Send();
我的问题:我对这段代码的看法是,如果用户订购了多个产品,这段代码只会加载桌子上的最后一个产品
【问题讨论】: