我正在尝试在php脚本中使用MySQL select的结果,并在同一个表中进行一些更新。
对于以下查询,我需要查看每条记录并说“if order_status ='S',将is_placement设置为1(这是一点)并将date_updated设置为curdate()”
我可以通过更新来做到这一点,但诀窍是我需要将状态为'S'的order_id存储在一个数组中,以便在另一个查询中使用。
我不确定如何将其循环并存储在数组中。
这是选择:
$orderCheck = "
SELECT
order_id,
order_status
FROM order_status
";
编辑(基于以下答案):所以我可以制作一系列订单ID,如下所示:
$result = mysqli_query($connection,$orderCheck);
while ($row = mysqli_fetch_array($result))
{
$array = $row['order_id'}
if($row['order_status'] == 'S'){
Store ORder IDs here}
}
但是使用该数组和存储的订单ID,我需要更新每个ID的记录。
我如何预先形成更新并存储必要的ID?
答案 0 :(得分:0)
$orderCheck = "SELECT
order_id,order_status FROM jfi_sales.order_status ";
$result = mysql_query($orderCheck );
$ids= array();
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
if($row['order_status'] == 'S'){
$ids[]= $row['order_id'];
}
}
print_r($ids);
现在$ids
是订单ID的数组,其订单状态为“S”。请尝试此操作。
答案 1 :(得分:0)
以下内容将以您需要的方式存储数据:
$result = mysql_query($orderCheck);
$order_ids = array();
while ($row = mysql_fetch_array($result))
{
$order_id = $row['order_id'];
if ($row['order_status'] == "S")
{
array_push($order_ids, $order_id);
}
}