CGI Programming with Perl, 2nd Edition
by Scott Guelich, Shishir Gundavaram and Gunther Birznieks
The following changes were made in the 1/01 reprint.
{16} Chapter title has been changed to "The Hypertext Transfer Protocol."
"Transport" was changed to "Transfer" in first sentence.
{20} 2nd paragraph of "URL Encoding":
In the parenthetical, "for the first eight bits" now reads "for the first
seven bits."
{21} url_encode() and url_decode():
The regular expressions in these two functions were missing the VERY needed /g
modifier.
In each of the code blocks, "ei" was replaced with "egi."
[21] url_encode and url_decode code blocks:
in url_encode
$text =~ s/([^a-z0-9_.!~*'() -])/sprintf "%%%02X", ord($1)/ei;
now reads:
$text =~ s/([^a-z0-9_.!~*'\(\)-])/sprintf "%%%02X", ord($1)/egi;
{21} last paragraph:
"url_escape" and "url_unescape" were replaced with "uri_escape" and
"uri_unescape".
(54) 1.5:
"request" now reads "response."
(55) "200 OK", 3rd line:
response is included in the content.
now reads
response is included in this message.
{67} bottom half, the line:
Content-Length: 67
now reads
Content-Length: 40
(68) 2nd paragraph:
Table 4-1 shows a short list of all the available form tags.
now reads
Table 4-1 shows a short list of available form tags.
(68) table:
A new row was added after 10th row:
(68) table, 12th row:
VALUE="Message!"> now reads VALUE="value">
(69) ACTION, 2nd line:
"the HTTP request made by the CGI script" now reads "... made by the browser"
{78}