У меня есть несколько заказов в базе данных, каждый заказ может иметь более одной строки заказов.Я должен отправить каждую строку заказа в виде скручивания, и у меня возникают проблемы, когда у меня более одной строки заказа.
Я пробовал несколько разных подходов, но, похоже, не могу понять это правильно.
Одна строка в cURL:
{
"type": "physical",
"reference": "9788205521186",
"name": "Dvalen",
"quantity": 1,
"quantity_unit": "pcs",
"unit_price": 1000,
"tax_rate": 0,
"total_amount": 1000,
"total_tax_amount": 0
}
Несколько строк должны выглядеть следующим образом:
{
"reference": "9788205521186",
"type": "Physical",
"name": "Dvalen",
"quantity": "1",
"quantity_unit": "stk",
"unit_price": "1000",
"tax_rate": "0",
"total_amount": "1000",
"total_tax_amount": "0",
"product_url": "https:\/\/www.hk.no\/bok\/I9788205521186",
"image_url": "https:\/\/res.cloudinary.com\/image\/upload\/c_fit,q_auto:best,w_140\/9788205521186"
},
{
"reference": "9788205521186",
"type": "Physical",
"name": "Dvalen",
"quantity": "1",
"quantity_unit": "stk",
"unit_price": "1000",
"tax_rate": "0",
"total_amount": "1000",
"total_tax_amount": "0",
"product_url": "https:\/\/www.habok.no\/bok\/I9788205521186",
"image_url": "https:\/\/res.cloudinary.com\/image\/upload\/c_fit,q_auto:best,w_140\/9788205521186"
}
Текущий код:
/Fetch orders from database.
$sql_ordre = "SELECT * FROM ordre WHERE behandlet = '0'";
$data = mysqli_query($dbconnection, $sql_ordre) or die(mysqli_error($dbconnection));
while ($rad = mysqli_fetch_array($data)){
//For each order, fetch orderlines.
$klarnaid = $rad['klarnaid'];
$sql_linje = "SELECT * FROM ordrelinje WHERE behandlet = '0' AND klarnaid = '$klarnaid'";
$linjedata = mysqli_query($dbconnection,$sql_linje) or die (mysqli_error($dbconnection));
//For each orderline, loop through and push to array:
while ($linjerad = mysqli_fetch_array($linjedata)) {
$orderline = array();
array_push($orderline, [
"reference" => "9788205521186",
"type" => "Physical",
"name" => "Dvalen",
"quantity" => "1",
"quantity_unit" => "stk",
"unit_price" => "1000",
"tax_rate" => "0",
"total_amount" => "1000",
"total_tax_amount" => "0",
"product_url" => "https://www.url.no/bok/I9788205521186",
"image_url" => "https://url.no/image/upload/c_fit,q_auto:best,w_140/9788205521186"
]);
//Format to Json and ehco.
$orderline_json = json_encode($orderline, JSON_PRETTY_PRINT);
echo $orderline_json;
}
}
Это прекрасно работает для одной строки заказа,но как только у меня их больше одного.У меня проблема.