DBI and DBD Database Access Modules for Perl 5 · mSQL and mSQLPerl ... Selina Sol's CGI Script Archive · Reach for the Stars at www.stars.com.
SpecialEdition
UsingPerl
for
WebProgramming
DavidHarlan½Ķ¡G¼B´¼º~,etal.
¥Ø¿ý
²Ä¤@³¹ Perl·§z
Perl
°_·½
ɥΪº·§©À
¶O¥Î¤Î±ÂÅv
³nÅé´²¼½
Perlµ{¦¡³]p
©I¥sPerl
©R¥O¦C°Ñ¼Æ
µ{¦¡°ò¥»¬[ºc
¸ê®Æ«¬ºA
¼Æȸê®ÆScalars
°}¦CArrays
°}¦C²Õ¦XAssociativeArrays
Àɮ׳B²zFileHandles
¯S®íÅܼÆ
Àô¹ÒÅܼÆ
µ{¦¡°Ñ¼Æ
CurrentLine
¨t²Î¿ù»~°T®§
¬yµ{±±¨î
ÅÞ¿è¹Bºâ¤¸
±ø¥óªí¹F¦¡
½Æ¦Xªí¹F¦¡
°j°é
²Å¸¹
¤lµ{¦¡
Åܼƨϥνd³ò
µ{¦¡§G§½
¥¿³Wªí¥Üªk
Matching
¤lµ{¦¡
FromHere
²Ä2³¹ CGI²¤¶
¨Ï¥ÎCGIªº²z¥Ñ
¨Ï¥ÎPerlªºì¦]
¦p¦ó¨ÏPerl§@CGIªº¤u§@
¤F¸ÑCGI
±qForm©I¥sScript
±qµ{¦¡¨ú±o¸ê®Æ
¦³®Ä²vªº¨Ï¥ÎQUERY_STRING
¨Ï¥Î¥¿³Wªºªí¹F¦¡tr///
ands///
¶±¿é¥X
¦bWebServer¤W³Ð³yscript
ª½±µ©I¥sCGIScript
¨îÀɮ׸ê®Æªº¤j¤p
UsingtheLocationHeader
¦bServerºÝ¨Ï¥ÎCGI
FromHere
²Ä3³¹ ¶i¶¥ªí³æ³B²z¤Î¸ê®ÆÀx¦s
¨Ï¥ÎPOST¤èªk
GET¤ÎPOST¤ñ
¸û
¦bªí³æ
¤¤¨Ï¥ÎPOST¨Ó³B²z¸ê°T
±N§AªºPerlµ{¦¡¼Ò²Õ¤Æ
©w¸q¤Î©I¥s¤lµ{¦¡
¨Ï¥ÎÅܼƧO¦W
¨Ï¥Î¸ê®Æ®w§@¸ê®ÆÀx¦s
¦p¦ó¶}±Ò¸ê®Æ®wÀÉ®×
±N¸ê®ÆÀx¦s¨ì¸ê®Æ®w¤¤
¸ê®Æ®wªºªì©l
¦p¦ó±N¸ê®ÆÀx¦s¨ì¸ê®Æ®w¤¤
¨Ï¥Î½Æ¦Xªí³æ¥H¤Î·j´M¬ÛÃö¸ê®Æ
³B²zªí³æ¸ê®Æ¤Î±K
½XÀˬd
¤F¸Ñ¸ê®Æ®w¨t²Îªº¨î
FromHere
²Ä4³¹ ¶i¶¥¶±¿é¥X§Þ¥©
¸ê®Æ®wÀɮרt²Î¤Î¶±¿é¥X»¡©ú
¼Ð·Çµe±¿é¥X
¨Ï¥ÎªÌ¦Ûq¶±¿é¥X
±N³B²z¹Lªº¸ê®Æ¶Ç¦^
ªí³æ
¶ñº¡¤å¦rÄæ¦ì¤Î¦C¥ÜÄæ
½s¿è©MÀx¦s¨Ï¥ÎªÌ¦Ûqµe±
FromHere
²Ä5³¹ ·j´M
·j´Mºô¯¸¤¤ªº¯S©w¤å¦r
¨Ï¥Î»¼°j¤lµ{
¦¡·j´M¯S©w¥Ø¿ý
¨Ï¥Î¤lµ{¦¡
¦b¥Ø¿ý¤¤³B²zÀÉ®×
¨Ï¥Î¯Á¤Þ·j´M
±Nºô¯¸¸ê®Æ¦b¸ê®Æ®w¤¤§@¯Á¤Þ
¨Ï¥Î¯Á¤ÞÀɨӧ@·j´M
·j´Mµ²ªG¿é¥X
¤£¨Ï¥Î¯Á¤Þ§@·j´Mªº¶±¿é¥X
¨Ï¥Î¯Á¤Þ§@·j´Mªº¶±¿é¥X
FromHere
²Ä6³¹ °ÊºA¶±
²£¥ÍHTML¶±
¤F¸ÑCGIÀô¹Ò
¤Î²£¥ÍHTMLÀÉ
CGIÀô¹ÒÅܼÆ
¡Ð¨Ï¥ÎGET
CGIÀô¹ÒÅܼÆ
¡Ð¨Ï¥ÎPOST
±N¨Ï¥ÎªÌ¾É¤Þ¨ì«ü©w
ªºµe±
¥ÎPerl¹F¨ì«È¤áºÝ±À¼½§Þ³N
¨Ï¥ÎPerl¹F¨ìserverºÝ±À¼½§Þ³N
FromHere
²Ä7³¹ °ÊºA¤Î¤¬°Ê¦¡ªºHTML¤º®e
«Ø¥ß¨Ï¥ÎªÌ©w¸qªºµe±
AllowingtheUsertoShopforOptions
BuildinganHTMLDocumentBased
onOptions
UsingServer-SideIncludes
UnderstandingtheSSICommands
SettingupanEnvironment
forServer-SideIncludes
UnderstandingtheCommands
UnderstandingShoppingCarts
ShoppingCartUsingHiddenFields
ShoppingCartUsingHTTPCookies
FromHere
²Ä8³¹ ¨Ï¥ÎªÌªº»{ÃÒ
°ò¥»¨Ï¥ÎªÌ»{ÃÒ
³B²z¨Ï¥ÎªÌªºID
CGIµ{¦¡°õ¦æ
¸ê®Æ³B²z±±¨î
¨Ï¥ÎªÌ»{ÃÒ
ApacheServer¤Wªº¨Ï¥ÎªÌ»{ÃÒ
°õ¦æ¨î
ApacheÀɮײպA
¥Ø¿ý²ÕºA
¨Ï¥ÎªÌºÞ²z
·s¼W¨Ï¥ÎªÌ
§R°£¨Ï¥ÎªÌ
§ó§ï±K½X
±N¨Ï¥ÎªÌ¥[¨ì¸s²Õ¤¤
±q¸s²Õ¤¤§R°£¨Ï¥ÎªÌ
FromHere
²Ä9³¹ ¤F¸ÑCGI¦w¥þ©Ê
¤F¸Ñ¦w¥þ»Ý¨D
©R¥O°lÂÜ
Ū¨úÀÉ®×
¼g¤JÀÉ®×
ÅܼƱƧÇ
¸ê®Æ¿ò¥¢
ManagingSessions
TheNatureofaSession
TheWrapper
GenericSubstitutions
¬yµ{±±¨î
À³¥Î½d¨Ò³]p
µ{¦¡¬yµ{
DataIssues
«Ø¸mÀ³¥Î½d¨Ò
²Ä¤@¨B¡F¥Dµ{§Ç
¨ú±oCGIÈ
Ū¨ú²£¥Íªº¸ê®Æ
³ê°_¯S©w¨ç¼Æ
¤ÀªRHTMLÀÉ®×
±µ¨üµn¤J
µn¤Jµn¥X
µn¤J
¨Ï¥ÎªÌ»{ÃÒ
µn¥X
ManagingSessionData
StoringSessionData
RetrievingSessionData
ManagingtheOrders
BuildinganOrder
ReviewingtheOrder
PlacingtheOrder
WrappingUp
FromHere
²Ä10³¹ ºô¯¸ºÞ²z
WorkingwithWebServerLogFiles
GeneratingHTMLOutputfromaLog
File
ReviewingtheAccessWatchLog
Analyzer
UnderstandingFileMaintenance
UnderstandingRobots
andtheRobot-ExclusionStandard
ConfiguringSomeCommonWebServers
O'Reilly'sWebSite
NCSAhttpd
Apache
ExaminingSome
OtherFile-andSite-AdministrationIssues
FromHere
Chapter11 DatabaseInteraction
JustifyingPerl/Database
Interaction
ExaminingtheDatabaseOptions
DBIandDBDDatabaseAccess
ModulesforPerl5
mSQLandmSQLPerl
OracleRDBMSandOraperl
StartingaNewMessageThread
ListingThreads
andDisplayingtheContentsofaSingleThread
NavigatingThrough
MessagesandPostingReplies
FromHere
Chapter12 DatabaseApplicationUsingCGI
FundamentalDesignandSecurity
Issues
Advantagesand
DisadvantagesofaWeb/RDBMSInterface
LimitationsofHTTPinaDatabase
Context
SecurityIssues
ASimpleWorkingExampleinPerl
AccessingaDBMSfromPerl
DefiningtheDatabase
SchemafortheWorkingExample
SearchingtheHotlist
ViewingtheDetailRecord
SubmittingDatatotheHotlist
GeneratingSQLCodeto
TransferSubmittedData
PerlToolsforWeb/DBMSWork
WDB
Web/Genera
MiniSQL(mSQL)andW3-mSQL
DBI
ODBCTools
SomeUsefulHotlists
Problem-Solving
Debugging
TuningPerformance
TheFutureofWeb/Database
Interfaces
FromHere...
Chapter13 SpecialVariables
$>
$[
$ACCUMULATOR
$ARG
$ARGV
$BASETIME
$CHILD_ERROR
$DEBUGGING
$EFFECTIVE_GROUP_ID
$EFFECTIVE_USER_ID
$EVAL_ERROR
$EXECUTABLE_NAME
$FORMAT_FORMFEED
$FORMAT_LINES_LEFT
$FORMAT_LINES_PER_PAGE
$FORMAT_LINE_BREAK_CHARACTERS
$FORMAT_NAME
$FORMAT_PAGE_NUMBER
$FORMAT_TOP_NAME
$INPLACE_EDIT
$INPUT_LINE_NUMBER
$INPUT_RECORD_SEPARATOR
$LAST_PAREN_MATCH
$LIST_SEPARATOR
$MATCH
$MULTILINE_MATCHING
$OFMT
$OS_ERROR
$OUTPUT_AUTOFLUSH
$OUTPUT_FIELD_SEPARATOR
$OUTPUT_RECORD_SEPARATOR
$PERLDB
$PERL_VERSION
$POSTMATCH
$PREMATCH
$PROCESS_ID
$PROGRAM_NAME
$REAL_GROUP_ID
$REAL_USER_ID
$SUBSCRIPT_SEPARATOR
$SYSTEM_FD_MAX
$WARNING
%ENV,
%INC,
%SIG,
@ARGV
@INC
FromHere...
Chapter14 Operators
!
!=
!~
%
%=
&
&&
&&=
&=
*
**
**=
*=
+(Unary)
+(Binary)
++
+=
,
-(Unary)
-(Binary)
--
-=
->
.
..
.=
/
/=
<
<<
<<=
<=
<=>
=
==
=>
=~
>
>=
>>
>>=
?
LISTOperators(Leftward)
LISTOperators(Rightward)
NAMEDUnaryOperators
TERMs
"
^
^=
and
cmp
eq
ge
gt
le
lt
ne
not
or
x
x=
xor
|
|=
||
||=
~
FromHere...
Chapter15 FunctionList
-A
Compliance
Syntax
Definition
Example
-B
Compliance
Syntax
Definition
Example
-b
Compliance
Syntax
Definition
Example
-C
Compliance
Syntax
Definition
Example
-c
Compliance
Syntax
Definition
Example
-d
Compliance
Syntax
Definition
Example
-e
Compliance
Syntax
Definition
Example
-f
Compliance
Syntax
Definition
Example
-g
Compliance
Syntax
Definition
Example
-k
Compliance
Syntax
Definition
Example
-l
Compliance
Syntax
Definition
Example
-M
Compliance
Syntax
Definition
Example
-O
Compliance
Syntax
Definition
Example
-o
Compliance
Syntax
Definition
Example
-p
Compliance
Syntax
Definition
Example
-R
Compliance
Syntax
Definition
Example
-r
Compliance
Syntax
Definition
Example
-S
Compliance
Syntax
Definition
Example
-s
Compliance
Syntax
Definition
Example
-T
Compliance
Syntax
Definition
Example
-t
Compliance
Syntax
Definition
Example
-u
Compliance
Syntax
Definition
Example
-W
Compliance
Syntax
Definition
Example
-w
Compliance
Syntax
Definition
Example
-X
Compliance
Syntax
Definition
Example
-x
Compliance
Syntax
Definition
Example
-z
Compliance
Syntax
Definition
Example
abs
Compliance
Syntax
Definition
Example
accept
Compliance
Syntax
Definition
alarm
Compliance
Syntax
Definition
Example
atan2
Compliance
Syntax
Definition
Example
bind
Compliance
Syntax
Definition
binmode
Compliance
Syntax
Definition
Example
bless
Compliance
Syntax
Definition
Example
caller
Compliance
Syntax
Definition
Example
chdir
Compliance
Syntax
Definition
Example
chmod
Compliance
Syntax
Definition
Example
chomp
Compliance
Syntax
Definition
Example
chop
Compliance
Syntax
Definition
Example
chown
Compliance
Syntax
Definition
Example
chr
Compliance
Syntax
Definition
Example
chroot
Compliance
Syntax
Definition
Example
close
Compliance
Syntax
Definition
Example
closedir
Compliance
Syntax
Definition
Example
connect
Compliance
Syntax
Definition
continue
Compliance
Syntax
Definition
Example
cos
Compliance
Syntax
Definition
Example
crypt
Compliance
Syntax
Definition
Example
dbmclose
Compliance
Syntax
Definition
dbmopen
Compliance
Syntax
Definition
defined
Compliance
Syntax
Definition
Example
delete
Compliance
Syntax
Definition
Example
die
Compliance
Syntax
Definition
Example
do
Compliance
Syntax
Definition
Example
dump
Compliance
Syntax
Definition
each
Compliance
Syntax
Definition
Example
endgrent
Compliance
Syntax
Definition
Example
endhostent
Compliance
Syntax
Definition
Example
endnetent
Compliance
Syntax
Definition
Example
endprotoent
Compliance
Syntax
Definition
Example
endpwent
Compliance
Syntax
Definition
Example
endservent
Compliance
Syntax
Definition
Example
eof
Compliance
Syntax
Definition
Example
eval
Compliance
Syntax
Definition
Example
exec
Compliance
Syntax
Definition
Example
exists
Compliance
Syntax
Definition
Example
exit
Compliance
Syntax
Definition
Example
exp
Compliance
Syntax
Definition
Example
fcntl
Compliance
Syntax
Definition
fileno
Compliance
Syntax
Definition
Example
flock
Compliance
Syntax
Definition
fork
Compliance
Syntax
Definition
Example
format
Compliance
Syntax
Definition
Example
formline
Compliance
Syntax
Definition
Example
getc
Compliance
Syntax
Definition
Example
getgrent
Compliance
Syntax
Definition
Example
getgrgid
Compliance
Syntax
Definition
Example
getgrname
Compliance
Syntax
Definition
Example
gethostbyaddr
Compliance
Syntax
Definition
Example(Perl5only)
gethostbyname
Compliance
Syntax
Definition
Example
gethostent
Compliance
Syntax
Definition
Example
getlogin
Compliance
Syntax
Definition
Example
getnetbyaddr
Compliance
Syntax
Definition
Example
getnetbyname
Compliance
Syntax
Definition
Example
getnetent
Compliance
Syntax
Definition
Example
getpeername
Compliance
Syntax
Definition
getpgrp
Compliance
Syntax
Definition
Example
getppid
Compliance
Syntax
Definition
Example
getpriority
Compliance
Syntax
Definition
Example
getprotobyname
Compliance
Syntax
Definition
Example
getprotobynumber
Compliance
Syntax
Definition
Example
getprotoent
Compliance
Syntax
Definition
Example
getpwent
Compliance
Syntax
Definition
Example
getpwnam
Compliance
Syntax
Definition
Example
getpwuid
Compliance
Syntax
Definition
Example
getservbyname
Compliance
Syntax
Definition
Example
getservbyport
Compliance
Syntax
Definition
Example
getservent
Compliance
Syntax
Definition
Example
getsockname
Compliance
Syntax
Definition
getsockopt
Compliance
Syntax
Definition
glob
Compliance
Syntax
Definition
Example
gmtime
Compliance
Syntax
Definition
Example
goto
Compliance
Syntax
Definition
Example
grep
Compliance
Syntax
Definition
Example
hex
Compliance
Syntax
Definition
Example
import
Compliance
Syntax
Definition
index
Compliance
Syntax
Definition
Example
int
Compliance
Syntax
Definition
Example
ioctl
Compliance
Syntax
Definition
join
Compliance
Syntax
Definition
Example
keys
Compliance
Syntax
Definition
Example
kill
Compliance
Syntax
Definition
last
Compliance
Syntax
Definition
Example
lc
Compliance
Syntax
Definition
Example
lcfirst
Compliance
Syntax
Definition
Example
length
Compliance
Syntax
Definition
Example
link
Compliance
Syntax
Definition
Example
listen
Compliance
Syntax
Definition
local
Compliance
Syntax
Definition
localtime
Compliance
Syntax
Definition
Example
log
Compliance
Syntax
Definition
Example
lstat
Compliance
Syntax
Definition
Example
m//
Compliance
Syntax
Definition
Example
map
Compliance
Syntax
Definition
Example
mkdir
Compliance
Syntax
Definition
Example
msgctl
Compliance
Syntax
Definition
msgget
Compliance
Syntax
Definition
msgrcv
Compliance
Syntax
Definition
msgsnd
Compliance
Syntax
Definition
my
Compliance
Syntax
Definition
next
Compliance
Syntax
Definition
Example
no
Compliance
Syntax
Definition
Example
oct
Compliance
Syntax
Definition
Example
open
Compliance
Syntax
Definition
Example
opendir
Compliance
Syntax
Definition
Example
ord
Compliance
Syntax
Definition
Example
pack
Compliance
Syntax
Definition
Example
package
Compliance
Syntax
Definition
pipe
Compliance
Syntax
Definition
pop
Compliance
Syntax
Definition
Example
pos
Compliance
Syntax
Definition
Example
print
Compliance
Syntax
Definition
Example
printf
Compliance
Syntax
Definition
Example
push
Compliance
Syntax
Definition
Example
q/STRING/
Compliance
Syntax
Definition
Example
qq/STRING/
Compliance
Syntax
Definition
Example
quotemeta
Compliance
Syntax
Definition
Example
qw/STRING/
Compliance
Syntax
Definition
Example
qx/STRING/
Compliance
Syntax
Definition
Example
rand
Compliance
Syntax
Definition
Example
read
Compliance
Syntax
Definition
Example
readdir
Compliance
Syntax
Definition
Example
readlink
Compliance
Syntax
Definition
recv
Compliance
Syntax
Definition
redo
Compliance
Syntax
Definition
ref
Compliance
Syntax
Definition
Example
rename
Compliance
Syntax
Definition
Example
require
Compliance
Syntax
Definition
Example
reset
Compliance
Syntax
Definition
return
Compliance
Syntax
Definition
Example
reverse
Compliance
Syntax
Definition
Example
rewinddir
Compliance
Syntax
Definition
Example
rindex
Compliance
Syntax
Definition
Example
rmdir
Compliance
Syntax
Definition
s///
Compliance
Syntax
Definition
Example
¼Æȸê®Æscalar
Compliance
Syntax
Definition
seek
Compliance
Syntax
Definition
seekdir
Compliance
Syntax
Definition
select
Compliance
Syntax
Definition
Example
semctl
Compliance
Syntax
Definition
semget
Compliance
Syntax
Definition
semop
Compliance
Syntax
Definition
send
Compliance
Syntax
Definition
setgrent
Compliance
Syntax
Definition
Example
sethostent
Compliance
Syntax
Definition
Example
setnetent
Compliance
Syntax
Definition
Example
setpgrp
Compliance
Syntax
Definition
setpriority
Compliance
Syntax
Definition
Example
setprotoent
Compliance
Syntax
Definition
Example
setpwent
Compliance
Syntax
Definition
Example
setservent
Compliance
Syntax
Definition
Example
setsockopt
Compliance
Syntax
Definition
shift
Compliance
Syntax
Definition
Example
shmctl
Compliance
Syntax
Definition
shmget
Compliance
Syntax
Definition
shmread
Compliance
Syntax
Definition
shmwrite
Compliance
Syntax
Definition
shutdown
Compliance
Syntax
Definition
sin
Compliance
Syntax
Definition
Example
sleep
Compliance
Syntax
Definition
Example
socket
Compliance
Syntax
Definition
socketpair
Compliance
Syntax
Definition
sort
Compliance
Syntax
Definition
Example
splice
Compliance
Syntax
Definition
Example
split
Compliance
Syntax
Definition
Examples
sprintf
Compliance
Syntax
Definition
Example
sqrt
Compliance
Syntax
Definition
Example
srand
Compliance
Syntax
Definition
Example
stat
Compliance
Syntax
Definition
Example
study
Compliance
Syntax
Definition
sub
Compliance
Syntax
Definition
substr
Compliance
Syntax
Definition
Example
symlink
Compliance
Syntax
Definition
Example
syscall
Compliance
Syntax
Definition
Example
sysopen
Compliance
Syntax
Definition
sysread
Compliance
Syntax
Definition
system
Compliance
Syntax
Definition
Example
syswrite
Compliance
Syntax
Definition
tell
Compliance
Syntax
Definition
Example
telldir
Compliance
Syntax
Definition
Example
tie
Compliance
Syntax
Definition
Example
tied
Compliance
Syntax
Definition
time
Compliance
Syntax
Definition
times
Compliance
Syntax
Definition
Example
tr///
Compliance
Syntax
Definition
Examples
truncate
Compliance
Syntax
Definition
uc
Compliance
Syntax
Definition
Example
ucfirst
Compliance
Syntax
Definition
Example
umask
Compliance
Syntax
Definition
Example
undef
Compliance
Syntax
Definition
unlink
Compliance
Syntax
Definition
Example
unpack
Compliance
Syntax
Definition
unshift
Compliance
Syntax
Definition
Example
untie
Compliance
Syntax
Definition
use
Compliance
Syntax
Definition
Example
utime
Compliance
Syntax
Definition
Example
values
Compliance
Syntax
Definition
Example
vec
Compliance
Syntax
Definition
Example
wait
Compliance
Syntax
Definition
waitpid
Compliance
Syntax
Definition
wantarray
Compliance
Syntax
Definition
Example
warn
Compliance
Syntax
Definition
write
Compliance
Syntax
Definition
y///
Compliance
Syntax
Definition
Chapter16 SubroutineDefinition
Subroutines
TheSimplestFormofSubroutine
HowtoReturnValuesfrom
Subroutines
HowtoPassValuestoSubroutines
SubroutineRecursion
SubroutinePrototypes
IssuesofScopewithmy()andlocal()
PerlLibraries
CreationofLibraries
InvocationofLibraries
StandardPerl4.0Library
Modules(Perl5.0)
StandardModuleList
HowtoCreateaSimpleModule
ModuleUseandInvocation
FromHere
AppendixA Perl¨ú±o¤Î¦w¸Ë
HistoryandVersionInformation
PerlVersion5.0
AvailabilitybyOS
UNIX
Amiga
AOS
Atari
LynxOS
MS-DOS
MVS
NetWare
Windows95andWindowsNT
OS/2
QNX
VMS
Xenix
Linux
Installation
UNIXInstallation
Windows95andWindowsNT
MacPerl
OS/2
Linux
OtherOSes
AppendixB PerlWebReference
Perl,Web,andCGI-RelatedUsenets
Web-RelatedPerlandCGISites
Yahoo
Thecgi-lib.plHomePage
cgi.pm
TheCGICollection
HFPMHomePage
SelinaSol'sCGIScriptArchive
ReachfortheStarsatwww.stars.com
CGIScriptstoGo
PureAmiga
MacPerl
PerlforWin32
AnInstantaneous
IntroductiontoCGIScriptsandHTMLForms
CGIDocumentationbyNCSA
Server-SideIncludes
SitesContainingGeneralPerl
Information
BasicPerlDocumentation
CPANSites
DBI
Thegd.pmGraphicsLibrary
sgmls.pm
AppendixC What'sOntheCD?
UsingtheElectronicBook
ReadingtheElectronicBook
asanHTMLDocument
InstallingtheInternetExplorer
Readingthe
ElectronicBookasaWindowsHelpFileDocument
FindingSampleCode
Credits
SpecialEditionUsingPerlforWeb
Programming
Copyright©1996byQue®Corporation.
Allrightsreserved.PrintedintheUnitedStatesofAmerica.Nopartofthisbookmay
beusedorreproducedinanyformorbyanymeans,orstoredinadatabaseorretrieval
system,withoutpriorwrittenpermissionofthepublisherexceptinthecaseofbrief
quotationsembodiedincriticalarticlesandreviews.Makingcopiesofanypartofthis
bookforanypurposeotherthanyourownpersonaluseisaviolationofUnitedStates
copyrightlaws.Forinformation,addressQueCorporation,201W.103rdStreet,
Indianapolis,IN,46290.YoumayreachQue'sdirectsaleslinebycalling1-800-428-5331.
ISBN:0-7897-0659-8
HTMLconversionby:
M/s.LeafWriters(India)Pvt.Ltd.
Website:http://leaf.stpn.soft.net
e-mail:[email protected]
President
RolandElgey
Publisher
JosephB.Wikert
PublishingManager
FredSlone
SeniorTitleManager
BryanGambrel
EditorialServicesDirector
ElizabethKeaffaber
ManagingEditor
SandyDoell
StrategicMarketingManager
BarryPruett
AcquisitionsEditor
AlValvano
ProductMarketingManager
KimMargolius
AssistantProductMarketingManager
ChristyM.Miller
TechnicalEditors
AldenHutchinson
JimJagelski
SeanChisham
TechnicalSupportSpecialist
NadeemMuhammed
AcquisitionsCoordinator
CarmenL.Krikorian
SoftwareRelationsCoordinator
PattyBrooks
EditorialAssistant
AndreaDuvall
BookDesigner
RuthHarvey
CoverDesigner
DanArmstrong
ProductionTeam
StephenAdams,DebraBolhuis,JasonCarr,ErinM.
Danielson,DanielHarris,JasonHand,DarylKessler,CaseyPrice,KayleneRiemen,Bobbi
Satterfield
Indexer
TimTate
AbouttheAuthors
DavidHarlan'sdegreeinAmericanHistoryandfiveyearsofexperienceina
securitydepartmentatasmalluniversitymaymakehimseemtobeanunlikelyauthorfora
high-endprogrammingbook.Butcomputershavealwaysbeenakeypartofhisday-to-day
activities.Helearnedprogramming(andwasjustshortofacomputersciencedegree)at
theUniversityofPugetSound.Aftergraduation,hestayedonatPugetSoundasassistant
directorofsecurityforfiveyearsbeforejoiningCanyonOnlineMediainSeattle,where
hehelpeddevelopthecompany'scommercialWebsite.Currently,heisamemberoftheWeb
developmentteamatWhiteHorseStudiosinPortland,Oregon.
MichealOFoghluisnowalecturerinappliedcomputingandinformationsystemsat
WaterfordRegionalTechnicalCollege,Ireland(http://www.rtc-waterford.ie).
UntilSeptember1996,heworkedinthecomputerservicesdepartmentofUniversityCollege,
Galway,Ireland(http://www.ucg.ie).Hisinterestsinclude
NaturalLanguageProcessing,WWWprogramminganddevelopment,Linux,computingusingthe
Irishlanguage,andZ39.50.Whennotslavingoverahotcomputer,heissometimesseen
nursingaquietpintwhilelisteningtoloudIrishmusicand/ormeanderingthroughthe
hillsinnoparticulardirection.Hecanbecontactedatthee-mailaddressofoghlu@indigo.ie.
PaulDoylehasseveralyearsofexperienceintheplanning,implementation,and
managementofnetworksinmultiprotocol,multivendorenvironments.Hisspecialistareas
includeclientconfigurationandservermanagement.
ShelleyPowersisanincorporatedindependentcontractorwhohasherowncompany,YASD.
SheworksinandoutofPortland,Oregon,andhasworkedwithsomeoftheleading
companiesintheNorthwest.ShelleyhasworkedwithUNIX-andWindows-basedclient/server
applicationsforseveralyears;nowsheisworkingwithWebapplicationanddevelopment
forbothenvironments.ShehaswrittenbooksonPowerBuilder5.0andonJavaScript.YASD's
Websiteisathttp://www.yasd.com.
MatthewD.Healyperformsavarietyoftasks,rangingfromUNIXsystemadministration
anddatabaseadministrationtobuildingWWWfrontendsontopofSybase,Msql,and
IllustrarelationaldatabasesattheYaleCenterforMedicalInformatics.Hecontributed
toSpecialEditionUsingCGI,alsopublishedbyQueCorporation.Beforejoining
YCMI,hewasanengineer,agraduatestudent,ateachingassistant,andaLAN
administrator-andalwaysarabidSFfan.Alongtheway,heearnedaBSinengineeringfrom
PurdueandaPhDinzoologyfromDuke.He'[email protected],andhishomepage(http://ycmi.med.yale.edu/~healy)always
welcomesvisitors.Scientificandtechnicalproseconstitutessomethingofafamilyaffair
forhim-hiswifeeditsmedicaljournals,andhisbrotherisatechnicalwriterforalarge
softwarecompany.
We'dLiketoHearfromYou!
Aspartofourcontinuingefforttoproducebooksofthehighestpossiblequality,Que
wouldliketohearyourcomments.Tostaycompetitive,wereallywantyou,asa
computerbookreaderanduser,toletusknowwhatyoulikeordislikemostaboutthis
bookorotherQueproducts.
Youcanmailcomments,ideas,orsuggestionsforimprovingfutureeditionstothe
addressbelow,orsendusafaxat(317)581-4663.Fortheonline-inclined,Macmillan
ComputerPublishinghasaforumonCompuServe(typeGOQUEBOOKSatanyprompt),
throughwhichourstaffandauthorsareavailableforquestionsandcomments.Theaddress
ofourInternetsiteishttp://www.mcp.com(WorldWideWeb).
Inadditiontoexploringourforum,pleasefeelfreetocontactmepersonallyto
discussyouropinionsofthisbook:I'm74671,3710onCompuServe,andI'[email protected].
Thanksinadvance-yourcommentswillhelpuscontinuetopublishthebestbooks
availableoncomputertopicsintoday'smarket.
AlValvano
AcquisitionsEditor
QueCorporation
201W.103rdStreet
Indianapolis,Indiana46290
USA
NOTE
Althoughwecannotprovidegeneraltechnicalsupport,we'rehappytohelpyouresolve
problemsyouencounterrelatedtoourbooks,disks,orotherproducts.Ifyouneedsuch
assistance,pleasecontactourTechSupportdepartmentat800-545-5914,ext.3833.
ToorderotherQueorMacmillanComputerPublishingbooksorproducts,pleasecallour
CustomerServicedepartmentat800-835-3202ext.666