2013-05-14 52 views
0

我試圖通過PHP我的數據庫編輯一個整數的價值,這是我使用編輯值

$query = "UPDATE Bremners WHERE stud_name = john SET stud_goal = stud_goal + 1"; 

Bremners是表和表中有一欄的代碼與一個人的名字(stud_name),所以我試着讓它如此,如果stud_name = john那麼改變代表john所具有的目標數量的int,那麼具有目標數量的列是stud_goal。我試圖通過1

回答

4

增加了價值試試這個:

$query = "UPDATE Bremners SET stud_goal = stud_goal + 1 WHERE stud_name = 'john'"; 

在PHP中,你可以用一些像這樣開頭:

<?php 
$mysqli = new mysqli("localhost", "root", "", "test"); 

$name = "Bill"; 
$increment = 1; 

if ($stmt = $mysqli->prepare("UPDATE Bremners SET stud_goal = stud_goal + ? WHERE stud_name = ?")) 
{ 
    $stmt->bind_param("is", $increment, $name); 
    $stmt->execute(); 
    printf("%d Row affected.\n", $stmt->affected_rows); 

    $stmt->close(); 
} 
$mysqli->close(); 
?> 

如果需要由多個數量更改多個值,你應該使用這樣寫你的查詢:

$mysqli->prepare("UPDATE Bremners 
        SET 
        stud_goal = stud_goal + ?, 
        stud_assist = stud_assist + ? 
        WHERE stud_name = ?") 

?是所有ERS,那麼你必須這樣綁定您的參數:

$stmt->bind_param("iis", 1, 5, "john"); 
  • 這將替換第一個?與「i」類型的1(整數)
  • 第二?與5的「我」類型(整數)
  • 第三?與「s」類型的「john」(字符串)

請看看這個link

+0

@ user2109242請參閱我的更新回答 – fthiella

+0

謝謝!另外,如果我想改變多個不同的值,如stud_goal,stud_assist,...以不同的數量,我將如何更改$查詢變量? – user2109242

+0

+1因爲不給他一個沒有註冊的,注射值得回答的問題:) –