“PHP and MySQL for Dynamic Web Sites: Visual QuickPro Guide” Errata

Unfortunately, despite the best efforts of myself, the technical editor, the copy editor, the line editor, the proofreader, and despite the multiple revisions, errors still occur. This page lists all the errors found in the book since it went to print.

Note: errors are corrected in subsequent printings and therefore your particular copy may not contain all of the following. You may also be experiencing problems not caused by a mistake in the book. If so, you may find the solution to your problem by using the book’s corresponding forum. Significant changes in the technology will be addressed there and you can also find problems and solutions encountered by other readers.

Known Errors in the Book:

Click on a column heading to sort the table by that column.

Chapter Page # Description Date Added
1: Introduction to PHP 18 The URL for the PHP Coding Standard, as listed in the second tip, has changed to http://alltasks.net/code/php_coding_standard.html. July 5, 2003
1: Introduction to PHP 25 In Script 1.9 on line 23, it should read …<b>$’, $price, ‘</b>…’. This also applies to Step 5. October 4, 2003
1: Introduction to PHP 31 On lines 23 and 26 of Script 1.11, there is an extraneous \ before the $quantity variable. The corresponding steps (2 on page 31 and 4 on page 32) are correct. June 20, 2003
2: Programming with PHP 36 On line 24 of Script 2.1 and in Step 3, there’s an extra ‘e’ in Between. July 31, 2004
2: Programming with PHP 38 In the third line of the first paragraph, the word in italics should be handling. August 4, 2003
2: Programming with PHP 38 The echo statement on line 11 of Script 2.2, and in Step 2 on page 39, should include a <p> before Thank you…. July 12, 2004
2: Programming with PHP 44 At the top of the second column, it should say if-elseif-else. August 31, 2004
2: Programming with PHP 51 The very last line of Step 1 should conclude with –>. One hyphen is missing. September 26, 2003
2: Programming with PHP 56 In Table 2.3, the key for Iowa should be IA. October 26, 2003
2: Programming with PHP 58 On line 37 of Script 2.8, there is an extraneous Ü. June 19, 2003
2: Programming with PHP 67 In Script 2.11, line 37 should refer to the variable $name, not {$_POST[‘name’]}. The same applies in Step 4. October 18, 2003
2: Programming with PHP 67 On line 37 of Script 2.11 and in the code to Step 4, the echo statement should begin with an opening P tag, which is closed at the end of the statement. February 15, 2005
2: Programming with PHP 70 In the second tip, it should be described as a mnemonic device, not a pneumonic one. September 2, 2003
2: Programming with PHP 71 Line 14 of Script 2.13 humiliatingly has the movie Casablanca spelled incorrectly. This error also applies to Step 2 on page 72 and Figure 2.30 on page 73. July 21, 2003
3: Creating Dynamic Web Sites 90 Step 2 is missing the line
1
The corresponding script is correct.
February 12, 2004
3: Creating Dynamic Web Sites 95 On line 21 of Script 3.9, \$$_POST[‘price’] should read \${$_POST[‘price’]}. The code in the corresponding Step 3 on page 96 is correct. July 23, 2003
3: Creating Dynamic Web Sites 101 On line 46 of Script 3.11, there’s an extra “OK” at the end of the comment. February 19, 2005
3: Creating Dynamic Web Sites 104 In the first paragraph, line three should conclude with …the process is as simple as…. January 6, 2004
3: Creating Dynamic Web Sites 111 In Script 3.14 there is an extraneous double quotation mark at the end of line 10. July 23, 2003
3: Creating Dynamic Web Sites 116 Line 17 of Script 3.16 should read if ($value == $this_month) {. This also applies to Step 3. July 21, 2003
3: Creating Dynamic Web Sites 117 In Step 5, the code $end = $year + 10; and the reference to the $end variable in the while loop is not necessary. The corresponding script, which has the end year of 2010 hardcoded, is correct. February 9, 2004
4: Introduction to SQL and MySQL 121 In Table 4.2, VARCHAR should be described as a variable-length field. This error is repeated in Table C.12 on page 535. July 17, 2003
4: Introduction to SQL and MySQL 145 The Tip that begins Unlike a WHERE clause… no longer applies to the current version of MySQL. October 1, 2003
5: Advanced SQL and MySQL 160 In the third tip, it should read …for the approved column. July 20, 2003
5: Advanced SQL and MySQL 179 In the sidebar, the first ADDDATE() example is missing a D. It should read ADDDATE(date, INTERVAL 2 HOUR). June 28, 2003
5: Advanced SQL and MySQL 179 The last sentence of the sidebar should read ….you want to subtract one year…. June 29, 2003
5: Advanced SQL and MySQL 179 In the sidebar, at the end of the second paragraph, it should be YEAR_MONTH, not YEARS_MONTH. June 30, 2004
6: Using PHP and MySQL 200 Line 14 of Script 6.5 is missing the question mark which begins the closing PHP tag. It should read ?>. September 26, 2003
6: Using PHP and MySQL 208 On page 208, in the second paragraph under Step 7, It should read This query itself is similar to those demonstrated in Chapter 4. (not Chapter 3).

September 4, 2003
6: Using PHP and MySQL 213 On line 15 of Script 6.7, the word Registered is spelled incorrectly. This also applies to Step 3 on page 214. July 6, 2003
6: Using PHP and MySQL 232 In Step 8, there should be one more closing curly brace at the end of the code, which closes the main Submit conditional. The corresponding script is correct. August 27, 2004
7: Cookies and Sessions 241 In Script 7.1, line 80 should begin with </fieldset> to close the fieldset tag. The same applies to the end of Step 7 on page 242. September 3, 2003
7: Cookies and Sessions 270 In the first line of the third paragraph, it should be session.gc_maxlifetime March 22, 2006
8: Security 280 In the last paragraph in the left-hand column, $HTTP_SEVER_VARS should be $HTTP_SERVER_VARS. July 5, 2003
8: Security 303 In four places in Step 3, the regular expression pattern errantly has {2,3} instead of {2,4} as it is in the script. March 11, 2004
8: Security 303 Line 42 of Script 8.5 should refer to $_POST[‘name’] in order to be register_globals compliant. This also applies to Step 4 on page 304. March 3, 2004
9: Web Application Development 317 In step 2, the command should begin bin/safe_mysqld… (it’s missing an l). January 2, 2004
10: Extended Topics 335 Script 10.1 is missing its closing </fieldset> tag. It should appear before line 70. This also applies to Step 9 on page 336. March 20, 2004
10: Extended Topics 350 In Script 10.6, line 18 should read $ext = substr ($_GET[‘image’], -4);. The corresponding code in Step 3 is correct. October 29, 2003
10: Extended Topics 351 In Step 4, the $_GET variable is missing its curly braces. Line 25 of the corresponding script is correct. March 20, 2004
11: Example–Content Management 366 Step 3 contains the code class=”copyright”. This is not part of the actual script (and there’s no copyright class in the CSS file) and should be omitted. October 12, 2003
11: Example–Content Management 373 In Script 11.5 and in Step 5, the $_POST[‘type3’] clause has a closing parentheses in the wrong place. That line should conclude with
OR ($_POST[‘type3’] > 0 )) {
September 10, 2004
11: Example–Content Management 374 Line 78 of Script 11.5 demonstrates how to reset the submitted values, as stated in the penultimate tip on page 379. It’s not, however, included in the steps (Step 8). March 6, 2004
11: Example–Content Management 399 In Step 6 and on line 22 of Script 11.9, the first header() line should be
header(“Content-Type: $ft”);
May 1, 2005
12: Example–User Registration 426 Line 48 of Script 12.7 has an extra slash in the closing </font> tag. June 12, 2003
12: Example–User Registration 426 In Script 12.7 on line 67, there should be a closing </fieldset> tag before the form is closed. The same applies to Step 7. October 23, 2003
13: Example–E-Commerce 481 In the code under Step 4, and on line 32 of Script 13.6, the anchor tag for the print link is never closed. December 14, 2004
13: Example–E-Commerce 489 In Script 13.8, line 5 should read $pid = $_GET[‘pid’] in order to work with register_globals off. The same applies to Step 2 on page 490. December 2, 2003
13: Example–E-Commerce 496 On the fourth line in the first column, it should be …I multiply…. January 29, 2005
Ap A: Installation 503 The installation instructions for PHP on Mac OS X have changed. Marc Liyanage now provides a downloadable installer. See www.entropy.ch/software/macosx/php for instructions. October 17, 2003
Ap A: Installation 512 Some Windows users are finding that they shouldn’t use quotation marks when creating the root user password. If you have problems, try this command instead:
mysqladmin – u root password newpassword
January 6, 2004
Ap A: Installation 515 The FILE permissions are no longer assignable on a database level. Remove it from the list of permissions in Step 5. October 25, 2003
Ap C: Reference 529 In Table C.2, the third item on the first line should be the decrement operator (–). May 27, 2005