qq block
add_questions.cgi, 136
catalog.cgi (shopping cart program), 400
take_test.cgi, 145
qq function, 21–22, 39
Qtext input box, add_questions.cgi, 134
$query handle, 71
$query variable, 85
$Query_statement variable, command-line phonebook program, 352
question mark (?), regular expression, 203
quiz program
Add_Question function, 135, 162
admin.html, 128
answers table, 126
Content-Type header, 131
cookie function, 143, 147
correct input box, 134
create_test.html, 128–129
DBI module, 151
execute method, 152, 156, 162
Exporter module, 151
fetch method, 154
fetchall_arrayref method, 157
fetchrow_hashref function, 140, 159
fisher_yates_shuffle subroutine, 145, 160
Get_Question function, 143–144
Get_Test_Config function, 134, 142, 148, 161
Get_Test_List function, 140, 152
header function, 131, 135, 140, 148
here document, 132, 136–138, 140–141, 144–146, 148
hidden variable, 144
index.html, 127
last function, 158
map function, 157
my variable, 131
MySQL database, 126
mysql_insertid function, 131, 163
namespace, 151
No_More_Questions subroutine, 158, 161
overview, 126–127
param function, 142, 148
prepare method, 162
program listing, 168–180
qq block, 136, 145
Qtext input box, 134
questions table, 126
qw command, 134
running, 150
Score_Test function, 148
Score_Test subroutine, 152–155
score_test.cgi program, printing link to, 161
shift function, 155–156
split statement, 153
sprintf function, 155
SQL statement execution, 159
$sth_getlist handle, 152
strict module, 130, 133, 139, 142, 147
taint switch, 130, 138–139, 141, 147
test_config table, 126
use statement, 133, 139
warnings switch, 138–139, 141, 147
Quizzer.pm
Add_Question subroutine, 162
DBI module, 151
execute method, 152, 156, 162
Exporter module, 151
fetch method, 154
fetchall_arrayref method, 157
fetchrow_hashref method, 159
fisher_yates_shuffle subroutine, 160
Get_Test_Config subroutine, 161
Get_Test_List subroutine, 152
last function, 158
map function, 157
mysql_insertid function, 163
namespace, 151
No_More_Questions subroutine, 158, 161
prepare method, 162
program listing, 176–180
running, 150
Score_Test subroutine, 152–155
score_test.cgi program, printing link to, 161
shift function, 155–156
split statement, 153
sprintf function, 155
SQL statement execution, 159
$sth_getlist handle, 152
quote function, 70, 357, 520
quote word (qw) function, 134, 210