| |
| |
Introduction | |
| |
| |
| |
Getting Up and Running | |
| |
| |
| |
Installation QuickStart Guide with XAMPP | |
| |
| |
Using Third-Party Installation Packages | |
| |
| |
Installing XAMPP on Linux/UNIX | |
| |
| |
Installing XAMPP on Windows | |
| |
| |
Installing XAMPP on Mac OS X | |
| |
| |
Securing XAMPP | |
| |
| |
Troubleshooting | |
| |
| |
| |
Installing and Configuring MySQL | |
| |
| |
Current and Future Versions of MySQL | |
| |
| |
How to Get MySQL | |
| |
| |
Installing MySQL on Linux/UNIX | |
| |
| |
Installing MySQL on Mac OS X | |
| |
| |
Installing MySQL on Windows | |
| |
| |
Troubleshooting Your Installation | |
| |
| |
Basic Security Guidelines | |
| |
| |
Introducing the MySQL Privilege System | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Installing and Configuring Apache | |
| |
| |
Current and Future Versions of Apache | |
| |
| |
Choosing the Appropriate Installation Method | |
| |
| |
Installing Apache on Linux/UNIX | |
| |
| |
Installing Apache on Mac OS X | |
| |
| |
Installing Apache on Windows | |
| |
| |
Apache Configuration File Structure | |
| |
| |
Apache Log Files | |
| |
| |
Apache-Related Commands | |
| |
| |
Starting Apache for the First Time | |
| |
| |
Troubleshooting | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Installing and Configuring PHP | |
| |
| |
Current and Future Versions of PHP | |
| |
| |
Building PHP on Linux/UNIX with Apache | |
| |
| |
Installing PHP on Mac OS X | |
| |
| |
Installing PHP on Windows | |
| |
| |
Php.ini Basics | |
| |
| |
Testing Your Installation | |
| |
| |
Getting Installation Help | |
| |
| |
The Basics of PHP Scripts | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
PHP Language Structure | |
| |
| |
| |
The Building Blocks of PHP | |
| |
| |
Variables | |
| |
| |
Data Types | |
| |
| |
Operators and Expressions | |
| |
| |
Constants | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Flow Control Functions in PHP | |
| |
| |
Switching Flow | |
| |
| |
Loops | |
| |
| |
Code Blocks and Browser Output | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Working with Functions | |
| |
| |
What Is a Function? | |
| |
| |
Calling Functions | |
| |
| |
Defining a Function | |
| |
| |
Returning Values from User-Defined Functions | |
| |
| |
Variable Scope | |
| |
| |
Saving State Between Function Calls with the static Statement | |
| |
| |
More About Arguments | |
| |
| |
Testing for the Existence of a Function | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Working with Arrays | |
| |
| |
What Are Arrays? | |
| |
| |
Creating Arrays | |
| |
| |
Some Array-Related Constructs and Functions | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Working with Objects | |
| |
| |
Creating an Object | |
| |
| |
Object Inheritance | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Getting Involved with the Code | |
| |
| |
| |
Working with Strings, Dates, and Time | |
| |
| |
Formatting Strings with PHP | |
| |
| |
Investigating Strings in PHP | |
| |
| |
Manipulating Strings with PHP | |
| |
| |
Using Date and Time Functions in PHP | |
| |
| |
Other String, Date, and Time Functions | |
| |
| |
Summary | |
| |
| |
Workshop | |
| |
| |
| |
Working with Forms | |
| |
| |
Creating a Simple Input Form | |
| |
| |
Accessing Form Input with User-Defined Arrays | |
| |
| |
Combining HTML and PHP Code on a Single Page | |
| |
| |
Using Hidden Fields to Save State | |
| |
| |
Redirecting the User | |
| |
| |
Sending Mail on Form Submission | |
| |
| |
Creating the Form | |
| |
| |
Creating the Script to Send the Mail | |
| |
| |
Working with File Uploads | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Working with Cookies and User Sessions | |
| |
| |
Introducing Cookies | |
| |
| |
Setting a Cookie with PHP | |
| |
| |
Deleting a Cookie with PHP | |
| |
| |
Session Function Overview | |
| |
| |
Starting a Session | |
| |
| |
Working with Session Variables | |
| |
| |
Destroying Sessions and Unsetting Variables | |
| |
| |
Using Sessions in an Environment with Registered Users | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Working with Files and Directories | |
| |
| |
Including Files | |
| |
| |
Using include_once | |
| |
| |
Validating Files | |
| |
| |
Creating and Deleting Files | |
| |
| |
Opening a File for Writing, Reading, or Appending | |
| |
| |
Reading from Files | |
| |
| |
Writing or Appending to a File | |
| |
| |
Working with Directories | |
| |
| |
Opening Pipes to and from Processes Using popen() | |
| |
| |
Running Commands with exec() | |
| |
| |
Running Commands with system() or passthru() | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Working with Images | |
| |
| |
Understanding the Image-Creation Process | |
| |
| |
Necessary Modifications to PHP | |
| |
| |
Drawing a New Image | |
| |
| |
Modifying Existing Images | |
| |
| |
Image Creation from User Input | |
| |
| |
Using Images Created by Scripts | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
PHP and MySQL Integration | |
| |
| |
| |
Understanding the Database Design Process | |
| |
| |
The Importance of Good Database Design | |
| |
| |
Types of Table Relationships | |
| |
| |
Understanding Normalization | |
| |
| |
Following the Design Process | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Learning Basic SQL Commands | |
| |
| |
Learning the MySQL Data Types | |
| |
| |
Learning the Table-Creation Syntax | |
| |
| |
Using the INSERT Command | |
| |
| |
Using the SELECT Command | |
| |
| |
Using WHERE in Your Queries | |
| |
| |
Selecting from Multiple Tables | |
| |
| |
Using the UPDATE Command to Modify Records | |
| |
| |
Using the REPLACE Command | |
| |
| |
Using the DELETE Command | |
| |
| |
Frequently Used String Functions in MySQL | |
| |
| |
Using Date and Time Functions in MySQL | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Using Transactions and Stored Procedures in MySQL | |
| |
| |
What Are Transactions? | |
| |
| |
What Are Stored Procedures? | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Interacting with MySQL Using PHP | |
| |
| |
MySQL or MySQLi Functions? | |
| |
| |
Connecting to MySQL with PHP | |
| |
| |
Working with MySQL Data | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Basic Projects | |
| |
| |
| |
Managing a Simple Mailing List | |
| |
| |
Developing the Subscription Mechanism | |
| |
| |
Developing the Mailing Mechanism | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Creating an Online Address Book | |
| |
| |
Planning and Creating the Database Tables | |
| |
| |
Creating an Include File for Common Functions | |
| |
| |
Creating a Menu | |
| |
| |
Creating the Record-Addition Mechanism | |
| |
| |
Viewing Records | |
| |
| |
Creating the Record-Deletion Mechanism | |
| |
| |
Adding Subentries to a Record | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Creating a Simple Discussion Forum | |
| |
| |
Designing the Database Tables | |
| |
| |
Creating an Include File for Common Functions | |
| |
| |
Creating the Input Forms and Scripts | |
| |
| |
Displaying the Topic List | |
| |
| |
Displaying the Posts in a Topic | |
| |
| |
Adding Posts to a Topic | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Creating an Online Storefront | |
| |
| |
Planning and Creating the Database Tables | |
| |
| |
Displaying Categories of Items | |
| |
| |
Displaying Items | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Creating a Shopping Cart Mechanism | |
| |
| |
Planning and Creating the Database Tables | |
| |
| |
Integrating the Cart with Your Storefront | |
| |
| |
Payment Methods and the Checkout Sequence | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Creating a Simple Calendar | |
| |
| |
Building a Simple Display Calendar | |
| |
| |
Creating a Calendar Library | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Restricting Access to Your Applications | |
| |
| |
Authentication Overview | |
| |
| |
Apache Authentication Module Functionality | |
| |
| |
Using Apache for Access Control | |
| |
| |
Combining Apache Access Methods | |
| |
| |
Limiting Access Based on HTTP Methods | |
| |
| |
Restricting Access Based on Cookie Values | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Logging and Monitoring Web Server Activity | |
| |
| |
Standard Apache Access Logging | |
| |
| |
Standard Apache Error Logging | |
| |
| |
Managing Apache Logs | |
| |
| |
Logging Custom Information to a Database | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Application Localization | |
| |
| |
About Internationalization and Localization | |
| |
| |
About Character Sets | |
| |
| |
Environment Modifications | |
| |
| |
Creating a Localized Page Structure | |
| |
| |
Localizing Your Application with gettext() | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Working with XML and JSON | |
| |
| |
What Is XML? | |
| |
| |
Accessing XML in PHP Using DOM Functions | |
| |
| |
Accessing XML in PHP Using SimpleXML Functions | |
| |
| |
Working with JSON | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Administration and Fine-Tuning | |
| |
| |
| |
Apache Performance Tuning and Virtual Hosting | |
| |
| |
Performance and Scalability Issues | |
| |
| |
Load Testing with ApacheBench | |
| |
| |
Proactive Performance Tuning | |
| |
| |
Preventing Abuse | |
| |
| |
Implementing Virtual Hosting | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Setting Up a Secure Web Server | |
| |
| |
The Need for Security | |
| |
| |
The SSL Protocol | |
| |
| |
Obtaining and Installing SSL Tools | |
| |
| |
Managing Certificates | |
| |
| |
SSL Configuration | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Optimizing and Tuning MySQL | |
| |
| |
Building an Optimized Platform | |
| |
| |
Benchmarking Your Database Server | |
| |
| |
MySQL Startup Options | |
| |
| |
Optimizing Your Table Structure | |
| |
| |
Optimizing Your Queries | |
| |
| |
Using the FLUSH Command | |
| |
| |
Using the SHOW Command | |
| |
| |
Summary | |
| |
| |
Q&A | |
| |
| |
Workshop | |
| |
| |
| |
Performing Software Upgrades | |
| |
| |
Staying in the Loop | |
| |
| |
Upgrading MySQL | |
| |
| |
Upgrading Apache | |
| |
| |
Upgrading PHP | |
| |
| |
Summary | |
| |
| |
Workshop | |
| |
| |
| |
Using Application Frameworks | |
| |
| |
Understanding Application Frameworks | |
| |
| |
Using the MVC Pattern | |
| |
| |
Installing and Using PHP Application Frameworks | |
| |
| |
Summary | |
| |
| |
Workshop | |
| |
| |
Activities | |
| |
| |
TOC, 9780672335433, 5/2/2012 | |