2017-07-29 13 views
1

所以纔將舊的SQL語句轉換爲準備好的發言PHP的MySQL準備語句...如何更新數據庫,添加到價值已經存儲

那麼,如何添加到已存儲在數據庫中的價值?

$sql = "UPDATE `table` SET `PT` = PT+$PaymentGross ... "; 

但你如何準備語句中完成相同的:

舊條款我這樣做

像這樣:

$sql = "UPDATE `table` SET `PT` = PT+? ... "; 

或像這樣:

$stmt->bind_param("i",PT+$PaymentGross ...); 

找不到任何信息,或者不能衝正確的關鍵字在谷歌

+1

那麼有什麼問題wi編寫代碼並測試它? –

+1

那麼,你的問題到底是什麼?請提供更多細節以便我們提供幫助。 – YATO

+0

對不起,我試圖在它沒有工作之前的聲明。我剛注意到這個錯誤是在聲明行的其他地方。我以爲我輸入了UPDATE'table' SET'PT' = PT +?錯了。我的錯誤,愚蠢的錯誤 – James

回答

2

你可以試試這個way

$sql = "UPDATE `table` SET `PT`=SUM(`PT`+?) WHERE id=?"; 

    $stmt = $db->prepare($sql); 

    // This assumes the PT is int `d` and id is int `d` 


    $stmt->bind_param('dd', $PaymentGross, $id); 
    $stmt->execute(); 

    if ($stmt->errno) { 
     echo "FAILURE!!! " . $stmt->error; 
    } 
    else echo "Updated {$stmt->affected_rows} rows"; 

    $stmt->close(); 
相關問題