我有一个这样的表单转发器 form repeater image
提交一个代码(在整个过程中都应该相同)以成千上万个产品名称和数量。例如
我想将上述所有数据作为json提交给db,其中ID为递增的ID(在这种情况下为10,000,产品名称在每个ID旁边)。产品名称应在其特定数量结束处结束,例如,当ID达到5000时,下一个ID应为5001,并开始显示pen。
我尝试了这个`
//array submited from form
$array = $request->get('arrayName');
foreach ($array as $key => $value) {
$items[] = $value['no_of_items'];
$a_sum = array_sum($items);
$length = 15;
$string = bin2hex(openssl_random_pseudo_bytes($length));
$maxNumberOfItems = $a_sum;
for ($a = 0; $a <= $maxNumberOfItems; $a++) {
if ($a <= reset($items) && $a === $maxNumberOfItems) {
$a = reset($items);
}
echo +$a . " => " . $value['item'] . "<br> ";
$temp = bin2hex(openssl_random_pseudo_bytes($length));
$coupons[] = [
'id' => +$a,
'item' => $value['item'],
'code' => $temp,
'item_status' => 'in-store',
];
}`
它会正确显示名称,但不会如上所述自动增加ID。当它达到5000的那一刻,下一项从0而不是5001开始。任何帮助将不胜感激。
答案 0 :(得分:0)
您可能需要手动获取MAX(id)并执行以下操作:
for($ a = $ maxId; $ a <= $ maxNumberOfItems + $ maxId; $ a ++)