php
  • mysql
  • 2014-02-21 57 views 1 likes 
    1

    我正在爲書籍租賃系統創建網站。我在這裏做圖書管理員的工作,在這裏插入書的細節已經完成。所以在這裏我想更新本書的可用性,如果書的名字已經插入。我的查詢是這樣的。每當我嘗試更新本書的可用性時,都會再次插入值。使用條件檢查更新表

    $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") 
    } 
    
    +0

    你爲什麼還在使用MySQL擴展 – Naeem

    回答

    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

    您的更新查詢是錯誤的。使用此

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

    我認爲首先查詢必須是這樣的變化:

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

    和第二個:

    'UPDATE table SET avail = avail+1 WHERE name ='.$name 
    
    相關問題