Product Overview
Build Your Own Database Driven Website Using PHP & MySQL
By Kevin Yank
Confirmed typos in the August 2001 edition:

First Edition:Aug 2001
The code examples in this book are intended for PHP configurations using the setting register_globals=on. Users of PHP 4.2 and above may need to set this manually. Please see page 20 to 21 for instructions. For more information on register_globals and security, see this article.
- Summary of Contents page
The page numbers for chapters 6 and 7 are not correct (should be 77 and 97, respectively). - p.8 paragraph 3
The latest versions of MySQL for Win32 do not come with the my-example.cnf file described in the book. Get a copy of the file here (right-click and choose "Save Target As..." in MSIE). - p.18 paragraph 5
To clarify, php.ini should only be placed in /usr/local/php/lib if --with-config-file-path was NOT specified in the ./configure command you used. If you used the ./configure command displayed on this page, you should therefore place php.ini in /usr/local/php. - p.31 paragraph 2
Second occurrence of 'pretty' doesn't belong there. - p.49 2nd code block
<?=echo($PHP_SELF)?> should be <?=$PHP_SELF?> - p.57 2nd code block
Second <head> should be </head>. - p.58-59
If your PHP configuration complains "Undefined variable: submitjoke" when you run this script, it's because your PHP error reporting level is turned up a little higher than usual. Change if ($submitjoke=="SUBMIT") to if (isset($submitjoke)) to get rid of the error by not assuming that PHP will create the variable for you if it doesn't exist. - p.66 code block
Under 'DESCRIBE Jokes' the table should list 'AuthorName'. and 'AuthorEmail' as 'varchar(255)' columns. - p.80 code block
Unmatched parenthesis following 'mysql_error()'. - p.83 3rd code block
'intput' tag should be 'input'. - p.89 2nd last line
Closing </p> should go after </textarea>. - p.94 paragraph 2
'addjoke.php' should be 'newjoke.php'. - p.98 paragraph 5
The word 'removing' doesn't belong. - p.100 5th code block
'a-zA-z' should be 'a-zA-Z'. - p.109 paragraph 1
'series' should be 'book'. - p.142 code block
</tutke> should be </title>. - p.149 last paragraph
SitePoit.com should be SitePoint.com. - p.152 paragraph 2
'is on in a member of a family of' should be 'is one of several'. - p.153 paragraph 2
'usethat' should be 'use that'. - p.156 paragraph 4
'url' should be 'URL'. - p.158 code block
All three occurrences of $f['id'] should be $f['ID']. - p.170 code block
Extra quotes on the end of "Used Parachute" line. - p.171 code block
Comment in if ($empty != "") block should be // Empty the $shoppingcart array - p.207 paragraph 2
'Error! Not a valid bookmark self-reference.' should be 'Table 3'. - p.208 last paragraph
The text following 'any of the symbols listed in' all the way to 'placeholders.' at the top of p.209 should not be there. - p.215 code block
Second occurrence of FLOAT(precision) should be DOUBLE(precision). - p.217-218
Maximum length values in parentheses should be 64KB, 16MB, and 4GB for BLOB/TEXT, MEDIUMBLOB/MEDIUMTEXT, and LONGBLOB/LONGTEXT column types, respectively.
The following errors have been corrected in the currently-available version of the code archive. If you have an older version, you may wish to obtain the updated version, or simply take note of the changes listed here:
- chapter2/joketable.sql
"Boo" should be escaped as \"Boo\" - chapter3/samplepage.php
<?=echo($PHP_SELF)?> should be
<?=$PHP_SELF?> - chapter4/jokelist.php
Second <head> should be </head>. - chapter6/authors.php
Unmatched parenthesis on line 18. - chapter6/editauthor.php
Quoting error in SQL query on line 15. - chapter6/newauthor.php
PHP_SELF should be $PHP_SELF on line 65. - chapter6/joketables.sql
'PRIMARY' should be 'PRIMARY KEY' in CREATE TABLE JokeLookup. - chapter7/joketables.sql
'PRIMARY' should be 'PRIMARY KEY' in CREATE TABLE JokeLookup. - chapter7/jokelist.php
'$id = $joke["ID"];' instead of '$id = $joke["Jokes.ID"];'. - chapter7/jokelist.php
'$joketext = $joke["LEFT(JokeText,20)"];' instead of '$joketext = $joke["JokeText"];'. - chapter10/generateindex.php
</tutke> should be </title>. - chapter11/filestore.php
All three occurrences of $f['id'] should be $f['ID'].
Confirmed typos in the March 2003 Second edition:
Second Edition:Mar 2003
None known at this time.
