Introduction of Web & PHP
- What is PHP?
- The history of PHP
- Why choose PHP?
- Installation overview
First Steps
- Embedding PHP code on a page
- Outputting dynamic text
- The operational trail
- Inserting code comments
Exploring Data Types
- Variables
- Strings
- String functions
- Numbers part one: Integers
- Numbers part two: Floating points
- Arrays
- Associative arrays
- Array functions
- Booleans
- NULL and empty
- Type juggling and casting
- Constants
Control Structures: Logical Expressions
- If statements
- Else and elseif statements
- Logical operators
- Switch statements
Control Structures: Loops
- While loops
- For loops
- Foreach loops
- Continue
- Break
- Understanding array pointers
User-Defined Functions
- Defining functions
- Function arguments
- Returning values from a function
- Multiple return values
- Scope and global variables
- Setting default argument values
Debugging
- Common problems
- Warnings and errors
- Debugging and troubleshooting
Building Web Pages with PHP
- Links and URLs
- Using GET values
- Encoding GET values
- Encoding for HTML
- Including and requiring files
- Modifying headers
- Page redirection
- Output buffering
Working with Forms and Form Data
- Building forms
- Detecting form submissions
- Single-page form processing
- Validating form values
- Problems with validation logic
- Displaying validation errors
- Custom validation functions
- Single-page form with validations
Working with Cookies and Sessions
- Working with cookies
- Setting cookie values
- Reading cookie values
- Unsetting cookie values
- Working with sessions
MySQL Basics
- MySQL introduction
- Creating a database
- Creating a database table
- CRUD in MySQL
- Populating a MySQL database
- Relational database tables
- Populating the relational table
Using PHP to Access MySQL
- Database APIs in PHP
- Connecting to MySQL with PHP
- Retrieving data from MySQL
- Working with retrieved data
- Creating records with PHP
- Updating and deleting records with PHP
- SQL injection
- Escaping strings for MySQL
- Introducing prepared statements
Building a Content Management System (CMS)
- Blueprinting the application
- Building the CMS database
- Establishing your work area
- Creating and styling the first page
- Making page assets reusable
- Connecting the application to the database
Using Site Navigation to Choose Content
- Adding pages to the navigation subjects
- Refactoring the navigation
- Selecting pages from the navigation
- Highlighting the current page
- Moving the navigation to a function
Application CRUD
- Finding a subject in the database
- Refactoring the page selection
- Creating a new subject form
- Processing form values and adding subjects
- Passing data in the session
- Validating form values
- Creating an edit subject form
- Using single-page submission
- Deleting a subject
- Cleaning up
- Assignment: Pages CRUD
- Assignment results: Pages CRUD
Regulating Page Access
- User authentication overview
- Admin CRUD
- Encrypting passwords
- Salting passwords
- Adding password encryption to CMS
- New PHP password functions
- Creating a login system
- Checking for authorization
- Creating a logout page