У меня есть форма, которая запрашивает из базы данных MySQL.Этот конкретный выводит 79 строк.Когда я отправляю и затем пытаюсь разделить с помощью foreach () в массив, он будет максимальным в 77 строк.Независимо от того, какие части я активирую и даже добавляю новые.
$counterVar=0;
foreach($_POST['count'] as $row=>$value) {
if(number_format(($_POST['partsprice'][$row] * $_POST['new_qty'][$row]), 2, '.', '') > '0.00'){
//$row_data[] = "(DEFAULT, '".$count[$row]."', '".$rma[$row]."', '".$ln[$row]."', '0', '".$item_key[$row]."', '".$qty[$row]."', '".$part_n[$row]."', '".$desc[$row]."', '".number_format($part_price1[$row], 2, '.', '')."', '".number_format($roll_out1[$row], 2, '.', '')."', '".number_format(($part_price1[$row] * $qty[$row]), 2, '.', '')."', '".number_format(($roll_out1[$row] * $qty[$row]), 2, '.', '')."', '".$cost_type[$row]."', '".$stkrm[$row]."', '".$bin[$row]."','5')<BR>";
$row_data[] = "(DEFAULT, '".$_POST['count'][$row]."', '".$_POST['rma'][$row]."', '".$_POST['linenum'][$row]."', '0', '".$_POST['item_key'][$row]."', '".$_POST['new_qty'][$row]."', '".$_POST['part_num'][$row]."', '".$_POST['part_desc'][$row]."', '".number_format($_POST['partsprice'][$row], 2, '.', '')."', '".number_format($_POST['rolloutprice'][$row], 2, '.', '')."', '".number_format(($_POST['partsprice'][$row] * $_POST['new_qty'][$row]), 2, '.', '')."', '".number_format(($_POST['rolloutprice'][$row] * $_POST['new_qty'][$row]), 2, '.', '')."', '".$_POST['cost_type'][$row]."', '".$_POST['stkrm'][$row]."', '".$_POST['bin'][$row]."','5')<BR>";
}
$counterVar++;
}
Обновление кода
$counterVar = 0;
$row_data = [];
$aEach = isset($_POST['count']) ? (array)$_POST['count'] : [];
foreach($aEach as $row => $value) {
$fPartsPrice = isset($_POST['partsprice'][$row]) ? (float)$_POST['partsprice'][$row] : 0;
$fNewQnty = isset($_POST['new_qty'][$row]) ? (float)$_POST['new_qty'][$row] : 0;
if(floatval($fPartsPrice * $fNewQnty) > 0) {
$row_data[] = "(DEFAULT, '".$_POST['count'][$row]."',
'".$_POST['rma'][$row]."', '".$_POST['linenum'][$row]."', '0',
'".$_POST['item_key'][$row]."', '".$_POST['new_qty'][$row]."',
'".$_POST['part_num'][$row]."', '".$_POST['part_desc'][$row]."',
'".number_format($_POST['partsprice'][$row], 2, '.', '')."',
'".number_format($_POST['rolloutprice'][$row], 2, '.', '')."',
'".number_format(($_POST['partsprice'][$row] * $_POST['new_qty'][$row]), 2, '.', '')."',
'".number_format(($_POST['rolloutprice'][$row] * $_POST['new_qty'][$row]), 2, '.', '')."',
'".$_POST['cost_type'][$row]."', '".$_POST['stkrm'][$row]."', '".$_POST['bin'][$row]."','5')<BR>";
}
$counterVar++;
}
$values=implode(",",$row_data);
echo $values;
echo "<br>";
echo 'items: '.count($row_data).'<br />';
echo 'counter: '.$counterVar.'<br />'; `