ID:               39967
 Updated by:       [EMAIL PROTECTED]
 Reported By:      rodricg at sellingsource dot com
-Status:           Open
+Status:           Bogus
 Bug Type:         PDO related
 Operating System: Linux
 PHP Version:      5CVS-2006-12-28 (snap)
 New Comment:

Unfortunately I do not have 4.0 server setup, But on all the 
version of MySQL i have access to PDO reports the expected 
error.


Previous Comments:
------------------------------------------------------------------------

[2006-12-29 19:10:10] rodricg at sellingsource dot com

Do you experience the same behavior as me (no error 
reported) against a 4.0 server? Or is it specific to my 
environment / setup?

------------------------------------------------------------------------

[2006-12-29 00:12:59] [EMAIL PROTECTED]

I suspect it is caused by MySQL not returning an error code or 
doing so in a non-standard fashion. With 4.1 and 5.0 versions 
I get the expected exception thrown.

------------------------------------------------------------------------

[2006-12-28 16:57:06] rodricg at sellingsource dot com

Apparently I misspoke and am only experiencing this against the 4.0
server, 4.1 appears to be working.

::[EMAIL PROTECTED]::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

::[EMAIL PROTECTED]::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


::[EMAIL PROTECTED]::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

::[EMAIL PROTECTED]::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

------------------------------------------------------------------------

[2006-12-28 00:05:05] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5.2-win32-latest.zip

Seems to work fine in latest CVS

------------------------------------------------------------------------

[2006-12-27 22:14:17] 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


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=39967&edit=1

Reply via email to