我想更新所有在其银行中拥有“300000”黄金并将其设置为“15000”的用户 我试过运行这个脚本:
<?php
$db_handle = mysqli_connect("127.0.0.1", "root", "pass", "db") or die("|-1");
if($db_handle)
$value = '15000';
mysqli_query($db_handle, "UPDATE playerdata SET Bank='$value' WHERE Bank = '300000'");
?>
我找不到很多关于使用WHERE语句更新所有行的互联网。
感谢您的帮助。
答案 0 :(得分:1)
你有语法故障:
if($db_handle)
$value = '15000';
if()上没有{}
,所以此代码正在执行:
$db_handle = ...
if ($db_handle) {
$value = '15000';
}
mysqli_query(...);
由于您未正确检查连接失败,或者在发生DID失败时执行任何操作,因此您无法在可能不存在的连接上盲目运行查询。代码应该是
$db_handle = mysqli_connect(...);
if (!$db_handle) {
die(mysqli_connect_error());
}
mysqli_query($db_handle, "query goes here") or die(mysqli_error($db_handle));
从不 EVER 假设您的查询成功。它有完全 ONE 的成功方式,以及几乎无限的失败方式。总是假设失败,检查失败,并将成功视为一个惊喜。