我有一个奇怪的问题。当我对行进行更新时,信息会更新,但不会更新。我叫这段代码
$count = $v_count+1;
mysqli_query($db_conn, "UPDATE videos SET v_count='$count' WHERE id='$vk'");
我也尝试过这段代码......
if(isset($_POST['vk'])){
mysqli_query($db_conn, "UPDATE videos SET v_count='$v_count'+1 WHERE id='$vk'");
}else{
echo mysqli_error($db_conn);exit();
}
它确实有效,但数量增加了2,而不是我预期的1。这条线已经在我用过的其他应用程序中工作了......但现在它表现得很奇怪。任何帮助将不胜感激。
这是完整的PHP块
$vk = $_GET['vk'];
if($vk != ''){
$sql = "SELECT * FROM videos WHERE id='$vk' LIMIT 1";
$query = mysqli_query($db_conn, $sql) or die (mysqli_error());
while ($row = mysqli_fetch_array($query)) {
$v_count = $row['v_count'];
}
mysqli_query($db_conn, "UPDATE videos SET v_count=v_count+1 WHERE id='$vk'");
mysqli_free_result($query);
}else{
header('location: index.php');
}
答案 0 :(得分:0)
您的应用程序逻辑可能有一些错误,因此PHP代码中的$v_count
不等于MySQL表中的v_count
字段。
如果您使用
mysqli_query($db_conn, "UPDATE videos SET v_count=v_count+1 WHERE id='$vk'");
无论$ v_count PHP变量的值是多少,它总是会增加1。