Jump to content

Archived

This topic is now archived and is closed to further replies.

jimmyc

Trouble connecting to MySQL database

Recommended Posts

I apologize if this is overly simple but I've had no luck getting it to work nor finding an answer to this.

I've installed Apache, PHP, MySQL on WindowsXP and they all work. Meaning I can look at php info() and see a nice page, Apache gives me the default page and when I open the MySQL Command Line Client I can connect to the default databases, perform a query, etc. Also, I installed phpMyAdmin and can see the MySQL databases from the phpMyAdmin pages (which are php pages). However I cannot figure out how to "connect" to MySQL from a PHP page.

I've used different variations of the following code, but they all yield a blank page. Any idea what I am doing wrong? It seems like this should be the simplest part. And since the phpMyAdmin page sees the databases I really don't get it.

This php page is saved to C:/www/test and the databases are located under C:/Program Files/MySQL/MySQL Server 5.0/data

<?php
$host = "localhost";
$user = "root";
$pass = "admin";
$connect = mysql_connect($host, $user, $pass) or die("Could not connect to mysql server");
$sql = mysql_create_db("test1");
if (!sql) {
  echo "there was an error" . mysql_error();
}
else {
echo "database test was created";
}

Thanks for any help you can provide.
-Jim

Share this post


Link to post
Share on other sites

[code]<?php
$host = "localhost";
$user = "root";
$pass = "admin";
$connect = mysql_connect($host, $user, $pass) or die("Could not connect to mysql server");
echo("Mysql was connected!<br>");
$sql = mysql_create_db("test1");
if (!$sql) {
  echo "there was an error" . mysql_error();
}
else {
echo "database test was created";
}
mysql_close($connect);
?>[/code]
User this code and tell me...

Share this post


Link to post
Share on other sites
It prints nothing...blank page.  :'(

If I put an echo prior to the mysql_connect, that will print on the page fine but it dies just afterward and won't print any other echo statements.

<?php
$host = "localhost";
$user = "root";
$pass = "admin";
echo $host;
$connect = mysql_connect($host, $user, $pass) or die("Could not connect to mysql server");

Share this post


Link to post
Share on other sites
http://localhost/phpMyAdmin works fine. And it lists the databases located under C:\Program Files\MySQL\MySQL Server 5.0\data
I can add a new database, table, anything under phpMyAdmin. But I can't see it from any PHP page that I write.

For php info - here is what I get:
mysqli
MysqlI Support enabled
Client API library version 4.1.7
Client API header version 4.1.7
MYSQLI_SOCKET /tmp/mysql.sock

Directive Local Value Master Value
mysqli.default_host localhost localhost
mysqli.default_port 3306 3306
mysqli.default_pw no value no value
mysqli.default_socket no value no value
mysqli.default_user root root
mysqli.max_links Unlimited Unlimited
mysqli.reconnect Off Off

Is mysqli...the "i" a problem?
Thanks for your help!

Share this post


Link to post
Share on other sites
Btw, I've tried connecting to the db with or without a password and it yields the same blank page.
$host = "localhost";
$user = "root";
$pass = "";
$connect = mysql_connect($host, $user, $pass) or die("Could not connect to mysql server");

When I go to http://localhost/phpmyadmin/ I do need to supply the username "root" and password "admin" prior to the page being rendered.

Thanks.

Share this post


Link to post
Share on other sites
Yes, I installed them all myself.

I will check out WAMP.

Thanks for the advice.  ;)

Share this post


Link to post
Share on other sites
You are using the wrong extension. If you are using mysql_connect you use the php_mysql.dll extension. Not the php_mysqli.dll extension. The php_mysqli.dll extensions has completly separate functions for that extension which is the mysql[b]i[/b]_*() functions #(note the i before mysql). The mysqli extension will not work with the mysql_*() functions.

Share this post


Link to post
Share on other sites
That was it!!! Thanks very much!  ;D ;D :D :D

Will keep WAMP in mind for future installations. Thanks!
Does something like WAMP exist for Linux (Debian)?

Share this post


Link to post
Share on other sites
You can use XAMPP for unix based OS's WAMP stands for Windows Apache MySQL and PHP

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.