Credits | p. xi |
Preface | p. xv |
Installation and Basics | p. 1 |
Install PHP | p. 1 |
Install PEAR Modules | p. 12 |
Web Design | p. 16 |
Create a Skinnable Interface | p. 16 |
Build a Breadcrumb Trail | p. 20 |
Create HTML Boxes | p. 24 |
Add Tabs to Your Web Interface | p. 29 |
Give Your Customers Formatting Control with XSL | p. 33 |
Build Lightweight HTML Graphs | p. 35 |
Properly Size Image Tags | p. 38 |
Send HTML Email | p. 40 |
DHTML | p. 44 |
Put an Interactive Spreadsheet on Your Page | p. 44 |
Create Pop-Up Hints | p. 47 |
Create Drag-and-Drop Lists | p. 49 |
Build Dynamic HTML Graphs | p. 52 |
Section Your Content with Spinners | p. 58 |
Create Drop-Down Stickies | p. 61 |
Create Dynamic Navigation Menus | p. 64 |
Obscure JavaScript Dynamically | p. 67 |
Build a DHTML Binary Clock | p. 69 |
Tame Ajax with JSON | p. 73 |
Make a DHTML Slideshow | p. 76 |
Add Vector Graphics with PHP | p. 79 |
Build a Color Selector | p. 81 |
Create Link Graphs | p. 85 |
Create an Interactive Calendar | p. 88 |
Create the Google Maps Scrolling Effect | p. 93 |
Graphics | p. 101 |
Create Thumbnail Images | p. 101 |
Create Beautiful Graphics with SVG | p. 104 |
Simplify Your Graphics with Objects | p. 107 |
Split One Image into Multiple Images | p. 115 |
Create Graphs with PHP | p. 120 |
Create Image Overlays | p. 123 |
Access Your iPhoto Pictures with PHP | p. 126 |
Databases and XML | p. 142 |
Design Better SQL Schemas | p. 142 |
Create Bulletproof Database Access | p. 147 |
Create Dynamic Database Access Objects | p. 149 |
Generate CRUD Database Code | p. 155 |
Read XML on the Cheap with Regular Expressions | p. 165 |
Export Database Schema as XML | p. 168 |
Create a Simple XML Query Handler for Database Access | p. 170 |
Generate Database SQL | p. 172 |
Generate Database Select Code | p. 175 |
Convert CSV to PHP | p. 180 |
Scrape Web Pages for Data | p. 184 |
Suck Data from Excel Uploads | p. 190 |
Load Your Database from Excel | p. 194 |
Search Microsoft Word Documents | p. 199 |
Create RTF Documents Dynamically | p. 202 |
Create Excel Spreadsheets Dynamically | p. 207 |
Create a Message Queue | p. 211 |
Application Design | p. 216 |
Create Modular Interfaces | p. 216 |
Support Wiki Text | p. 221 |
Turn Any Object into an Array | p. 224 |
Create XML the Right Way | p. 227 |
Fix the Double Submit Problem | p. 230 |
Create User-Customizable Reports | p. 234 |
Create a Login System | p. 237 |
Apply Security by Role | p. 241 |
Migrate to MD5 Passwords | p. 249 |
Make Usable URLs with mod_rewrite | p. 253 |
Build an Ad Redirector | p. 258 |
Add a Buy Now Button | p. 262 |
Find Out Where Your Guests Are Coming From | p. 271 |
Import Information from vCards | p. 273 |
Create vCard Files from Your Application's Data | p. 275 |
Create a Shopping Cart | p. 277 |
Patterns | p. 286 |
Observe Your Objects | p. 287 |
Create Objects with Abstract Factories | p. 290 |
Flexible Object Creation with Factory Methods | p. 294 |
Abstract Construction Code with a Builder | p. 296 |
Separate What from How with Strategies | p. 300 |
Link Up Two Modules with an Adapter | p. 303 |
Write Portable Code with Bridges | p. 307 |
Build Extensible Processing with Chains | p. 309 |
Break Up Big Classes with Composites | p. 314 |
Simplify APIs Using a Facade | p. 316 |
Create Constant Objects with Singletons | p. 321 |
Ease Data Manipulation with Visitors | p. 324 |
Testing | p. 329 |
Test Your Code with Unit Tests | p. 329 |
Generate Your Unit Tests | p. 331 |
Check for Broken Links | p. 335 |
Test Your Application with Simulated Users | p. 337 |
Test Your Application with Robots | p. 342 |
Spider Your Site | p. 347 |
Generate Documentation Automatically | p. 351 |
Alternative UIs | p. 355 |
Create Custom Maps with MapServer | p. 355 |
Build GUI Interfaces with GTk | p. 365 |
Send RSS Feeds to Your IM Application Using Jabber | p. 369 |
IRC Your Web Application | p. 376 |
Read RSS Feeds on Your PSP | p. 379 |
Search Google by Link Graph | p. 382 |
Create a New Interface for Amazon.com | p. 388 |
Send SMS Messages from Your IM Client | p. 392 |
Generate Flash Movies on the Fly | p. 396 |
Fun Stuff | p. 406 |
Create Custom Google Maps | p. 406 |
Create Dynamic Playlists | p. 412 |
Create a Media Upload/Download Center | p. 415 |
Check Your Network Game with PHP | p. 419 |
Put Wikipedia on Your PSP | p. 422 |
Create a Weather Showdown | p. 430 |
Index | p. 433 |
Table of Contents provided by Ingram. All Rights Reserved. |