我在数据库中添加了新列,并希望将随机值作为临时访问键插入所有行。这就是我所拥有的(是的,我知道没有错误报告-可以稍后添加):
require ('./connect.php');
$length = 10;
$db = mysqli_connect($db_hostname,$db_username,$db_password,"paratb_members");
$result = mysqli_query($db,"SELECT * FROM membervote where accesskey = ''");
while ($row = mysqli_fetch_array($result)) {
$randomString = substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, $length);
mysqli_query($db,"UPDATE membervote SET accesskey = '$randomString' WHERE accesskey = ''");
echo $row['fname']. " - $randomString<br>";
}
虽然echo给我每一行一个唯一的值,但是数据库行都是相同的第一个值。曾尝试使用不同的WHERE值,但后来我什么也没写到数据库,但回声很好。
我想念什么?谢谢
答案 0 :(得分:0)
我认为问题在于您的UPDATE设置的/ every /行中有一个空白的访问键-因此,第一次循环时,它将每一行设置为相同的值,随后没有空白的访问键了改变。
(我认为最好不要在以后再进行异常处理,因为根据我的经验,当您首次开始编写代码时,它是最有用的。)