Advanced formatting

Perhaps the most popular way to lay out database results is using HTML tables where each row in the database is a row in the table, and each column in the database is a column in the table. In order to give you a head start in this common task, here's an example of table printing in action. The SQL schema used is this:

CREATE TABLE dogbreeds (ID INT AUTO_INCREMENT PRIMARY KEY, Name CHAR(50), Size CHAR(10), Info CHAR(50));

Go ahead and add your own fields to that to fill it up, then create a script with the following code:

<?php
    mysql_connect
("localhost", "phpuser", "alm65z");
    
mysql_select_db("phpdb");

    
$result = mysql_query("SELECT Name, Size, Info FROM dogbreeds ORDER BY Name;");

    if (
mysql_num_rows($result)) {
        print
"<table=\"1\"><tr style=\"font-weight: bold;\"><td>Breed</td><td>Size</td><td>Info</td></tr>";

        while(
$row = mysql_fetch_assoc($result)) {
            
extract($row);
            print
"<tr><td>$Name</td><td>$Size</td><td>$Info</td></tr>";
        }
    
        print
"</table>";
    }
?>

As you can see, it is the same "iterating through mysql_fetch_assoc() " approach we've used previously, but now we're using it to create an HTML table row by row - as you can see from the screenshot below, it works very well.

 

Next chapter: Reading auto-incrementing values >>

Previous chapter: Results within results

Jump to:

 

Home: Table of Contents

Follow us on Identi.ca or Twitter

Username:   Password:
Create Account | About TuxRadar