Introduction:
This isn't quite a full blown tutorial, I like to think of it as a
mini-tutorial. This “mini-tutorial” will cover some of the most commonly
used functions. There won't be a background section; we're going to go
straight to work. Today, I'm going to discuss (if the title didn't give
it away) connecting to and using a database with php. The database will
be MySQL because it's just sooo darn popular.
Down To Work:
The first thing we need to do is connect to the database.
mysql_connect("somehost", "username", "password") or die ("Can't connect!");
This will try to connect to the database on somehost and login with
“username” as the username and “password” as the password. If it can't,
it will output an error message saying that it can't connect. For your
own code be sure to change somehost to your host (most of the times it's
localhost, ask your admin), username to your username (duh), and
password to your password. Another way to connect to a database is to
open a persistent connection. To do this, use the mysql_pconnect function and pass it the same arguments as mysql_connect. Why open a persistent connection? When you call mysql_pconnect,
instead of going out and opening a connection to the database, it sees
if one is already open, if it is, the script will use it. Also, when the
script has finished executing, the connection to the database will not
automatically be closed like it is when using mysql_connect.
This way the connection can be used later on. Using a persistent
connection is a good idea if your scripts constantly need to connect to
the database.
After we have opened a connection to the database, we then select a database.
mysql_select_db("database_name") or die("Can't select database!");
This will try to select the database named “database_name” (for your own code change it to the name of your database). If it can't select the database, it will output and error. Once you're actually connected to a database, you will want to query a table in the database to get whatever you want done. A query looks like this:
mysql_query("Some query");
Common queries are SELECT and INSERT For full documentation go to the mysql web site (http://www.mysql.com). Another common php function is mysql_num_rows; if it isn't obvious this gets the number of rows from a query. Here is an example of how it can be used with mysql_query:
<?php $result= mysql_query("SELECT * FROM some_table"); $number_of_rows= @mysql_num_rows($result); if ($number_of_rows == 0) { echo "Sorry there are no rows"; } else { echo "Yes! we found some rows!"; } ?>
Another really useful function is mysql_fetch_array,
because it gets the rows and puts them in an array that contains the
name of the rows. That way instead of having to access each row by
number you can do it by name! For example, let's say that our database
looked like this:
| User | Password |
| John | afasdfadsfdsf |
| Billy | tla;jrjealjwqsldajf |
| Mitch | pqrtupipripewir |
<?php
echo "The users in this database are: <br>";
$result= mysql_query("SELECT * FROM some_table");
while ($row= mysql_fetch_array($result))
{
$username= $row["User"];
echo "$username<br>";
}
?>
Now let's cover a couple of functions that actually work with the database. The first is mysql_create_db,
don't you just love how the functions are named you can figure out what
they do just by looking at the function name, this one obviously
creates a database. Here's how to use it:
<?php
echo "I am going to try to create a database...<br>";
if (mysql_create_db("test_database"))
{
echo "Hooray, I've created the database!<br>";
}
else {
echo "Darn couldn't create the database! because: ";
echo "mysql_error() <br>";
}
?>
<?php
echo "I am going to try to delete a database...<br>";
$result= mysql_drop_db("test_database");
if (!$result)
{
echo "Darn couldn't I couldn't delete the database!<br>";
}
else {
echo "Hooray, I've deleted the database<br>";
}
?>
The next two items aren't functions, rather they are queries that you
can use to manage an existing table. The following query will insert
data into a database:
<?php
echo "I am going to try to insert data into a table...<br>";
$result= mysql_query("INSERT INTO test_database (username, password) VALUES
(Rahim, adfjaldadfsdaf)");
if (!$result)
{
echo "Darn couldn't I couldn't delete the database!<br>";
}
else {
echo "Hooray, I've deleted the database<br>";
}
?>
The next query we've already gone over, I'm just going to add to it;
after I'm done you should be able to use it to help create a simple
search engine (upcomming tutorial)! For the sake of brevity I'll remove
all the extra php stuff and just show you the “meat” of the code.
$result= mysql_query("SELECT name FROM some_table WHERE name=Joe AND
lastname=Sixpack OR lastname=Becker ORDER BY lastname LIMIT 20");
Conclusion:
Well that wraps up this “mini-tutorial”, you should use this as a
quick reference for my other (upcomming) tutorials. If you found any
errors or have any comments please e-mail me (spiderman@witty.com), kindly direct questions to the message board.



No comments:
Post a Comment