我想检查指定用户的某列是否持有大于0的值.
问题
在执行查询,然后执行查询时,我收到此错误:
Fatal error: Cannot use object of type PDOStatement as array in C:\xampp\htdocs\recover\admin\create.php on line 40
我的代码(执行查询):
if (isset($_SESSION['user'])) {
$admin = $CONNECT_TO_DATABASE->prepare("SELECT * FROM admin WHERE username = :username");
$admin->bindValue(':username', $_SESSION['user']);
$admin->execute();
错误线(40):
if ($settings['create_admins'] > 0 || $admin['super_admin'] > 0 ) {
题:
为什么会出现此错误?我如何解决它?
我尝试这样做:
$admin = $CONNECT_TO_DATABASE->prepare("SELECT * FROM admin WHERE username = :username");
$admin = $admin->bindValue(':username', $_SESSION['user']);
$admin = $admin->execute();
并得到另一个错误:
Fatal error: Call to a member function execute() on a non-object in C:\xampp\htdocs\recover\admin\create.php on line 38
谢谢!
编辑:我需要->提取对象,但我刚刚完成了此工作,并且摆脱了错误..但这不会影响吗?我的意思是我正在回显该行,它给了我空值(无).为什么?
$admin = $CONNECT_TO_DATABASE->prepare("SELECT * FROM admin WHERE username = ".$_SESSION['user']."");
$admin = $admin->fetch();