Symbols — (decrement operator), 31 - (subtraction operator), 28 ! (logical operator), 33 != (comparison operator), 32 $type parameter, 761 % (modulus operator), 28 % (wildcard character), 245 %= (combined assignment operator), 30 & (bitwise operator), 34 & (reference operator), 31 && (logical operator), 33 (quotes), magicquotes 429-430 * (multiplication operator), 28 * symbol (regular expressions), 112 *= (combined assignment operator), 30 , (comma operator), 34 . (current directory symbol), 346 . (one level up directory symbol), 346 . (string concatenation operator), 22 . (the current directory), 346 .= (combined assignment operator), 30 / (division operator), 28 /= (combined assignment operator), 30 ?, (ternary operator), 34 @ (at symbol), 58 @ (error suppression operator), 34 \ (backslash), 257, 429 \n (newline) control sequence, 59 \t (tab) control sequence, 59 ^ (bitwise operator), 34 ^ (caret symbol), regular expressions, 112- 113 `` (execution operator), 35 {} (curly braces, regular expressions), 112 | (bitwise operator), 34 || (logical operator), 33 ’ (quote symbol), magic quotes, 429-430 + (addition operator), 28 + (plus symbol), Web forum articles, 682 + symbol (regular expressions), 112 ++ (increment operator), 31 += (combined assignment operator), 30 < (comparison operator), 32 <, 32 << (bitwise operator), 34 <= (comparison operator), 33 <IMG SRC> tag, 561 = (assignment operator), 29 -= (combined assignment operator), 30 == (comparison operator), 32 === (comparison operator), 32 Numbers 401 errors (HTTP), 306 A a file mode, 55 a+ file mode, 55 access control (authentication) implementing, 294-302 multiple pages, protecting, 301-302 passwords, 297-301 accessing arrays, 73-77 accessor functions, 150-151, 776 account settings (MLM), 652 Account Settings button, 652 accounts, creating, 636-639 Index 41 525x index 1/24/03 3:39 PM Page 817 818 accounts accounts (Warm Mail application) creating, 602-603 deleting, 604-605 modifying, 604 selecting (reading email), 605-608 setting up, 600-605 Acrobat Web site, 711 actions MLM, 634-635 script architecture, 627 add bm() function, 501 ADD INDEX [index] (column, ) syntax, 218 ADD PRIMARY KEY (column, ) syntax, 218 Add to Cart link, 749 ADD UNIQUE [index] (column, ) syntax, 218 ADD [COLUMN] (column_description, column_description, ) syntax, 218 ADD [COLUMN] column_description [FIRST | AFTER column] syntax, 218 addition operator, 28 AddSlashes() function, 102, 228, 248, 323 addToCart() function, 784 add_bms.php, 476 add_bm_form.php, 476 add_quoting() function, 700 admin.php script (Shopping Cart applica- tion), 544, 547 administration interface (Shopping Cart application), 546, 553 administration menu (admin.php), 544, 547 edit_book_form.php script, 549 insert_book.php script, 547-548 insert_book_form.php script, 547 show_book.php script, 549 administrative functions (MLM), 655 administrative users, 188-189 administrator interface, Shopping Cart application, 513 administrator view (Shopping Cart appli- cation), 513 Adobe PDF Web site, 722 Adobe Acrobat Web site, 711 Adobe PostScript, 708-709 Advanced Maryland Automated Network Disk Archiver (AMANDA), 291 aggregate functions, MySQL, 215 aggregating data, 215-217 aliases, for tables, 213 ALL privilege, 188 ALTER privilege, 187 ALTER TABLE statement, 218-219 ALTER [COLUMN] column {SET DEFAULT value | DROP DEFAULT} syntax, 218 Altering tables, 218-219 AMANDA (Advanced Maryland Automated Network Disk Archiver), 291 Amazon actions, 757 books, showing in categories, 758-760 browse nodes, 748 caching, 747, 778-781 callback functions, 773 checking out, 785 connecting, 739-740 constants.php file, 755 Developer Token, 746 index.php (core application file), 752-758 project codes, installing, 785 sessions, creating, 755 shopping carts, building, 746, 781 SOAP (Simple Object Access Protocol), 747, 777-778 Web Services interfaces, 746-747 XML, 747, 770-777 Amazon Associate ID, 746 Amazon Web Services Developers’ Kit, 746 Amazon.com, 270 AmazonResultSet class, 760-770 AmazonResultSet.php class, 761-769 ampersand (&) reference operator, 31 41 525x index 1/24/03 3:39 PM Page 818 819 arsort() function Analog Web site, 264 and operator, 33 anomalies, avoiding (Web databases), 174- 175 anonymous login (FTP), 368 anonymous user, deleting in MySQL installation, 804 ANSI Web site, SQL standard, 220 anti-aliasing text, 393 Apache Configuration, adding PHP, 808 configuring for PHP installation, 795 installation, 790-791, 805-806 installing, Unix environment, 796-797 parameters, MaxClients, 229 resources, 815 running, 798, 806 Apache Software Web site, 815 Apache Today Web site, 815 Apache Web server basic authentication (HTTP), 303-308 htpasswd program, 307 mod_auth module, 305 mod_auth_mysql module, 310-313 Apache Web site, 791 Apache Week Web site, 815 Application, Shopping Cart. See Shopping Cart application application architectures, Warm Mail application (email client), 588 application layer protocols, 320 application projects content, separating from logic, 450 development environment, 448 documentation, 448-449 logic, 450 optimizations, 451-452 planning, 440-441 prototypes, 449-450 rewriting code, 441-442 software engineering, 440 testing code, 452-453 version control, 447-448 writing maintainable code, 442-446 applications Bob’s Auto Parts application, 12-14 Book-O-Rama application, 170 Database Search page, 224 designing, 173-177 schema, 181, 191 Web database architecture, 178-179 content management systems, files, 562- 563 PHPBookmark, 473-476 Smart Form Mail, 95-97 Smart Form Mail application, regular expressions, 114 Warm Mail. See Warm Mail application Web forum application. See Web forum application architecture script, 627, 634-635 Web databases, 177-179 arcs, ImageArc() function, 412 arithmetic operators, 28-29 array push() function, 646 array() language construct, 72 arrays, 71 associative arrays, 74-76, 80-81 bounding boxes, contents, 401 categoryList, 759 converting to scalar variables, 92-94 elements, 72, 90-92 indexes, 72 loading from files, 86-89 multidimensional arrays, 77-82 navigating within an array, 90 numerically indexed arrays, 72-74 reordering, 84-86 two-dimensional arrays, 79 array_count_values() function, 92 array_reverse() function, 86 array_walk() function, 90-92 arsort() function, 81 How can we make this index more useful? Email us at indexes@samspublishing.com 41 525x index 1/24/03 3:39 PM Page 819 820 article list article list (Web forum application), 681 adding new articles, 696-703 displaying articles, 686-687 plus symbols, 682 threads, 682-686 treenode class, 687, 690-694 viewing individual articles, 694-696 ASCII, 706 ASINSearch() method, 761 asort() function, 81 ASP style (PHP tags), 17 assignment operators, 24, 29 combination assignment operators, 30 decrement operators, 31 equal sign (=), 22 increment operators, 31 reference operator, 31 returning values, 30 associative arrays contents, accessing, 74-75 each() function, 75-76 initializing, 74 list() function, 75-76 looping through arrays, 75-76 sorting, 80-81 associativity, operators, 37 asterisk symbol (*), regular expressions, 112 at symbol (@), 58 attachments, online newsletters, 623 attributes XML elements, 743 object-oriented development, 146-151, 156-157 tables, 170 authentication, 275, 296 access control encrypting passwords, 300-301 implementing, 294-302 multiple pages, protecting, 301-302 storing passwords, 297-300 basic authentication (HTTP), 302 in PHP, 303-304 with Apache .htaccess files, 305-308 with IIS, 308-309 digest authentication (HTTP), 302 identifying users, 293-294 mod_auth_mysql module, 310-313 passwords, 282-283 session control, 421 authmain.php script, 422-426 logout.php script, 427 members_only.php script, 426 user input data, validing, 484-485 logging in, 487-491 logging out, 491-492 passwords, resetting, 495-499 passwords, setting, 492-495 registering, 481, 484-486 Web sites, 313 authmain.php script (authentication), 422- 426 auto append file, 559 auto prepend file, 559 automatic generation of images, 395 auto_append_file (php.ini file), 125-126 AUTO_INCREMENT keyword, 192 auto_prepend_file (php.ini file), 125-126 AV G(column) function, 215 B b file mode, 55 back slashes, 429 backing up data, 290-291 backing up files, FTP functions, 366-368 closing connections, 372 connecting to remote FTP server, 369 downloading files, 371-372 file update times, checking, 370-371 logging in to FTP server, 369 backslash (\), 257 backticks, 353 41 525x index 1/24/03 3:39 PM Page 820 821 buttons bar charts, 412 base canvas, setting up, 399 baselines, descenders, 402 basename($path) function, 347 basename() function, 350 basic authentication (HTTP), 302 in PHP, 303-304 with Apache .htaccess files, 305-308 with IIS, 308-309 BDB table, 256 Bill Gates Wealth Clock Web site, 361 binary installations, MySQL, 790-791 for Unix, 792-794 for Windows, 801-803 binary large objects (BLOB types), 200- 201 bitwise operators, 33-34 BLOB types (binary large objects), 200- 201 blocks (code blocks), 40-41, 140-141 blue-button.png file, 399 Bob’s Auto Parts application, 12-14 boo.com, 270 book details page (Shopping Cart applica- tion), 520, 526-527, 549 Book-O-Rama application, 170 Database Search page, 224 designing, 173-177 schema, 181, 191 Web database architecture, 178-179 database, 203-205 online store, Shopping Cart application, 512 Shopping Cart application. See Shopping Cart application bookmark.gif, 476 bookmarks adding, 500-502 deleting, 503-505 displaying, 502-503 recommending, 475 storing, 475 bookmarks.sql, 476 bookmark_fns.php, 476 book_insert.sql file, 205 book_sc database (Shopping Cart applica- tion), 517-519 bounding boxes, 401 Boutell Web site, 387, 412 Boxes, bounding boxes, 401 branching (regular expressions), 113 break statement, 49 breaking up code, 445-446 brochureware sites, 262-264 browse nodes (Amazon), 748 browse variable, 770 browsedir.php file, 345 browseNode variable, 756 BrowseNodeSearch parameters, 771 browseNodeSearch() function, 777 browseNodeSearch() method, 761, 769-770 browsers authentication, 283 secure transactions, 316-317 Web database architecture, 178 Browsing directories, 345 BUGTRAQ archives Web site, exploits, 344 building content management systems, 556 MLM, 621 Burn All Gifs Web sites, 390 buttons Account Settings, 652 base canvas, setting up, 399 Change Password, 652 checkout, 785 colors, 399 Create Mail, 658 generating, with make_button.php script, 396 Information, 647 Log In, 639 Scripts, code to call, 396 Send, 666 How can we make this index more useful? Email us at indexes@samspublishing.com 41 525x index 1/24/03 3:39 PM Page 821 . deleting in MySQL installation, 804 ANSI Web site, SQL standard, 220 anti-aliasing text, 393 Apache Configuration, adding PHP, 808 configuring for PHP installation, 795 installation, 79 0-7 91, 80 5-8 06 installing,. module, 31 0-3 13 passwords, 28 2-2 83 session control, 421 authmain .php script, 42 2-4 26 logout .php script, 427 members_only .php script, 426 user input data, validing, 48 4-4 85 logging in, 48 7-4 91 logging. (HTTP), 302 in PHP, 30 3-3 04 with Apache .htaccess files, 30 5-3 08 with IIS, 30 8-3 09 BDB table, 256 Bill Gates Wealth Clock Web site, 361 binary installations, MySQL, 79 0-7 91 for Unix, 79 2-7 94 for Windows,