想要模仿这个网站上发生了什么,你可以添加多个字段组:当你点击“添加另一张卡片”时,它会复制该字段 - 我已经用jquery和clone()
覆盖了它。但是,如果您输入两张金额相同的礼品卡,则下一步他们会将这些礼品卡的数量合并为一组。所以这是我面临的一个场景,以及我希望看到的输出:
用户输入:
Field Group 1 -- Amount: $100 Quantity: 1
Field Group 2 -- Amount: $75 Quantity: 2
Field Group 3 -- Amount: $100 Quantity: 1
下一页的所需输出:
$100 Gift Card Group: 2
$75 Gift Card Group: 2
我一直在寻找不同的方法,但找不到任何东西,请帮助!!
答案 0 :(得分:0)
对于输入,我会使用像denomination [],quantity []这样的名称,因为我们正在处理数组。在下一页上,在$ _POST上执行print_r(),然后你可以执行foreach()循环来组合相同面额的数量。
现在,假设$ foo是我们的(清理过的)$ _POST。 请执行预处理循环以清理输入;例如根据需要丢弃无效面额/数量。
一旦完成,我们最终得到$ foo,如:
<?php
// cleaned up $_POST
$foo = array(
'denomination' => array(100, 75, 100),
'quantity' => array(1, 2, 1),
);
$bar = array();
foreach ($foo['denomination'] as $d => $denomination) {
if (array_key_exists($denomination, $bar)) { // denomination exists
$bar[$denomination] += $foo['quantity'][$d];
} else { // new denomination
$bar[$denomination] = $foo['quantity'][$d];
}
}
print_r($bar); die; // debug
?>
输出结果为:
Array(
[100] => 2,
[75] => 2
)