Hello everyone,

I have a little bit problem here.I have installed PHP version 4.4.1 and it's working well. I want to connect PHP with MySQl . I have also installed MySQL and it installed successfully.

Inorder to configure PHP to work with Mysql, I did the following changes in the c:\ windows\php.ini .

Uncomment (Removing semicolon) the line that follows extension=php_mysql.dll and extension=php_mbstring.dll .

The next step, i typed the following code in the notepad and saved it htdocs file and named as dbtest.php


$db_server = "localhost";
$db_user = "root";
$db_pwd = ""; //Enter your root password here.
$db_db = "mysql";

if (!$cnn = mysql_connect($db_server, $db_user, $db_pwd)) {
echo mysql_error();
if (!mysql_select_db($db_db, $cnn)) {
echo mysql_error();

$sql = "select * from help_category";
if (!$res = mysql_query($sql, $cnn)) {
echo mysql_error();
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {
$data[] = $row;

<title>Apache/PHP/MySql Test</title>
<h1>Help Categories</h1>


echo "<style>table.dump { font-family:Arial; font-size:8pt; }</style>";
echo "<table class=\"dump\" border=\"1\" cellpadding=\"1\" cellspacing=\"0\">\n";
echo "<tr>";
echo "<th>#</th>";
foreach($data[0] as $key=>$val) {
echo "<th><b>";
echo $key;
echo "</b></th>";
echo "</tr>\n";
$row_cnt = 0;
foreach($data as $row) {
echo "<tr align='center'>";
echo "<td>".$row_cnt."</td>";
foreach($row as $val) {
echo "<td>";
echo $val;
echo "</td>";
echo "</table>\n";



then i run the dbtest.php in the browser.

I am getting an error msg as " Client does not support authentication protocol requested by server; consider upgrading MySQL client".

where do u think the problem lies?? I want to make sure that am i following the right direction.Am i missing something that still need to done??

I know this may sound basic but i really do not have any clue about this.Can someone help me ,please !!!

Any sugggestion or advice is appreicated.If anybody could help,please let me know.

Thanks in advance..


Hey VG,

Upon first glance, I would suggest you try a lot less code for your initial run. A simple echo of "blah, blah" would suffice after you open the connection to the database.

I'm not real familiar with this specific error, but it sounds like it can't find the db. Here are some questions I have:

  • Is the database name really mysql? [If so, you might want to consider renaming it]
  • Is the db on this same machine or on the net? [If on another machine, your connection needs the address]

Also, I remember having to load the PHP and MySQL application files in the root of the machine. [i.e. - not in a subdirectory] So, maybe you want to check that out too.

Best of luck - you're doing good so far!

hummmm, may be incompetibility between versions

try to google and install "XAMPP" and run the same query on it........

if it is incompetibility between php and mysql these are latest versions preconfigured and you will solve the problem


i am having problems getting mysql to work with php and apache. i have got apache running and php as well. all tested and working fine. i configured my php.ini file to recognize mysql but when i restarted the server and loaded the test page, i got a bland page instead. will be pleased if someone could help

Try making your own thread saidus9, don't hijack another person's.

Update to PHP5, unless you have very specific reasons for using PHP4.
The following link will explain the issue:

The error can't be related to his DB name or location because this is an authentication error. He has to be authenticated before it would attempt a connection with any database.

if the apache is working fine with the php create a php file and insert the following code in it;

<? echo phpinfo() ?>

if scroll through the generated page, if you should not see the mysql among then, try looking at your apache/config/httpd.conf.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.