naming conventions, 41–43 numRow(), 79
parse(), 11 populateCategory(), 378, 380–381, 386–387
populateResource(), 387 populateSubCategory(), 378,
381, 387 prepareLocalList(), 517 processForm(), 670 processRequest(), 457–458,
459, 683 pushMappedFields(), 517 quote(), 50
readKeywordCacheFile(), 414 redirectTest(), 545
_removeExcludedWords(), 414 reorderDriver(), 269
Reportclass, 522–523 reportDriver(), 231, 236 reporter application, 459–461, 681–682 resetPassword(), 197–198
resetPasswordDriver(), 197 resource manager application, 379–385 resource tracking application, 385–386 Response(), 259
Responseclass, 258–260 run() Seerun()method saveSurvey(), 486 search(), 408–409 search manager application, 386–391 searchContact(), 303
searchResource(), 366–367, 384 sendEmail(), 197
sendMail(), 672 session_destroy(), 143 session_unset(), 143 setAccessObjectID(), 445 set_block(), 10
setCampaignID(), 521 setCatID(), 252, 298 setCurrentIP(), 445 setDocID(), 256 setEcampaignCampaignID(), 522
setEcampaignListID(), 516 setEcampaignMessageID(), 520 setFormID(), 436, 672–673 setMessageID(), 208, 442 setPollID(), 699, 704 setResponseID(), 259 SETRETURNVALUE(), 481, 483 SETSTATUS(), 480
SETSURVEYEXECID(), 484 SETSURVEYFORMID(), 483 SETSURVEYID(), 479 SETSURVEYLISTID(), 481 setupForm(), 670 setUserType(), 278, 314 set_var(), 11, 58–59 showAddMenu(), 381–382 showContents(), 316, 349, 352 showDetail(), 318
showEcampaignReport(), 548 showHelp(), 421
showMail(), 318 showMenu(), 378–379, 387–388 showModifyMenu(), 382–383 showMostVisitedResource(), 390 showMsgPreview(), 538
showPage(), 680 showReport(), 681–682 showResponse(), 281 showScreen(), 198 showStatusMessage(), 277, 282 showSurveyReport(), 492–493 showTopRankingResource(), 390 showWithTheme(), 379, 390–391 sortAndDisplay(), 389 sortByResourceAddedBy(), 391 sortByResourceRating(), 391 sortByResourceTitle(), 391 sortByResourceVisitor(), 391 storeCategory(), 272–273 storeDoc(), 271
storeMail(), 318 storeTrack(), 522 storeUnsub(), 522
continued
Trang 2methods continued
submission manager application, 679–681
submitData(), 671 submitResponse(), 282 subscriber application, 458–459 SURVEY(), 479
Survey class, 479–480 survey execution manager application, 490–491
survey form manager application, 488–489
survey list manager application, 486–488
survey manager application, 485–486 survey response manager, 491–492 SURVEYFORM(), 482
SurveyFormclass, 482–483 SURVEYLIST(), 481 SurveyList, 480–482 SURVEYREPORT(), 484 SurveyReportclass, 484 SURVEYRESPONSE(), 483 SurveyResponseclass, 483–484 takeFormLabels(), 489 takeMap(), 531 toggleDescField(), 493, 549 trackResourceVisit(), 367 unhtmlentities(), 229 Unsubscription Trackclass, 522 unsubscription tracking application, 545–547
unsubUser(), 547 updateCampaign(), 541 updateCategory(), 274 updateCategoryOrders(), 253 updateDoc(), 273
updateDownloadTrack(), 674 UpdateEcampaignMessage(), 520 UpdateEcampaignMessageHdr(), 520 updateMessage(), 537
updateMsgTrack(), 223
updateOrders(), 272 updateRecentSearchList(), 410–411
updateUser(), 190, 198 uploadFile(), 672 URLclass, 518–519 URL manager application, 532–534 URL Trackclass, 521–522 URL tracking/redirection application, 544–545
User(), 158 user administration application, 168–170
Userclass, 159–160 user interface application, 528 user password application, 190–191 user tip application, 237
validate_any_string(), 669 validateData(), 671
validate_email(), 669 validate_file_size(), 669 validate_name(), 668 validate_number(), 668 validate_number_range(), 668 validate_org_name(), 668 validate_size(), 667 validate_string_size(), 668 validate_url(), 669
Vote(), 699 vote application, 703–705 Voteclass, 699–701 writeKeywordCacheFile(), 414 writeSearchHistory(), 414 MinSpareThreadsdirective, 794 mkdircommand, 826
modEcampaignList()method, 517 modifyCampaign()method, 521, 540 modifyCategory()method
Categoryclass, 253, 300 category manager application, 376 contact category manager application, 315–316
Trang 3document publisher application, 271 IrmCategoryclass, 364
modifyContact()method, 304, 320 modifyDatabaseFieldMap()method, 531
modifyDoc()method, 257, 270 modifyDriver()method category manager application, 375 document publisher application, 370 list manager application, 530 message manager application, 536–537 resource manager application, 380 user administration application, 169 modifyEvent()method, 341, 351–352 modifyForm()method, 438
modifyList()method, 530–531 modifyMapList()method, 518 modifyMessage()method, 211, 227–228, 444
modifyResource()method, 367, 383 modifyURL()method, 534
modifyURLDriver()method, 533 modifyUser()method, 169 modURL()method, 519 monitors
CPU load, 595–605 hard disk usage, 587–595 MOTD manager application, intranet system, 225–229
multidimensional arrays
$ERRORS, 116
$MESSAGES, 116 multidimensional associative arrays, error messages, 20–21
multiprocessing modules, Apache 2.0, 783–784
mvcommand, 826 mycustomers.csvscript, 500 myform.phpscript, 37 myFunction()method, 44 mysite.phpscript, 38
MySQL access rights, 764 advantages, 763
CD, 754 central authentication database, 146–147
command-line use, 764 databases, 764–770 inserting data into databases, 767–768 installation/configuration, 808–810 intranet database, 204–206 one-sweep multijoin, 763, 809 program interface support, 808 relational database, 4, 21, 69–70 RPM package installation, 809 server access, 809–810 tables, 765–767 users creating, 148 MySQL database, manage with phpMyAdmin, 771–780
N
NAMED_CONFconstant, 642 named.master_zone.confscript, 646 navigation, online help system element, 403
non_cached.phpscript, 730–731 numRow()method, 79
O
object-oriented code base, PHP applications, 3–4, 5 Object-Oriented Programming (OOP) PHP, basics, 757–762
objects PHPApplication, 116
$result, 51 sampleApp, 116 Template, 58–59
$thisApp, 116–117 one-sweep multijoin, MySQL, 763, 809
Trang 4one-to-many relationships, relational databases, 249
one-way hash passwords, forgotten-password recovery app, 194 online help system
application configuration files, 415–417
classes, 404–415 error messages, 417 help application, 420–423 help indexing application, 418–420 help.conffile, 415–417
help.errorsfile, 417 help.messagesfile, 417 HTML templates, 417–418 installation, 423–424 keyword index display, 427 keyword search, 404 messages, 417 navigation ease, 403 search output display, 425 search results display, 426–427 section page display, 425 security issues, 427–428 structured contents, 403 table of contents page, 403 table of contents page display, 424 template-based interface, 404 testing, 424–427
OOP (Object-Oriented Programming) PHP, basics, 757–762
opcode, PHP application caching, 734–736 Optionsdirective, 797–798
Oracle, relational database, 69–70 output
buffering, 723–725 compression, 725–726 output pages, printing, 11 output template files, directory path, 8–9 output_bufferingdirective, 819
P
$paramsassociative array, 46–47
$paramsvariable, 49 parse()method, 11 passwdcommand, 28–29 passwords
authentication access control method, 24
central user management system, 158 e-mailing reset requests, 168
encrypting, 169 implementing, 190–194 login application authentication, 132–133
MD5 message digest login, 740–743 modifying, 168, 190–193
one-way hash, 194 recovery process, 194–195 resetting, 168, 197–198 PEAR, CD, 754
PEAR cache, PHP applications, 729–734 pear_content_cache.phpscript, 731–732
pear_func_cache.phpscript, 733 permissions, Apache virtual host, 609 persistent logins, Web server farms, 149–155
personalization tag fields, e-campaign system, 510
PHP basic information, 757–762
CD, 754 PHP Accelerator (PHPA), opcode cache, 735–736
PHP Application Framework (PHPAF) layer, intranets, 68–69 PHP interpreter, CGI-mode solutions, 811 PHP module, Apache 2.0, 811–812 php_admin_flagdirective, 813 php_admin_valuedirective, 813 PHPApplicationobject, 116
Trang 5php_flagdirective, 814 php.inifile
Apache 2.0 configuration, 813 PHP directives, 814–821 PHPLIB, CD, 754
PHPLIB library, directory path, 7–8 phpMyAdmin
accessing via Web, 773 databases, 773–780 installing and configuring, 771–772 table creation, 773–775
php_valuedirective, 814 PidFiledirective, 792 poll form, vote application, 706–707 populateCategory()method, 378, 380–381, 386–387
populateResource()method, 387 populateSubCategory()method, 378,
381, 387 portable directory structure, PHP applications, 4, 22–23 preg_grep()function, 36 preg_match()function, 36 preg_match_all()function, 36 preg_quote()function, 36 preg_replace()function, 36 prepareLocalList()method, 517 presentation layer, template-based, 68 print_banner()function, 88 printing
banners, 87–88 buffer content, 89–90 output pages, 11 processForm()method, 670 processRequest()method, 457–458,
459, 683 production environment, php.ini settings, 748
prompt()function, 563
$PS_BINarray, 597
$PS_OPTarray, 597 pushMappedFields()method, 517 pwdcommand, 827
Q
queries database access controls, 747 databases, 76–77
error condition return, 51 results display, 77 sessions database, 154–155 query()function, 76 quote character (‘), strings, 79 quote fields, databases, 49–50 quote()function, 79 quote()method, 50
R
readKeywordCacheFile()method, 414 Red Hat Linux, Apache server RPM package installation, 781 redirectTest()method, 545 regular expressions, functions, 36
relational databases See also databases
intranet requirement, 69–70 one-to-many relationships, 249 PHP applications, 4, 21 reminder tool
configuration file, 570–571 functions, 581–582 implementing, 573–580 installation, 582–583 symbolic links, 569 tasks, 570
user configuration, 571–573 user messages, 573–580 reminder.confscript, 571 reminder.phpscript, 573–580 reminders
intranet calendar manager, 356–357 intranet contact manager, 294 reminders.txtscript, 571–573 _removeExcludedWords()method, 414 reorderDriver()method, 269 repeatable events, intranet calendar manager, 355