使用条件检查更新表

时间:2014-02-21 06:30:52

标签: php mysql

我正在为图书租赁系统创建一个网站。在这里,我做图书管理员的工作,在那里插入书籍细节。所以这里我想更新书的可用性,如果已插入书的名称。我的查询是这样的。每当我尝试更新图书的可用性时,都会再次插入值。

$name=$_POST['bname'];
$avail=$_POST['avail'];
$q=mysql_query("select * from table where name='$name'");
if($name==$q){
  $n=("update table where name='$name' set avail='$avail'+1")
}

3 个答案:

答案 0 :(得分:3)

应该是,

UPDATE table 
SET `avail`= `avail` + 1
WHERE name = '$name' 

警告: Please, don't use mysql_* functions in new code。它们不再被维护and are officially deprecated。请参阅red box?转而了解prepared statements,并使用PDOMySQLi - this article将帮助您确定哪个。如果您选择PDO here is a good tutorial

答案 1 :(得分:1)

您的更新查询错误。使用此

"update table set avail = avail+1 where name = '$name'";

答案 2 :(得分:1)

我认为第一个查询必须改变如下:

'SELECT name FROM table WHERE name='.$name

和第二个:

'UPDATE table SET avail = avail+1 WHERE name ='.$name