最近,我的一个PHP代码出现了问题,并将其制作为thread 我得到了一个解决方案,但是当应用该解决方案时,又出现了另一个错误!
Warning: Illegal string offset 'admin_db' in C:\wamp64\www\NewKali\includes\user.inc.php on line 55
此错误抱怨我的代码的这一部分:
public function isAdmin($user){
$userToGet = $user;
$stmt = $this->Connect()->prepare("SELECT admin_db FROM user_secure WHERE username_db=?");
$query1 = $stmt->execute([$userToGet]);
if(!$query1)
{
die("Execute query error, because: ". print_r($this->Connect()->errorInfo(),true) );
}else{
foreach ( $stmt->fetch() as $row) {
$value = $row["admin_db"];
if($value == 1){
return true;
} else {
return false;
}
}
}
}
它发生在这里:
$ value = $ row [“ admin_db”];
即使发生此错误,该函数仍会返回一个布尔值,这是我在另一个代码中需要的。
我还是PHP的新手,我不知道此错误意味着什么,或者我做错了什么...
谢谢您的时间!
答案 0 :(得分:1)
尝试使用PDO :: FETCH_ASSOC
fetchAll(PDO::FETCH_ASSOC)
我认为您的提取操作不是返回由列名索引的数组,而是返回由0索引的列号索引的数组。