在从我的网站成功进行 Paypal 付款交易后,我正在尝试发送感谢邮件。
我在这里从 paypal 获取 product_name,
echo $_POST['item_name1']; // it displays 1st product's name
echo $_POST['item_name2']; // it displays 2nd product's name
现在我试图将所有产品名称放入一个数组中,然后在邮件正文中打印。
$N=3; // No of purchased items
$itemArray = array();
for ($i = 0; $i < $N; $i++) {
$itemArray[]=$_POST['item_name'.$i];
}
$itemList = implode('#', $itemArray);
现在在邮件消息中我正在尝试这样,
$message = "Dear ". $_POST['first_name'] ." ,<br/>
We have received payment towards purchase of ". str_replace('#', '<br/>', $itemList)." .<br/>
Thank you for ordering.<br/> ";
我没有在邮件正文中获取项目名称。 谁能帮忙?
最佳答案
您的 for 循环正在从 $_POST['item_name0'];
获取产品名称和 $_POST['item_name1'];
.
将其更改为:
for ($i=1; $i<=$N; $i++ ) {
$itemArray[]=$_POST['item_name'.$i];
}
然后这应该添加 $_POST['item_name1'];
的值并继续到您的阵列。
此外,为什么不直接使用 implode("</br>", $itemArray);
并删除 str_replace 函数?
关于php - 来自 $_POST 变量的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25135724/