A gentle introduction to building dynamic, database-driven websites for designers with no previous programming experience.
Preface xxiii Acknowledgments xxiv
Chapter
1: Introduction
1
1.1 From Static to Dynamic Web Sites
1
1.2 About PHP
4
1.3 About MySQL
7
1.4
Chapter Summary
11
Chapter
2: Getting Started
13
2.1 The Life Cycle of a Web Page
13
2.2 The Anatomy of a PHP Script
15
2.3 Some Things to Consider
21
2.4 Review
31
2.5
Chapter Summary
37
Chapter
2 Lab
38
Chapter
3: PHP Quick Start
41
3.1 Quick Start, Quick Reference
41
3.2
Chapter Summary
57
Chapter
4: The Building Blocks: Data Types, Literals, Variables, and Constants
59
4.1 Data Types
59
4.2 Variables
70
4.3 Constants
99
4.4
Chapter Summary
104
Chapter
4 Lab
105
Chapter
5: Operators
107
5.1 About PHP Operators and Expressions
107
5.2
Chapter Summary
145
Chapter
5 Lab
146
Chapter
6: Strings
149
6.1 What Is a String?
149
6.2 String Functions
155
6.3 Other String Functions
214
6.4
Chapter Summary
218
Chapter
6 Lab
219
Chapter
7: Conditionals and Loops
221
7.1 Control Structures, Blocks, and Compound Statements
221
7.2 Loops
232
7.3
Chapter Summary
243
Chapter
7 Lab
244
Chapter
8: Arrays
247
8.1 What Is an Array?
247
8.2 Modifying Arrays (Unsetting, Deleting, Adding, and Changing Elements)
310
8.3
Chapter Summary
335
Chapter
8 Lab
336
Chapter
9: User-Defined Functions
337
9.1 What Is a Function?
337
9.2
Chapter Summary
376
Chapter
9 Lab
377
Chapter
10: More on PHP Forms
379
10.1 Introduction
379
10.2 Review of HTML Forms
379
10.3 PHP and Forms
390
10.4
Chapter Summary
438
Chapter
10 Lab
439
Chapter
11: Files and Directories
441
11.1 Files
441
11.2 The Web Server, PHP, and Permissions
446
11.3 Directories
483
11.4 Managing Content with Include Files
487
11.5
Chapter Summary
494
Chapter
12: Regular Expressions and Pattern Matching
497
12.1 What Is a Regular Expression?
497
12.2 Pattern-Matching Functions
499
12.3
Chapter Summary
565
Chapter
12 Lab
566
Chapter
13: Introduction to MySQL
567
13.1 About Databases
567
13.2 The Anatomy of a Relational Database
570
13.3 Connecting to the Database
575
13.4 The MySQL Privilege System
582
13.5
Chapter Summary
593
Chapter
14: SQL Language Tutorial
595
14.1 What Is SQL?
595
14.2 SQL Data Manipulation Language (DML)
603
14.3 SQL Data Definition Language
620
14.4 SQL Functions
633
14.5
Chapter Summary
642
Chapter
14 Lab
643
Chapter
15: PHP and MySQL Integration
647
15.1 Introduction
647
15.2 The Guest Book Example
663
15.3
Chapter Summary
671
Chapter
15 Lab
671
Chapter
16: Cookies and Sessions
673
16.1 What Is Stateless?
673
16.2 What Are Cookies?
673
16.3 PHP and Cookies
677
16.4 What Is a Session?
694
16.5
Chapter Summary
736
Chapter
16 Lab
738
Chapter
17: Objects
739
17.1 What Are Objects?
739
17.2 Working with Classes
741
17.3 Some PHP
5 Object Features
772
17.4
Chapter Summary
780
Chapter
17 Lab
781 Appendix A: Building an Art Gallery
783 A.
1. Project Overview
783 A.
2. The Public and the Private
783 A.
3. Creating the Web Site
785 A.
4. Installing the Art Gallery
805 A.
5. Conclusion
808 Appendix B: PHP and E-Mail
809 B.
1. The Mail Server
809 B.
2. MIME (Multipurpose Internet Mail Extensions)
810 B.
3. Runtime Configuration Options
810 B.
4. The mail() Function
811 B.
5. Sending a Simple E-Mail Message
811 B.
6. Example: Sending an HTML Message
813 Appendix C: PHP and Date/Time
819 C.
1. Formatting Dates and Times
819 C.
2. Getting the Timestamp
824 C.
3. Getting t