ID: 49027 Updated by: [email protected] Reported By: andreas dot streichardt at globalpark dot com -Status: Verified +Status: Closed Bug Type: MySQLi related Operating System: Linux PHP Version: 5.3.0 Assigned To: mysql New Comment:
This bug has been fixed in SVN. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Fix will appear in 5.3.1 Thanks! Previous Comments: ------------------------------------------------------------------------ [2009-08-27 13:16:40] [email protected] Automatic comment from SVN on behalf of andrey Revision: http://svn.php.net/viewvc/?view=revision&revision=287807 Log: Fixed bug #49027 (mysqli_options() doesn't work when using mysqlnd) ------------------------------------------------------------------------ [2009-08-06 00:38:40] [email protected] The INIT_COMMAND is currently not supported by mysqlnd, along with a bunch of other options, see ext/mysqlnd/mysqlnd.c. Leaving this with the mysql guys ------------------------------------------------------------------------ [2009-07-23 09:07:38] andreas dot streichardt at globalpark dot com Description: ------------ mysqli_real_connect() doesn't honor init commands previously set with mysqli_options($x,MYSQLI_INIT_COMMAND) when using the mysqlnd driver. I am not sure if this is simply a missing feature or a bug. At least this is a documentation problem as it isn't noted anywhere. Ideally if this is not a bug mysqli_options should return false so one notices that it isn't supported yet. This problem only appears when using mysqlnd as the driver. mysql> SELECT version(); +----------------+ | version() | +----------------+ | 5.4.1-beta-log | +----------------+ But i don't think this is related to the database version, is it? Reproduce code: --------------- $handle=mysqli_init(); if (!mysqli_options($handle,MYSQLI_INIT_COMMAND,"testtest")) print "Broken!\n"; if (!...@mysqli_real_connect($handle,"localhost","root","","test",3306)) print "Connection broken!\n"; Expected result: ---------------- Connection broken! (testtest is not a valid query) If the general log is activated you should see the query in the log Actual result: -------------- blank output (database connection was successful - assuming that the credentials provided in the connection string work). no "testtest" query in the general log ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=49027&edit=1
