从mysql中选择后,“ == 0”不起作用

-1 php mysql select if-statement zero

我希望我的代码检查特定书籍的可用副本是否为0,以便它将其状态更新为1(使其不可用)

现在我的问题是,无论何时运行我的代码的这一部分,IF语句始终为true,无论之前的Select语句返回的值是1还是更高。因此,即使这本书仍然有副本,也无法使用

$sql = "SELECT Available_Copies from books WHERE id = '$bid'";
$query = $conn->query($sql);
if($sql == 0)
{   
  $sql = $conn->query("UPDATE books SET status = 1 WHERE id = '$bid' ");
  $query = $conn->query($sql);              
}   
Run Code Online (Sandbox Code Playgroud)

u_m*_*der 5

您的两个查询可以合并为一个:

$sql = "UPDATE books SET status = 1 WHERE id = '$bid' AND Available_Copies = 0";
$query = $conn->query($sql);
Run Code Online (Sandbox Code Playgroud)

  • 您能否不要在答案中连接SQL,或者至少以粗体显示应避免这种情况! (3认同)