2013-05-14 49 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因为不给他一个没有注册的,注射值得回答的问题:) –