Я пытаюсь добавить строки в новую таблицу.
Я использую цикл foreach для вставки данных, и я могу вставить данные.Я также могу достичь предела и добавить новую строку.Но проблема в том, что когда цикл закончен, он добавляет отдельную строку и не добавляет к желаемому пределу.
Я не слишком уверен, как мне добавить свою таблицу здесь.Но, пожалуйста, найдите код ниже:
$fetchRecordRS = DB::select("
Select `ID`
, `DeliveryAddress`
, `Postzone`
, `CarrierID`
, `DeliveryInstruction`
, `JobID`
, `JobName`
, Quantity
, `Bundlesize`
, SUM(Bundles) as 'SumBundles'
, SUM(Items) as 'SumItems'
, WeightKgs
, TotalWeightKgs
, SUM(WeightKgs) AS 'FixWeight'
, Notes
FROM UpdatedCsvFiles
WHERE DeliveryAddress != 'PLEASE LEAVE IN WAREHOUSE'
AND JobID != 0
GROUP
BY DeliveryAddress
, JobName
, CarrierID
ORDER
BY CarrierID
, DeliveryAddress ASC
");
foreach ($fetchRecordRS as $row_FetchRecordRS) {
$id = $row_FetchRecordRS->ID;
$carr_ID = $row_FetchRecordRS->CarrierID;
$address = $row_FetchRecordRS->DeliveryAddress;
$potzone = $row_FetchRecordRS->Postzone;
$instruction = $row_FetchRecordRS->DeliveryInstruction;
$quantity = $row_FetchRecordRS->Quantity;
$jobID = $row_FetchRecordRS->JobID;
$jobName = $row_FetchRecordRS->JobName;
$bundlesize = $row_FetchRecordRS->Bundlesize;
$bundle = $row_FetchRecordRS->SumBundles;
$items = $row_FetchRecordRS->SumItems;
//$num = $row_FetchRecordRS->FixWeight;
//$suburb = $row_FetchRecordRS->Suburb;
//$row_FetchRecordRS->TotalWeightKgs
$num = $row_FetchRecordRS->TotalWeightKgs;
$notes = $row_FetchRecordRS->Notes;
$num = $row_FetchRecordRS->FixWeight;
if ($num + $total > 200) {
echo ($num + $total) . "in Van " . $i ;
$sqltransitlist = DB::select("Insert INTO TransitList(genID, total) Values ('$i','$total')");
// loop A
foreach ($arr as $data) {
// echo "<br> first loop: " . $i;
$sqlquerytest = DB::select("Insert INTO GenerateRun(CarrierID, DeliveryAddress, Postzone, DeliveryInstruction, Quantity, JobID,
JobName, Notes, Bundlesize, Bundles, Items, FinalWeight, LodingZoneID)
VALUES('" . $data['CarrierID'] ."','" . $data['DeliveryAddress'] ."','" . $data['Postzone'] .
"','" . $data['DeliveryInstruction']. "','" .$data['Quantity'] . "','" . $data['JobID'] .
"','" . $data['JobName'] . "','" .$data['Notes'] . "','" . $data['Bundlesize']. "','" .$data['Bundles'] .
"','" . $data['Items'] ."','" .$data['FixWeight']."','" .$i ."')");
}
$arr = array();
$i++;
$total = 0;
}
$total += $num;
$arr[] = array('CarrierID' => $carr_ID, 'DeliveryAddress' => $address, 'Postzone' => $potzone,
'DeliveryInstruction' => $instruction, 'Notes' => $notes, 'Quantity' => $quantity, 'JobID' => $jobID,
'JobName' => $jobName, 'Bundlesize' => $bundlesize, 'Bundles' => $bundle, 'Items' => $items,
'FixWeight' => $num);
}
if ($total > 0) {
$sqltransitlist = DB::select("Insert INTO TransitList(genID, total) Values ('$i','$total')");
// loop B
foreach ($arr as $data) {
// echo "<br> Second loop: " . $i;
$sqlquerytest = DB::select("Insert INTO GenerateRun(CarrierID, DeliveryAddress, Postzone, DeliveryInstruction, Quantity, JobID,
JobName, Notes, Bundlesize, Bundles, Items, FinalWeight, LodingZoneID)
VALUES('" . $data['CarrierID'] ."','" . $data['DeliveryAddress'] ."','" . $data['Postzone'] .
"','" . $data['DeliveryInstruction']. "','" .$data['Quantity'] . "','" . $data['JobID'] .
"','" . $data['JobName'] . "','" .$data['Notes'] . "','" . $data['Bundlesize']. "','" .$data['Bundles'] .
"','" . $data['Items'] ."','" .$data['FixWeight']."','" .$i ."')");
$i++;
}
}