2017-07-15 43 views
0

我是PHP和Mysql的新手。我有一個表(股票),我試​​圖插入數據到它,如果相同的數據已經存在,那麼根據用戶輸入必須更新相同的數據。如果數據不可用,更新

$sql=mysqli_query($conn, "SELECT * FROM stock WHERE medName = $medName"); 

if (mysqli_num_rows($sql) > 0) 
{ 
    $sqlUpdate="update stock set qunty= qunty +'$qunty'"; 
    mysqli_query($conn,$sqlUpdate); 
} else { 
    $sqlInsert="insert into stock set medName= '$medName', qunty= '$qunty',phyLoc= '$phyLoc',printPrice= '$printPrice',menufName= '$menufName'"; 
    mysqli_query($conn,$sqlInsert); 
} 

但上面的代碼只存儲值,如果它不在那裏,它不更新數據,如果它已經存儲。請有人幫助我。

謝謝大家。

+0

你檢查'$ qunty'是否有權利/期望值? (做一個'var_dump($ qunty);'來驗證) – Jeff

+0

是的! $ qunty具有預期的價值 – Arsh

回答

1

試試看看這個代碼。您在查詢中有關於報價的問題。你還需要在哪裏更新條件

$sql = mysqli_query($conn, "SELECT * FROM stock WHERE medName = '$medName'"); 

$sqlQuery="insert into stock set medName= '$medName', qunty= '$qunty',phyLoc= '$phyLoc',printPrice= '$printPrice',menufName= '$menufName'"; 
if (mysqli_num_rows($sql) > 0) { 
    $sqlQuery="update stock set qunty= qunty + $qunty WHERE medName = '$medName'"; 
} 

mysqli_query($conn,$sqlQuery); 
相關問題