我正在寻找一种将表单中的行数链接到简单购物车/结帐脚本中的项目的方法。
这是场景。用户正在预订 session 席位。有一个三层定价结构,每个价格都有一个表格部分。当用户第一次导航到预订页面时,他被要求添加他/她希望在每个定价结构下预订 session 的人数。可以使用 javascript 将额外的行添加到表单的每个部分。完成每个被预订者的姓名/详细信息后,用户单击“提交”按钮,将所有信息提交到 MySQL 数据库,并将用户重定向到付款页面。
我希望这个支付页面包含一个简单的购物车/结账,它会自动填充每个费率的人数、每个费率的总数和总计。然后,用户只需点击一个按钮即可完成 PayPal 付款。
所以我坚持的部分是如何将信息从表单(即每个速率的行数(人))自动传递到“结帐”页面,以及我可能使用哪个脚本生成结帐页面。
如能提供任何帮助,我将不胜感激,
谢谢,
尼克
最佳答案
我会使用一个 POST 数组,这样当添加每一行时,它使用类似于以下格式的内容:
<input name='tickets[][name]' />
<input name='tickets[][email]' />
然后在PHP端,我们可以简单的统计票数,根据$_POST生成的数组进行定价
<?php
$tiers = array(
array(
'num_people' => 3,
'price' => 50.00,
),
array(
'num_people' => 10,
'price' => 20.00,
),
array(
'num_people' => 50,
'price' => 10.00,
)
}
$price = $tiers[0]['price'];
$num_people = count($_POST['tickets']);
for($i=count($tiers); $i>=0; $i--){
if ($num_people >= $tiers[$i]['num_people']) {
$pricing = $tiers[$i]['pricing'];
break;
}
}
$total = $price * $num_people;
在 javascript 方面,您可以公开一个 Web 服务来计算费率并通过 ajax 或类似方式返回详细信息。
在最后一页上,您只需获取这些计算的结果(存储在 session 中或根据数据库中的顺序)并在您的 View 中打印出来。
关于php - 根据表单中的行数将项目添加到购物车,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6011555/