我需要获取某个查询返回的行数,但它让我犯了这个错误
尝试在第18行的C:\ xampp \ htdocs \ sample \ includes \ CheckUsername.php中获取非对象的属性
这是我的代码:
<?php
class Db_CheckUsername{
protected $_conn;
protected $_username;
protected $_errors = array();
public function __construct($username,$conn){
$this->_username = $username;
$this->_conn = $conn;
}
public function isUsernameAvailable(){
$sql = "SELECT ";
$sql .= "FROM accounts ";
$sql .= "WHERE username = {$this->_username}";
$result = $this->_conn->query($sql);
$numRows = $result->num_rows;
if($numRows == 0){
return true;
}else{
return false;
}
}
}
?>
我该如何解决这个问题?
答案 0 :(得分:4)
SELECT FROM accounts
可能无效。您可能需要SELECT * FROM
或SELECT 1 FROM
。
答案 1 :(得分:4)
我不会给你解决方案,因为我认为你需要开发一些基本的故障排除技巧。
$result
包含哪些数据?请查看var_dump。答案 2 :(得分:2)
您没有检查查询中的错误。如果发生错误,$result
将为false,这正是如此。您的查询中存在语法错误。