当我注意到我的一个mod给了我这个错误时,我即将打开我的网站:
致命错误:不能在第303行的/var/www/vbsubscribetouser.php中使用mysqli_result类型的对象作为数组
我去了第303行,这是我发现的:
//Check if requested username can be followed.
if (in_array($followingdata['usergroupid'], explode("|", $vbulletin->options['subscribetouser_usergroups_cannot']))){
以下是从第303行开始的所有代码:
//Check if requested username can be followed.
if (in_array($followingdata['usergroupid'], explode("|", $vbulletin->options['subscribetouser_usergroups_cannot']))){
exit;
}
if ($followinginfo[subscribers] > 0){
$user_followers = $followinginfo[followers].$userinfo[userid].'|';
}
else{
$user_followers = '|'.$userinfo[userid].'|';
}
$vbulletin->db->query_write("
UPDATE " . TABLE_PREFIX . "user
SET subscribers = subscribers + 1, `followers` = '$user_followers'
WHERE userid = $followinginfo[userid]
");
我不是php编码的专家,所以在打开网站之前有一些帮助会很棒。任何帮助/建议?
非常感谢!
答案 0 :(得分:27)
不能使用mysqli_result类型的对象作为数组
使用mysqli_fetch_assoc
或mysqli_fetch_array
将结果行作为关联数组获取。
$query = "SELECT 1";
$result = $mysqli->query($query);
$followingdata = $result->fetch_assoc()
或
$followingdata = $result->fetch_array(MYSQLI_ASSOC);