
Practice practical PHP scripting and MySQL concepts through a real-world web application, using a cross-platform server setup and a development-focused approach that emphasizes structure and syntax.
Install and configure a complete php and mysql development stack, including apache web server, scripting language php, bluefish editor, and mysql database, to build interactive web forms.
Install and set up the XAMPP stack quickly across Windows or macOS, including Apache, MySQL, PHP, and Perl, with guided, simulated downloads and installations for hands-on learning.
Download the xampp software by selecting windows and retrieving the dot xp file from sourceforge, with a simulated six-minute download on a 4 megabit connection.
Learn how to install and configure XAMPP on Windows, including installing Apache and MySQL services via the XAMPP control panel and starting the servers.
Set up and verify the XAMPP web server by opening localhost, selecting English, and reviewing the status, php info, and the basic database front-end My admin.
Set up the bluefish editor for PHP development, using code highlighting, collapsible sections, and reusable snippets, with cross-platform installation from the official site.
Install and open Bluefish, explore the home page directory in htdocs, rename index.html to homepage, and manage multiple files with the editor's left tree and right script window.
Navigate the Bluefish interface and its bottom-left tools—folders, files, bookmarks, and snippets—while creating a simple index.php page that prints hello world on a local host.
Learn bluefish setup by configuring the base directory, renaming index.php to exam page, and creating a new home page while comparing index.php and index.html; explore snippets.
Download and import a prepared set of PHP code snippets to speed up script creation, and learn to use parameterized snippets in the Bluefish editor for reusable code.
Learn PHP comments, using // for single-line and block comments /* */ with an asterisk start, and describe each file with name, author, and date for clarity.
Learn to render dynamic web pages with PHP by using echo to output HTML and draw data from a small database, including a simple 3x3 table view on localhost.
Review PHP basics cover code tags at the top and bottom, single-line and multi-line comments, indentation, echo statements, and using code snippets to quickly generate and test PHP code.
Learn how relational databases organize data into tables of rows and attributes, using SQL to create, drop, alter, insert, delete, update, and query data in a multi-user MySQL environment.
Use phpMyAdmin to create a new database Alpha CRM and drop an extra database. Add a table with id (int, primary key, auto_increment), name (varchar 250), and postcode (varchar 50).
Access curated resources, user reference manuals, and course links for this php and mysql tutorial from the site. Enjoy discounts on course purchases, web hosting, and cloud server options.
Install Bluefish, create basic php scripts that display static text on a local host, and use phpMyAdmin to create databases and tables, with exercises supported by code snippets.
Learn to connect a PHP script to a MySQL database by defining host, username, password, and database name, using variables and basic connection and selection steps.
Demonstrates testing a local host MySQL connection, handling errors, and suppressing system messages with the @ operator, then validating correct credentials to connect to the Alpha CRM database.
Learn how to use PHP to drop and recreate the Alpha CRM database with a first MySQL query, employing variables and conditional output to verify success in the browser.
Use php if-else logic to handle mysql connections, set a success flag, and execute a drop database Alpha crm with proper host, username, and password parameters.
Create a php script to create the Alpha CRM database by saving a new file and executing the create database snippet in the browser.
Learn to create MySQL tables with PHP, building a practical Alpha CRM schema by writing scripts to connect to the database and define company and person tables.
Explore the create table syntax with database.table naming, define fields with types, lengths, and keys, and create two tables: company and person, using phpMyAdmin and a PHP script.
Learn to use phpMyAdmin to view and insert records into MySQL and explore table structure. Craft insert statements with auto_increment IDs and multi-row inserts to ensure data integrity with PHP.
Learn how to insert data into MySQL with PHP by constructing an insert statement for multiple rows, including field lists and autoincrement IDs, and verify results via phpMyAdmin.
Learn to update MySQL tables with the update statement, set multiple fields, and use a where clause to target specific records, including PHP conversion and result handling.
Create a PHP script to connect to the Alpher CRM database and update the company table, setting country to United Kingdom where country equals UK, then run and verify.
Learn to delete records with MySQL commands, including delete from table where and truncate table, plus binary case-sensitive deletes demonstrated on a person table.
Explore PHP variables and operators, including valid dollar-sign variable names, naming conventions, and arithmetic, assignment, logical, and comparison operators, plus increment, decrement, modulus, and text concatenation.
Explore arithmetic operators in PHP through code snippets that display the code and the computed result in a browser, using x and y to produce 7.
Learn how PHP assignment operators update variables, including +=, -=, *=, /=, and %=, and how the concatenation operator treats numbers as text.
Explore how PHP uses comparison operators (==, !=, ===) to drive decisions in if statements, and combine them with logical operators (&&, ||, !) to control code flow.
Learn to use numeric arrays in PHP, indexing with brackets starting at zero to manage many data items under one variable and print them with echoes.
Learn how PHP auto assigns numeric indices starting from 0 for arrays, compare manual and automatic declarations, and use comma separated lists in array() to create readable, equivalent arrays.
Learn to use associative arrays in PHP to name db connection parameters, referencing hostname, username, and database as named keys, then echo values to demonstrate the setup.
Learn to use two dimensional arrays in PHP by building arrays of arrays, iterating with while loops, and echoing details from numeric and associative arrays for database-ready data.
Learn to separate data from code by building arrays for field names and values, then construct PHP insert statements to populate Alpha CRM database's T person table with three records.
Learn to create PHP arrays from text file and generate insert statements for multiple rows. Read data file, parse with explode, and build a comma-separated values list for MySQL inserts.
Connect to My School server and select the database. Create a database on Maya school server and perform insert, update, and delete operations with PHP scripts, variables, and arrays.
Explore echo and print to display content, use tables, escape characters, format dates, and apply repetition constructs with select and where for data, while noting H.T. docs security.
Learn to securely manage database connections by centralizing config details in a separate file and using include with DBI parameters, enabling safer, reusable PHP and MySQL access on localhost.
Learn how PHP echo outputs content to the browser, compare it to print, and explore quotes and basic HTML tags that shape what visitors see.
Explore how PHP echo handles single and double quotes, escaping, and concatenation; learn when to print literals versus variable values and to adopt a consistent quoting approach.
Learn to format numeric values with printf and sprintf using format strings and arguments, and apply to tabular data rendered in a browser via echo.
Learn to render tabular data in a browser with HTML tables, loop to repeat rows from arrays or data files, and prepare for database queries using select statements.
Master date and time handling in php by using string to time for conversion and the date function for formatting for database storage and browser display.
Discover PHP do...while loops, where the loop body runs at least once even when the condition is false. See a six-element array example filtering words starting with a given letter.
Demonstrates repetition via a for loop that iterates a seven-item array of company names, printing each with a line break.
Explore how foreach loops iterate over arrays and associative arrays, using index names and item values to print results, and learn how repetition constructs enable efficient database operations in PHP.
Learn to read data with MySQL select by specifying column names from a table, run the query with mysqli_query, and fetch rows as an associative array for display.
Convert echoed select results into an HTML table. Use a while loop to build rows for salutation, first name, last name, and company id.
Explore MySQL joins to display a company name from t_company alongside person data from t_person by joining on company_id, with practical initialization and querying in a crm-style example.
Explore mysql joins by linking person and company tables on company id, then render the results in a browser table, including a left outer join example.
Master filtering with where and sorting with order by in MySQL, using multiple fields and ascending or descending order; includes practical examples in PHP and MySQL.
Explore how to pass data variables from one PHP script to another using a two-page model, including form creation, GET query strings, and optional header redirects.
Pass data between scripts with a GET query string and retrieve it via $_GET, using username and company name in a two-script form workflow.
Learn how to transfer data with post in PHP by building a form that posts first and last name to a script, using $_POST, and saving or displaying records securely.
Create a two-script PHP workflow to insert new company data into a MySQL database. Validate input, build an insert statement from posted data, and display success or error messages.
Update an existing company record by selecting a company from a dropdown, posting its ID to an edit form with editable fields, and saving changes with an update script.
Learn how to update a database record in a beginner PHP and MySQL tutorial by posting a company ID, displaying an edit form, and executing an update with basic validation.
Learn how to redirect in PHP using the header function, including redirecting to the company list. Handle zero or missing IDs before output and conditionally redirect after updates or errors.
Create a dynamic list of people linked to a selected company by using a dropdown, displaying company details and associated person records on an output page.
Add a new telephone field to the table and update the PHP list to show headers and the field, with alternating row colors for a richer, styled contact list.
Use get and post to handle query strings, form values, inserts and updates. Redirect on events and build tabular data view with headers in alternating rows on crm home page.
Merge the two-page form processing into a single PHP page, using is_set and get to capture var values and render a simple key-value dropdown for a basic CRM component.
Utilize a single PHP page to process form submissions and select a company from a dropdown. Retrieve the company details and associated people, then display them with alternating row styles.
Build and manage multi part forms in php to edit company people and add new records, using a company dropdown and a final list form to insert new person records.
Learn how to save and return data using post and get methods in PHP and MySQL, including editing and inserting person records, forms, and redirects.
learn how to implement a PHP and MySQL insert script for a person form, posting salutation, first name, last name, and company ID, and handling success or error.
Edit a person record via a dedicated form linked from the company people edit page. Process posted data to update the record, save changes, and add new records.
Explore normalization to reduce data redundancy by using lookups and lookup tables. Create a four-field table for salutations, then implement a dropdown to prevent duplicates and ensure consistent spelling.
Replace the static salutation field with a dropdown sourced from t_look_up where look_up_type is salutation, ordered by look_up_order, to enforce consistent data and update the current value on edit.
Create and implement a complex dropdown to change a person's associated company by selecting from ordered company names, replacing the hidden company id field, and saving updates.
Design and upgrade a CRM-like company list using PHP and MySQL, implementing sortable headers with order by fields, dynamic links, and alternating row styles to guide editing records.
Edit the index.php file to add a link to the company list order, creating a durable project menu. Users can sort by name, country, or id.
Learn to use isset and unset, build a multipart form with listing, implement dropdowns, and save changes in the same scripts while tackling an eight-question quiz and two comprehensive exercises.
Demonstrate MySQL join types, focusing on inner and left joins to show data from person and company tables, including unmatched records; apply fetch array output and include once PHP functions.
Show how simple joins return only matching records from person and company tables via company_id, while left joins return all left table records with nulls when there is no match.
Render nested lists by grouping data such as companies with their people using a single query with left joins and an order by clause to minimize reads.
Explore nested processing in MySQL by looping through companies and their persons. Learn why nested loops can thrash a database, compare to joins, and manage multi-tier data in PHP.
Move from inline styles to an external stylesheet by linking a CSS file, then apply alternating table rows and header hover effects in the beginner PHP and MySQL tutorial.
Explore how functions in PHP streamline repetition by using parameters and return values, with examples like concatenating names and addresses to refactor code.
Learn how to manage reusable PHP code with include and require statements, understand include_once versus include, and organize functions and dropdown snippets in an includes repository.
Protect applications by trapping errors and guarding against hacker tricks, and implement error handling, logon scripts with password masking, cookies for authentication, and access control with an audit trail.
Explore common error types in PHP and MySQL applications, including syntax, semantic, logic, and data entry errors, with practical debugging examples and a test harness.
Learn PHP and MySQL by creating a test table, inserting values, and handling database errors such as unique key and max length constraints, form inputs, and file existence checks.
Explore custom error testing in PHP using set_error_handler to capture runtime errors, inspect the default error handler, and understand why syntax errors cannot be trapped in a page script.
Learn to build a PHP and MySQL login page with two forms posting credentials, compare text vs password fields, and verify users against a MySQL users table.
Hash the admin password with md5 and store the hash in the user table; update the login form to compare md5(input) with the stored value and remove password echoing.
Protects pages by validating a secure logon form, restricting the home page menu, and using header redirects with an authorization flag before shifting to a post-based authentication flow.
Set and manage cookies to protect pages by storing an authorization value with a cookie name, value, expiry time, and directory; retrieve via $_COOKIE and delete by past expiry.
Learn to implement cookie-based login in PHP, set and expire cookies, use a status query string for logout, and maintain login state to view company listings.
Create an access_control table with integer access levels and assign them to users for admin, editor, and registered roles. Encrypt passwords with md5 and use cookies to enforce access control.
Show how to restrict fields by access level in the beginner PHP and MySQL tutorial, hiding edit options and add forms for users with cookies set to 21 or higher.
Manage users by creating, editing, and securing accounts through an admin-restricted interface, using includes, a form with an access level dropdown, and save operations across forms and includes.
Update the CRM menu with new styles, add a create new user link restricted to administrators, and learn to build a user list by managing accounts and duplicates.
Build an audit trail by logging user access, recording user id, timestamp, ip address, and actions in a t_access_log table, including suspend date time to represent suspended records.
Log user logins and build an audit trail by recording the login process, session status, and access details via a function-driven login flow.
Identify preventable errors, implement a custom error handler, and build a login with cookies to track users, protect pages, and create an audit trail of logins and logouts.
Learn how templates serve as the foundation of professional web applications, and master using include scripts, template structures, and content management concepts to create consistent, reusable layouts.
Build a PHP template by splitting styles into two css files—layout and typography—to define the page structure and rendering in a wrapper with header, menu, content, and footer.
Set up dynamic template menu by inserting header and footer includes into the index script, then render a reusable menu and content areas with conditional includes based on authorization.
Create a template login script in PHP by posting credentials to the index page, validating them with an authorize function, setting an authorized cookie, and handling logout status.
Learn to implement a template logout script in PHP, processing a status logout query, clearing the login cookie, and reloading index to show the login form or content updates.
Discover how a PHP switch statement manages content rendering by evaluating a content code and routing to case-specific includes and templates.
Move the string functions include into the index file, reference it from the includes directory, and use a template driven approach with content equals company list and order clause parameters.
Set up CMS content to list company personnel via content codes, linking to a company people edit form and enabling insert and update functions.
Complete the cms module by creating the tp person edit form and related list pages, enabling admin users to add and edit company people.
Review why templates matter and how to implement them, manage content with template structure and index page, and render dropdowns using the PHP switch construct and HVM else select construct.
Explore built-in and custom PHP functions, including optional parameters and default values, and learn argument handling with func_num_args, func_get_args, and func_get_arg, plus reading database data into single and multi-dimensional arrays.
Explore PHP built-in functions for maths and strings, including date and time formatting, string manipulation, and number formatting, with practical examples from the PHP manual.
Explore built-in date and time functions in PHP, including string to time, time, and date, to format now, tomorrow, yesterday, and precise timestamps for database records.
Revamp string functions to add a time-of-day greeting via a custom PHP function, update includes and header references, and apply new CSS to personalize greetings for logged-in users.
Create a formatting function and an include file to style text with CSSA, reference it in the index, and enable clickable id and company name actions.
Validate email addresses in PHP using regex for syntax and DNS checks (MX records) via a PHP function, then apply these checks to the user insertion workflow.
Learn PHP database functions such as mysqli_query, mysqli_insert_id, and mysqli_affected_rows to insert records, obtain auto increment IDs, and report errors during database operations.
Explore essential php array functions by sorting arrays, removing duplicates with unique, finding members with in_array, extracting subarrays with array_slice, and merging arrays with array_merge.
Learn how to search arrays for a value, slice with offsets (positive or negative), preserve keys, merge and sort arrays, and ensure uniqueness in multi-dimensional arrays.
Explore predefined server variables in PHP, using $_SERVER to reveal host and user information, such as the server IP, document root, and environment context for secure applications.
Detect browser types from the server using a PHP function and the HTTP user agent. Understand how varying W3C compliance among browsers impacts CSS and processing decisions.
PHP and MySQL are incredibly powerful open source technologies that allow people to create functional websites and apps that go way beyond basic HTML. While it can seem intimidating to someone with no background in coding, working with PHP is much easier than many realize. With the right guidance and a desire to learn, most people can learn how to put together a functional web app in a few days!
This PHP / MySQL Tutorial Video Course is narrated by Robert Tucker, a long-time trainer, lecturer and consultant who specializes in helping people learn how to use technology to solve real world problems. In this high-impact course, Robert walks users through the creation of a functional PHP / MySQL interface from beginning to end, explaining where needed the important technical points without relying on excessive jargon. This is not an overview of complex theory, but a hands-on primer that will allow even beginners to create usable solutions quickly!
Robert shows you how to make the most from these free technologies used by everyone from small startups to the biggest technology companies in the world.
Learn PHP and MySQL and start developing web apps like a pro! Learn PHP and MySQL and start developing web apps like a pro!