Re: Not bale to connect to MySQL with PHP [message #169641 is a reply to message #169640] |
Mon, 20 September 2010 20:04 |
Denis McMahon
Messages: 634 Registered: September 2010
Karma:
|
Senior Member |
|
|
On 20/09/10 20:32, MikeB wrote:
> I have defined (just for testing) a user in my SQL named "pubuser" and
> granted it access to a database "publications." Of course I also created
> the database and two tables.
>
> I can access and manipulate the tables via phpMyAdmin and I can log in
> to sql using pubuser via the command-line interface.
>
> I have the following php code:
>
> <?php // login.php
> $db_hostname = 'localhost';
> $db_database = 'publications';
> $db_username = 'pubuser';
> $db_password = 'abc';
> ?>
>
>
> also I have a test web page:
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <html>
> <head>
> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
> <title>Connect to SQL</title>
> </head>
> <body>
> <?php
> Echo "Hello";
> require_once 'login.php';
> echo "got require";
> $db_server = mysql_connect($db_hostname, $db_username, $db_password);
> if (!$db_server)
> die("Unable to connect to MySQL: " . mysql_error());
> echo "Congrats, it seems you have connected to the server <br />
> host: $db_hostname<br />
> user: $db_username<br />
> password: $db_password <br />
> for database: $db_database<br />";
> print_r($db_server);
> ?>
> </body>
> </html>
>
> If I try to run this, it briefly says "connecting to localhost" and then
> indefinitely it says "waiting for localhost..."
>
> If I comment out the connect statement, the rest runs. What should I
> look for?
Are you doing all of this on a single machine? Or do have a separate
server and user machine?
localhost to the php process means the web server - so it's looking for
mysql on the web server, which is not necessarily the machine you're
running the browser on.
Are mysql and php in agreement as to which port to use?
What hosts(s) are defined in phpmyadmin for the user?
can you telnet to the mysql port on the server from a terminal session
on the server? eg telnet to the server, and then on the server "telnet
localhost 3306" (or whatever your mysql port is). What happens?
Rgds
Denis McMahon
|
|
|