I have a small app running using PDO and after a server migration and PHP upgrade I'm now getting the following error
Warning: PDO::query(): SQLSTATE[HY000]: General error: mode must be an integer in var/www/xxxxxxxx
The line it references is
$statement = $this->_connection->Query("SELECT * FROM table WHERE SOMECOL = '$col' LIMIT 1", $this->_connection);
I've been looking around google for awhile and there doesn't seem to be any fix. I've tried setting the default fetchmode using $db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ); but the error doesn't change.
Appreciate they help :)
$this->_connectionargument, read the argument list forPDO::query()- you'll see that passing the connection object to the second argument makes no sense. It looks like you probably migrated from ext/mysql, this mechanism of passing the connection to the database calls is no longer required with PDO. Also please learn about prepared statements.