#31418 [NoF->Bgs]: MySQL connection functions do Not Work With Double Quotes on Argument
| From: | philip@php.net | Date: | Thu, 05 Mar 2009 02:11:38 +0000 |
| Subject: | #31418 [NoF->Bgs]: MySQL connection functions do Not Work With Double Quotes on Argument | ||
| References: | 1 | Groups: | php.doc.bugs |
| Request: | Send a blank email to doc-bugs+get-1941@lists.php.net to get a copy of this message | ||
ID: 31418
Updated by: philip@php.net
Reported By: sam dot boles at acfb dot org
-Status: No Feedback
+Status: Bogus
Bug Type: Documentation problem
Operating System: Windows 2000
PHP Version: 5.0.3
New Comment:
This report looks bogus.
Previous Comments:
------------------------------------------------------------------------
[2009-03-05 01:24:33] privsman at gmail dot com
for the "password: yes" issue, you have to go to the terminal, then
root@none, and allow the user in mysql access from there, and then set
pass for the user there too. You can't do it from PHPmyadmin, even with
the masteradmin grant privs.
------------------------------------------------------------------------
[2007-01-30 18:39:54] harvey at engineer dot com
Look in your ini file to set up quotes to work the way you want them
to. Also check the setting for 'magic-quotes'.
------------------------------------------------------------------------
[2005-01-31 22:28:10] sniper@php.net
No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Open". Thank you.
------------------------------------------------------------------------
[2005-01-07 09:13:21] vrana@php.net
> I saw several web posts mentioning trouble with this very
> issue.
Can you please give us links to these posts? There can be some clue to
understand this problem.
------------------------------------------------------------------------
[2005-01-06 19:23:45] sam dot boles at acfb dot org
The code listed is simple because I was taking this one step at a time.
I wanted to be sure I could attach to the DB before writing more
complex code to actually do anything. I did not want to put in the work
at a full application until I knew that the motor would turn over, so to
speak.
Here is the course of the issue, as it evolved:
I installed MySQl several months ago (upgraded to 4.1.7 when that was
released) and have been using it via ASP using ODBC and also through the
native MySQL clients successfully. However, for portability reasons,
want to migrate to the PHP scripting language and use the built in mySQL
(or mySQLi) functions rather than ODBC. So I installed Apache 2.0 and
PHP 5.0.3 to gain this advantage.
However, what I found was that every attempt to do even the simplest
things with mySQL via PHP were stymied by the fact that the function
would not connect to the server--threw the 1045 error.
I tried several solutions--including updating the mysqllib.dll and
modifying php.ini, my.ini and Apache configurations. I tried setting
the MySQL server to use only Old Passwords. None of this had any affect
on the ability of the script to even connect with the server.
Essentially, I tried every solution mentioned in various forums and help
documents found on the PHP, MySQL and other sites.
I finally found one example online that used single quotes rather than
double quotes on the function arguments. When I tried using this
syntax, PHP connected and continues to function correctly. All queries
issued using this connection format work perfectly. Double quotes throw
the error.
I'm sure that it must be something odd about my setup here, but since I
saw several web posts mentioning trouble with this very issue, wanted to
put it out as a tip for something others could try if they are having
similar issues.
And I do use variables and escape sequences in strings. What I meant
(sorry I wasn't clear) is that there is nothing in the strings that
comprise the actual username "root" or password "hoo25boy" (not the real
password) that were formatted like escape sequences or variables and
that could have been misinterpreted somehow by the PHP or MySQL
engines.
I agree this is very very odd. A simple change like going from
$mysqli = new mysqli("host_name","user_name",
"password", "database");
to
$mysqli = new mysqli('host_name','user_name',
'password', 'database');
shouldn't have affected this--but in test after test here it does.
Thanks.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/31418
--
Edit this bug report at http://bugs.php.net/?id=31418&edit=1