2010-12-10 19 views
2

我正在使用PDO对象在php中执行查询。我的PDO获取列函数中的错误

$stmt = $this->db->prepare('select email from users where email = :email'); 
return (bool) $stmt->execute(array(':email' => $email))->fetchColumn(); 

我在这里得到错误。

Fatal error: Call to a member function fetchColumn() on a non-object

请问有什么问题请帮忙,$this->db->query()命令有效。

感谢

回答

6

首先,它的拼写为“执行”,而不是“exectute”

其次,PDOStatement::execute返回一个布尔值,指示查询是否成功。要提取结果,您必须在原始语句实例上调用一个提取方法。

+0

嗨如果我添加fetchcolumn()那么它给我错误,因为在问题请检查 – XMen 2010-12-10 09:51:45

+2

http://php.net/manual/en/pdostatement.execute.php - 执行返回布尔。如果你想访问结果,你应该在新行中键入:'返回$ stmt-> fetchColumn()' – Maurycy 2010-12-10 09:56:13

1

你的拼写错误执行错误。

+0

嗨,如果我添加fetchcolumn()然后它给我错误,因为问题请检查 – XMen 2010-12-10 09:51:55