0号不工作,如果语句中while循环PHP

0号不工作,如果语句中while循环PHP

问题描述:

我想在表中药房所有检查数量0号不工作,如果语句中while循环PHP

如果数量== 0补充更新和变化“缺货”

否则量将将其更改为“有现货”

当数字0如果语句不起作用。

这是我的PHP代码:

$select="SELECT * FROM drugs WHERE quantity"; 
$resultt = mysqli_query($connect, $select); 

$count="1"; 

while($row = $resultt->fetch_array(MYSQLI_ASSOC)){ 
    $id=$row["id"]; 
    $Quantity=$row["quantity"]; 

if($Quantity == "0"){ 
$update="UPDATE drugs SET stock='Out Stock' WHERE id='$id'"; 
$result = mysqli_query($connect, $update); 

}else{ 
$update="UPDATE drugs SET stock='In Stock' WHERE id='$id'"; 
$result = mysqli_query($connect, $update); 

} 


    $count++; 
    $Q+=$Quantity; 


} 

感谢

+1

列'quantity'的数据类型是什么? –

+0

“不行”是什么意思?任何错误? – simon

+0

如果您将表中已有的数量作为基础,则根本无需执行任何操作。当您稍后显示内容时,只需使用数量字段。 – bcmcfc

不要打扰。

您正在根据同一行中的另一个值设置一个值。没有必要这样做。表格设计只是将现有数据复制到两个表示中。

如果最终目标只是向用户输出内容,请在视图中执行此操作。

if ($row['quantity'] < 1) { 
    echo "out of stock!"; 
} 

如果你真的想更新数据库,这样做在两个查询,而不是2%个人行:

UPDATE drugs SET stock = 'Out of Stock' WHERE quantity = 0; 
UPDATE drugs SET stock = 'In Stock' WHERE quantity > 0; 

假设当然股票字段是CHAR或VARCHAR类型。

但正如我所说,这是一个糟糕的设计。您已经拥有关于数量字段值中是否包含库存的信息,请在需要的地方使用。

+0

我是PHP初学者,你的解决方案与我合作>>谢谢 – mohammed

的SQL查询正确sintax是

SELECT column_name,column_name 
FROM table_name 
WHERE column_name operator value; 

当你写

WHERE quantity 

它可能是你唯一的选择那些其数量比 “0” 不同。只需尝试选择所有条目:

$select="SELECT * FROM drugs"