Jump to content

PDO: Call to a member function fetch() on a non-object


510carlos

Recommended Posts

I am just trying out PDO and I get this error, Fatal error: Call to a member function fetch() on a non-object, but isn't it already on the $this->db object?

 

class shoutbox {

private $db;

function __construct($dbname, $username, $password, $host = "localhost" ) 
{ # db conections
	try {
		$this->db = new PDO("mysql:host=".$hostname.";dbname=".$dbname, $username, $password);
	}
	catch(PDOException $e)
	{
		echo $e->getMessage();
	}
}

function getShouts()
{
	$sql_shouts = $this->db->query('SELECT shoutid, message, pmuserid, ipadress, time FROM shouts WHERE pmuserid == 0');

	return $sql_shouts->fetch(PDO::FETCH_OBJ);

}

}

The problem is that your query is returning false. In SQL the comparison operator is = not ==, try this:

 

$sql_shouts = $this->db->query('SELECT shoutid, message, pmuserid, ipadress, time FROM shouts WHERE pmuserid = 0');

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.