Skip to main content


Beginning PHP5, Apache, and MySQL Web Development

Elizabeth Naramore, Jason Gerner, Yann Le Scouarnec, Jeremy Stolz, Michael K. Glass

ISBN: 978-0-764-57966-0 February 2005 816 Pages


This update to a Wrox bestseller dives in and guides the reader through the entire process of creating dynamic, data-driven sites using the open source "AMP" model: Apache Web server, the MySQL database system, and the PHP scripting language. The team of expert authors covers PHP scripting, database management, security, integration, and e-commerce functions and comes complete with a useful syntax reference.
  • Showcases three fully functional Web site examples, with implementations for both Windows and Linux, that readers can incorporate into their own projects
  • Updates include a new chapter on PHP5 features and functions, a new example Web site application, and updates to PHP5 throughout the text

Part I: Getting Started.

Chapter 1: Configuring Your Installation.

Part II: Movie Review Web Site.

Chapter 2: Creating PHP Pages Using PHP5.

Chapter 3: Using PHP5 with MySQL.

Chapter 4: Using Tables to Display Data.

Chapter 5: Form Elements: Letting the User Work with Data.

Chapter 6: Letting the User Edit the Database.

Chapter 7: Manipulating and Creating Images with PHP.

Chapter 8: Validating User Input.

Chapter 9: Handling and Avoiding Errors.

Part III: Comic Book Fan Site.

Chapter 10: Building Databases.

Chapter 11: Sending E-mail.

Chapter 12: User Logins, Profiles, and Personalization.

Chapter 13: Building a Content Management System.

Chapter 14: Mailing Lists.

Chapter 15: Online Stores.

Chapter 16: Creating a Bulletin Board System.

Chapter 17: Using Log Files to Improve Your Site.

Chapter 18: Troubleshooting.

Appendix A: Answers to Exercises.

Appendix B: PHP Quick Reference.

Appendix C: PHP5 Functions.

Appendix D: MySQL Data Types.

Appendix E: MySQL Quick Reference.

Appendix F: Comparison of Text Editors.

Appendix G: Choosing a Third-Party Host.

Appendix H: An Introduction to PEAR.

Appendix I: AMP Installation.


“…covers everything to get you going…definitely worth a look…” (OracleHome, 3 August 2005)
Code Downloads
Code downloads for this title are available here.
ChapterPageDetailsDatePrint Run
112-113Error in Text
On pages 112-113 the code should read the same as on page 111:

<h2><center>Movie Review Database</center></h2>
<table width="70%" border="1" cellpadding="2"
cellspacing="2" align="center">
<th>Movie Title</th>
<th>Year of Release</th>
<th>Movie Director</th>
<th>Movie Lead Actor</th>
<th>Movie Type</th>

echo $movie;

145-147Error in Text
The 3rd table row structure starts...

<td bgcolor="#FFFFFF">Add what?</td>
Then on page 147 item 5 of the list refers to "Item Type" field

146Error in Code
a <?php echo $foo; ?>
should be:
a <?php echo $foo ?>

160Error in Text
Third Paragraph:
Note that the value part of the type element is composed of two different values, seperated by a semicolon.

should be:
Note that the value part of the type element is composed of two different values, seperated by a colon.

204-205Missing Right Brace
Add the "}" after the code given below, this is the closing brace of else condition of if ($type > 3).

$insert = "INSERT INTO images
image_caption, image_username, image_date)
'$image_caption', '$image_username', '$today')";
$insertresults = mysql_query($insert)
or die(mysql_error());

$lastpicid = mysql_insert_id();

// close the brace here

308, 320Error in Source Code
(mysql_num_rows($result) > 0) { $row = mysql_fetch_array($result); $charlist[$row['id']] = $row['alias']; }

needs to be replaced by this: if (mysql_num_rows($result) > 0) { while($row = mysql_fetch_array($result)) { $charlist[$row['id']] = $row['alias']; } }

PHP, Apache, and MySQL are the three key open source technologies that form the basis for most active Web servers. This new edition guides you through the entire process of setting up your own site and walks you through every step, from the installation of PHP, Apache, and MySQL to database management, security, and integration with other technologies. Featuring new information on the features and functions of the latest upgradesâ??MySQL 4.0.X, PHP5, and Apache 2.0â??this book boasts a working Web site application and numerous updates throughout the text. The multi-platform approach addresses installation and usage on both Linux® and Windows®, and two common-themed, reusable Web sites are examined. Upon completion of this book, you'll be able to create well designed, dynamic Web sites using open source tools. What you will learn from this book Syntax, functions, and commands of PHP, Apache, and MySQL and how they can be used together in Web development The ins and outs of data manipulation The object-oriented programming advantages of PHP5 Ways of using PHP for connecting HTML-based Web pages to a backend database for dynamic content How MySQL easily stores, updates, and accesses information Who this book is for This book is for beginners who are new to PHP and who need to learn quickly how to create Web sites using open source tools. Some basic HTML knowledge is helpful but not essential.