access to data, managing, 3
action attribute, <form> tag, 106
ActiveState Perl, installation, 79, 482–486
add, data to database, 68–71
add-ons, speed, 113
add_person subroutine, command-line phonebook program, 351, 353
add_phone subroutine, command-line phonebook program, 355
Add_Question function
add_questions.cgi, 135
Quizzer.pm, 162
add_questions.cgi
Add_Question function, 135
correct input box, 134
Get_Test_Config function, 134
header function, 135
here document, 136–138
program listing, 169–171
qq block, 136
Qtext input box, 134
qw command, 134
strict module, 133
use command, 133
Add_Record subroutine, phonebook.cgi, 85, 93, 118, 123
address table, example, 4
add_table.pl, 35
add_upd_person subroutine, graphical phonebook application, 374
add_upd_phone subroutine, graphical phonebook application, 374
admin_album_end.tmpl, program listing, 471
admin_album_row.tmpl, program listing, 471
admin_album_top.tmpl, program listing, 471
admin.cgi
output, 455–456
overview, 454
program listing, 466–470
Show_A lbum subroutine, 458–459
UPDATE statement, 457
Update_Data subroutine, 457
admin_footer.tmpl, program listing, 472
admin_list_row.tmpl, program listing, 472
admin_main.tmpl, program listing, 472–474
album table, index.cgi (photo album program), 446
album_end.tmpl, program listing, 474
album_row.tmpl, program listing, 474
album_top.tmpl, program listing, 475
ALTER TABLE statement, 32, 503
ampersand (&), XML, 313, 402
anonymous subroutine declaration, graphical phonebook application, 363
Apache
apache_1.3.23.tar.gz, 492
Linux installation, 491–493
Windows installation, 32, 481, 487–491
Apache Web server
downloading, 487
embedding Perl interpreter into, 113
appendination (.=) operator, 75
@ARGV, 428
array, reference compared to dereference, 149
array slice, 450
asterisk (*)
SELECT statement, 39
shell wildcard, 120
atomic value, 5
auction application
auction table, 182
Bidding_Open subroutine, 199
bids table, 183–184, 214
bind_columns function, 188, 190, 193
CGI module, 185, 188, 196
Check_Data function, 199, 201
checking for text data, 202–203
closed_tmpl template, 199
connect method, 186, 189, 197
CREATE TABLE, 213
CURRENCY type, 203
database tables, 182–184
Date_Cmp function, 205
Date::Manip module, 205
DBI module, 185, 188, 196
disconnect function, 186
donor table, 182–183
double quote (qq) function, 211
DROP statement, 214
Drop_Down_Item_List function, 186, 208
drop-down list, 184
Drop_Down_List function, 189, 199
error key, 201
execute method, 208
Exporter module, 205
fetch function, 190
fetchrow_array function, 190, 212
filter key, 201
Get_Item_Detail function, 197, 211
Get_Item_Table function, 189–190, 213
header function, 186, 190, 198
@INC array, 185, 196
index.cgi page, 184
index.tmpl, 187
Is_Bidding_Open function, 207–208
item table, 183, 214
join function, 199
lib method, 185, 188
MAX function, 212
namespace, 204
overview, 181
page, 187, 195
Page_Header function, 186, 190, 198, 206
param function, 196
PATH environment variable, 186, 188–189, 197
PHONE type, 203
prepare method, 208
Print_Page subroutine, 187, 190, 200, 205, 207
push function, 212
quote word (qw) function, 210
required key, 201
SELECT statement, 208
shift function, 206, 211
SmallAuction module, 185, 188, 196
sprintf function, 191, 198
strict module, 185, 188, 196
Submit_Bit function, 200
subselect, 213–214
substr function, 191
taint switch, 185, 188, 195
template file, 186
TMPL file handle, 206
UnixDate function, 205
value key, 201
warnings switch, 185, 188, 195
auction database
auction table, 182
auction_id field, 182
bids table, 183–184
bidtime field, 184
donor table, 182–183
donor_id field, 183
foreign key, 183
item table, 183
item_id field, 183
min_bid field, 183
min_incr field, 183
name field, 182
primary key, 182–183
start_bidding field, 182
stop_bidding field, 182
value field, 183
auction_up.cgi
appendination operator, 232
auction_img database, 232
CGI module, 230
DBI module, 230
execute function, 233
header function, 231
INSERT INTO statement, 233
param function, 231
prepare function, 233
program listing, 241–242
quote function, 233
strict module, 230
taint switch, 230
uploadInfo function, 231
warnings switch, 230
auto_increment, 182
autoincrementing, MySQL, 354
automatic e-mail report system
axis labels, 333
bars3d object, 333
bitmap image object, 336
connect method, 324
crontab, 323
DBI module, 324, 327
die method, 324
disconnect method, 326, 329
execute method, 325
fetchrow_array method, 325, 329
finish method, 326, 329
first_used field, 322
GD::Graph module, 332–333
HTML::Template module, 327
IMG tag, 336
ip field, 322
last_used field, 322
list mode, 324
MIME::Lite module, 322, 324, 327
output, 337
overview, 321, 327
param method, 328
raw PNG data, 336
SELECT statement, 324–325, 335
selectrow_array method, 324, 328
sendmail, 322
session table, 321
strict module, 324, 327
template_2.html, 331
template_3.html, 336–337
template_2.txt, 330–331
<tmpl_loop> tag, 331
<tmpl_var> tag, 331
totalsession parameter, 329
totalusers template variable, 328
Type parameter, 330
user table, 321
user_id field, 322
valid field, 322
warnings switch, 324, 327, 332
WHERE statement, 335
available_drivers method, 513
axis labels, report_graphic.pl, 333