ID: 43812 Comment by: jarrod dot makin at heartinternet dot co dot uk Reported By: graced at wingsnw dot com Status: No Feedback Bug Type: MySQLi related Operating System: Debian lenny/sid PHP Version: 5.2.5 Assigned To: andrey New Comment:
I can replicate the problem above with identical errors with following versions OS: Centos 5.2 php: 5.2.8 msqli api: 5.1.30 mysql Ver 14.14 Distrib 5.1.30, for pc-linux-gnu (i686) using readline 5.1 What may be more interesting is what happens to the same script on another setup OS: RHEL 4u4 php: 5.2.8 mysqli api: 5.0.51a mysql Ver 14.12 Distrib 5.0.67, for redhat-linux-gnu (i686) using readline 5.1 The script works fine when called via php5-cgi, but the reported error occurs when called by php5-cli Previous Comments: ------------------------------------------------------------------------ [2008-07-22 01:00:01] php-bugs at lists dot php dot net No feedback was provided for this bug for over a week, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open". ------------------------------------------------------------------------ [2008-07-14 20:28:38] [email protected] I can't reproduce this with PHP 5.3 CVS nor with PHP 5.2.6, please check the notes on http://dev.mysql.com/doc/refman/5.1/en/option-files.html, e.g. "On Unix platforms, MySQL ignores configuration files that are world-writable. This is intentional as a security measure." ------------------------------------------------------------------------ [2008-01-15 05:03:13] graced at wingsnw dot com Clarification: Warning: mysqli::real_connect(): (28000/1045): Access denied for user 'wadmin'@'localhost' (using password: NO) in /home/.../- on line 6 'wadmin' was the username I was connecting with (I missed it when sanitizing my.cnf values), NOT my current login name (which is what PHP and mysql both default to otherwise). Just in case it matters. ------------------------------------------------------------------------ [2008-01-11 03:32:02] graced at wingsnw dot com Description: ------------ my.cnf files allow the username/password/hostname and other connection information to be stored for later use. The Mysqli extension accepts a username from the file (overriding the default of the current login username) but not a password, thus it attempts to connect with no password even when a password is specified. The mysql command line client, when pointed at the file using --defaults-extra-file=path/to/file.cnf, successfully connects. Reproduce code: --------------- my.cnf contents: [client] host = localhost user = "username" password = "topsecret" PHP script: <?php error_reporting(E_ALL); $DB = mysqli_init(); $DB->options(MYSQLI_READ_DEFAULT_FILE, "my.cnf"); $DB->options(MYSQLI_READ_DEFAULT_GROUP, "client"); $DB->real_connect(); Expected result: ---------------- A successful database connection. Actual result: -------------- Warning: mysqli::real_connect(): (28000/1045): Access denied for user 'wadmin'@'localhost' (using password: NO) in /home/.../- on line 6 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=43812&edit=1
