2017-07-25 68 views
-1

我目前困惑,任何幫助將是偉大的。變量+數字到數據庫

我目前正試圖按下一個按鈕來添加40到sales,但爲了添加40我需要當前的銷售數量,所以我用一個讀取數組來輸出這個數字,我將它看作'40',所以我將它設置爲一個變量,然後嘗試$ varible + 40設置數字。這似乎並沒有工作我在網上查詢和anyhelp會很棒!

$query = "SELECT `sales` FROM `sales`"; 

    if ($result=mysqli_query($link, $query)) { 

      $row = mysqli_fetch_array($result); 

      print_r($row); 
    } 


    if ($_POST['update']) { 


     echo 'Updating...'; 


     $query="UPDATE `sales` SET `sales` = '$row+40' WHERE `sales`.`id` = 1"; 

     mysqli_query($link, $query); 

     echo '<br>Successfully Updated'; 

} else { 

      echo 'Unsuccessful'; 

} 
+0

這個問題還不清楚。你能否更新你的文章以包含HTML? –

+0

你現在已經有了答案,看看。 –

回答

0

只要查詢進入MySQL,您不需要做兩個單獨的添加到現有數據。查詢會去如下:

UPDATE `sales` SET `sales` = `sales` + 40 WHERE `sales`.`id` = 1; 

所以,你的代碼應該是這樣的......

if($_POST['update']) { 
    echo 'Updating...'; 
    $query = "UPDATE `sales` SET `sales` = `sales` + 40 WHERE `sales`.`id` = 1"; 
    mysqli_query($link, $query); 
    echo '<br>Successfully Updated'; 
} else { 
    echo 'Unsuccessful'; 
} 

順便說一句,你的代碼是沒有現在的問題是,因爲$row是一個數組的原因。您將不得不訪問該數組中的某個鍵以獲取您想要的數據。現在你正試圖獲得40和一個數組對象的總和。

+0

你是什麼意思?代碼只是不添加$ Row.40 – Nydigov

+0

您不需要爲數據庫查詢現有的「$ row」數據。當按下該按鈕時,可以使用一個查詢(上面給出的查詢)將40添加到該數據。 –

+0

@Nydigov我更新了我的答案,以進一步解釋它。 –