|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2006-12-27 22:14 UTC] rodricg at sellingsource dot com
Description:
------------
With a php linked against libmysqlclient.so.15 (from mysql
5.0.30) connecting to a mysql 4.x server PDO fails to
report errors.
Reproduce code:
---------------
<?php
$pdo = new PDO('mysql:host=localhost;port=3306;dbname=mysql', 'root', '');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "selec Host, User, Password from user";
$qry = $pdo->query($sql);
$qry->setFetchMode(PDO::FETCH_OBJ);
foreach($qry as $row)
{
print_r($row);
}
?>
Expected result:
----------------
Fatal error: Uncaught exception 'PDOException' with
message 'SQLSTATE[42000]: Syntax error or access
violation: 1064 You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server
version for the right syntax to use near 'selec Host,
User, Password from user' at line 1' in /root/bug.php:6
Stack trace:
#0 /root/bug.php(6): PDO->query('selec Host, Use...')
#1 {main}
thrown in /root/bug.php on line 6
Actual result:
--------------
Fatal error: Call to a member function setFetchMode() on a
non-object in /root/bug.php on line 7
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Tue Oct 28 04:00:01 2025 UTC |
Apparently I misspoke and am only experiencing this against the 4.0 server, 4.1 appears to be working. ::root@ds02::8::/usr/src/php/php5.2-200612281530 Thu Dec 28 08:37:16 # /opt/php-snap/bin/php /root/bug.php Fatal error: Call to a member function setFetchMode() on a non-object in /root/bug.php on line 7 ::root@ds02::8::/usr/src/php/php5.2-200612281530 Thu Dec 28 08:38:54 # mysql -hxxxxxxxxx.xxx -uxxxxxxx -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2032902 Server version: 4.0.25-log ::root@ds02::8::/usr/src/php/php5.2-200612281530 Thu Dec 28 08:44:56 # /opt/php-snap/bin/php /root/bug.php Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'selec Host, User, Password from user' at line 1' in /root/bug.php:6 Stack trace: #0 /root/bug.php(6): PDO->query('selec Host, Use...') #1 {main} thrown in /root/bug.php on line 6 ::root@ds02::8::/usr/src/php/php5.2-200612281530 Thu Dec 28 08:45:34 # mysql -hxxxxx.xxxxxxxxx.xxx -P3309 -uxxxxxxxx -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 627531 Server version: 4.1.10-standard-log