Не могу правильно составить запрос:
$array1 = (1, 2, ...)
$array2 = (1, 5, ...)
//запрос нужен примерно такой:
$sql = "UPDATE `{$table}` SET `quantity` = '{$array1[]}' WHERE `order_id`='{$array2[]}'";
Помогите, пожалуйста?
$array1 = (1, 2, ...)
$array2 = (1, 5, ...)
//запрос нужен примерно такой:
$sql = "UPDATE `{$table}` SET `quantity` = '{$array1[]}' WHERE `order_id`='{$array2[]}'";
$array1 = array(1, 2, ...);
$array2 = array(1, 5, ...);
$order_id = array();
$sql = "UPDATE `$table` SET `quantity` = CASE ";
foreach ($array1 AS $key=>$value) {
$sql .= " WHEN `order_id` = '".$array2[$key]."' THEN '$value' ";
$order_id[] = $array2[$key];
}
$sql .= " END WHERE `order_id` IN (".implode(',', $order_id).")";
$sql = "UPDATE `{$table}` SET `quantity` = '{$array1[]}' WHERE `order_id`='{$order_id}' AND `product_id`='{$array2[]}'";
$array = array(
'id'=>1,
'quantity'=>2
);
Цитата (fork @ 17.07.2015 - 13:01) |
А можно поподробней.. |
Цитата |
$array1 = (1, 2, ...) |
public function edit($table,$product_quantity,$order_numb,$o_product_id) {
$sql = "";
for ($i = 0; $i < count($product_quantity); $i++) {
$sql .= "UPDATE `{$table}` SET `quantity` = '{$product_quantity[$i]}' WHERE `order_id`='{$order_numb}' AND `order_product_id`='{$o_product_id[$i]}'; ";
}
return ($this->pdo->query($sql)) ? false : 'failed to add entry';
Цитата (fork @ 20.07.2015 - 11:51) |
Буду рад увидеть альтернативу. |