Lecture-1 PHP Introduction
Live Lecture
· Introduction to php
· Practical Exercise
Lecture-2 Software installation and Setup
Live Lecture
· Recommended software overview
· Install on windows
· Install Atom on Windows
· Practical Exercise
Lecture-3 Variables
Live Lecture
· Write Your First PHP Code: Display a Message in Your Web Browser
· Variables in PHP: What They are, How to Create Them, and How to Name Them
· Basic Variable Types: Strings and Numbers
· Basic Variable Types: Boolean and Null
· Perform Operations on Variables: Operators
· Strings: Using Single or Double Quotes and Variable Interpolation
· PHP concepts, variables and operators
· Variables and Operators
· Practical Exercise
Lecture-4 Arrays
Live Lecture
· Introduction to Arrays: Create an Array and Access its Elements
· Assign Manual Array Indexes and Create Associative Arrays
· Create and Access Multidimensional Arrays
· Process Each Element of an Array: foreach Loops
· Process the value and index of each array element using a foreach loop
· Practical Exercise
Lecture-5 Control Structures
Live Lecture
· Run Code Conditionally: the if Construct
· Compare One Value to another: Comparison Operators
· Run Code Multiple Times Based on a Condition: While Loops
· Run Code a Specific Number of Times: For Loops
· Add More Conditions to an If Statement Using Elseif
· Perform Different Actions Based on Different Conditions: The Switch Statement
· Control structures and comparison operators
· Practical Exercise
Lecture-6 An introduction to HTML
Live Lecture
· The Language of Web Pages: An Introduction to Html
· Use Head and Body Elements to Structure an Html Document
· Structure the Content of your Page Using Heading and Paragraph Elements
· Give Text Emphasis or Importance Using the em and Strong Elements
· Display Ordered and Unordered Lists of Items
· Insert Images into an Html Document
· Add a Link from One Page to Another Using a Hyperlink
· Add Semantic Structure to The Body of an Html Document
· HTML basics
· Practical Exercise
Lecture-7 Mixing PHP and HTML
Live Lecture
· Create Dynamic Content: Mixing HTML and PHP
· Use PHP Control Structures Mixed with HTML
· Make HTML More Readable: Use Whitespace and Comments
· Addendum: changes to the available resources in the following video
· Make PHP Easier to Maintain: Use Comments and Coding Standards
· Mixing PHP and HTML
· Practical Exercise
Lecture-8 An Introduction to Databases
Live Lecture
· Where to Store Data in a Dynamic Website: An Introduction to Databases
· Access the Database Server Using phpMyAdmin And Create a Database
· Use Tables to Store Structured Data in a Database
· Select Some Data from The Database: An Introduction to Sql
· Using Indexes: Make Queries Faster and Order the Result Set
· Connect to the Database from PHP
· Query the Database from PHP And Get the Results
· Combine PHP and HTML to Show a Formatted List of Articles
· Databases - connecting and selecting data
· Practical Exercise
Lecture-9 Multiple Pages in PHP
Live Lecture
· Add a New Page to Show a Single Article
· Passing Data in the URL: Send the Article ID Using the Query String
· Avoid SQL Injection: Validate the ID Passed in from the Query String
· Don't Repeat Yourself: Extract Repeated Code to a Separate File
· Organise and Secure Access to the Included Files
· Multiple pages in PHP
· Practical Exercise
Lecture-10 An Introduction to HTML Forms
Live Lecture
· Getting Data from the User: An Introduction to Forms in HTML
· Change the Method the Form Uses to Send its Data: get vs post
· Get Different Types of Data from the User: Basic Input Types
· Access Data from the form on the Server
· Add a Multi-line Text Control: The Textarea Element
· Present a Fixed List of Options: The Select Element
· Toggle an Option on or off: checkboxes
· Select only one Option from a List: Radio Buttons
· Add an Accessible Caption to Each Input: The Label Element
· Make the Form Easier to Use: Fieldsets and placeholders
· Common form Control Attributes: Readonly, disabled and autofocus
· Validate Input Using HTML5 form Validation
· Forms in HTML
· Practical Exercise
Lecture-11 Inserting Data into the Database from PHP
Live Lecture
· Introduction to MySQL
· Understanding MySQL
· Open source database capabilities
· MySQL administration
· Data types
· Tables and queries
· Installation of MySQL
· Learning to deploy MySQL Constraints
· MySQL ALTER TABLE Command
· Working with MySQL IN Operator
· MySQL Sorting
· MySQL Joins
· Understanding MySQL Sequences
· Add a Form to Insert a New Article
· Insert a New Article into the Database and Get the ID of the New Record
· How SQL Injection Attacks Work
· Avoid SQL Injection Attacks: Escape Input
· Avoid SQL Injection Attacks: Use Prepared Statements
· Inserting data into the database
· Databases - inserting data
· Practical Exercise
Lecture-12 An Introduction to Functions and Validation in PHP
Live Lecture
· Functions: Define and Call a Function in PHP
· Create a Function to Connect to the Database
· Validate the Form Data and redisplay the Form with Error Messages if Invalid
· Maintain Previously-supplied Data When redisplaying an Invalid Form
· Avoid Cross-site Scripting (XSS) Attacks: Escape Untrusted Content
· Insert NULL if the Publication Date is Empty
· Validate the Publication Date is a Valid Date and Time
· Redirect to the Article Page After Inserting a New Article
· Functions in PHP
· Practical Exercise
Lecture-13 Editing Data in the Database from PHP
Live Lecture
· Editing Existing Articles: Create a Function to Get a Single Article
· Add a Form for Editing an Existing Article
· Add a Validation Function and Validate the Form Data
· Change Existing Data in the Database: The SQL UPDATE Statement
· Update an Existing Article in the Database
· Create a Function to Redirect to Another URL
· Databases - updating data using MySQL
· Practical Exercise
Lecture-14 Deleting Data from the Database from PHP
Live Lecture
· Delete Existing Data in the Database: The SQL DELETE Statement
· Delete an Existing Article in the Database
· Use the POST Request Method to Delete the Article
· Get Confirmation from the User Before Deleting the Article
· Improve Database Performance: Only use SELECT * when Necessary
· Updating and deleting data in the database
· Practical Exercise
Lecture-15 Using Sessions to Log in and Restrict Access
Live Lecture
· Make the Web Browser Remember you between Visits: An Introduction to Sessions
· Store Data in the Browser: Cookies in PHP
· Store a Value in the Session to Log in and Log out a User
· Add a Login form and Process the User's Login Credentials
· Completely Destroy the Session on Logout and Redirect Back to the Index Page
· Increase Security: Prevent Session Fixation Attacks
· Restrict Access to a Page to a Logged-in User Only
· Sessions and cookies
· Practical Exercise
Lecture-16 An Introduction to Object-Oriented PHP
Live Lecture
· Classes and Objects: An Introduction to Object-Oriented PHP
· Object Attributes: Adding Properties to a Class
· Object Functions: Adding Methods to a Class
· Object Initialisation: The Constructor Method
· Control Access: Public and Private visibility of Properties and Methods
· Public Properties vs Getter and Setter Methods
· Static Properties and Methods
· Constants: Using Define and const to Create Constant Values
· Inheritance: Using the Extends Keyword to reuse Code and reduce Repetition
· Overriding Methods and Using the Parent Keyword to Call the Parent Class Code
· Control Access: Protected Visibility of Properties and Methods
· Object-oriented PHP
· Practical Exercise
Lecture-17 PDO: PHP Data Objects
Live Lecture
· Add a Database Class and Connect to the Database Using PHP Data Objects (PDO)
· Queries in PDO: Change the Index Page to Use the New Database Class
· Catch Database Errors Using Exceptions and try ... catch Blocks
· Prepared Statements with Named Parameters in PDO: view an Individual Article
· Create an Article Class and Use it on the Index and Article Pages
· Fetch the Database Record as an Object Instead of an Array
· Update the Article Record Using PDO
· Move the Validation Function to the Article Class
· Delete the Article Record Using PDO
· Insert a new Article Record Using PDO and get the ID of the New Record
· Practical Exercise
Lecture-18 Authentication Using the Database
Live Lecture
· Create a User Class and a Method to Authenticate a User
· Create a Table to Store User Data in the Database
· Authenticate the User with Data from the Database
· Store Passwords Securely: PHP Password Hashing Functions
· Store the Password as a Hash in the Database and Verify it on Login
· PDO and password hashing
· Practical Exercise
Lecture-19 Class Autoloading
Live Lecture
· Convert the auth Include into a Class
· Convert the url Include into a Class
· Autoloading Classes: Require Class Files Automatically
· Add an Initialisation Script Including an Autoloader
· Returning a Value Using Require: Add a Script to get the Database Connection
· Practical Exercise
Lecture-20 Site Administration
Live Lecture
· Move all Authentication-related Code to the Auth Class
· Create an Admin Index and Load Classes Relative to the site root Directory
· Displaying Tabular Data in HTML: Tables
· Display the Admin List of Articles in a Table and Restrict Access to the Page
· Add Sitewide Navigation Links
· Move the Edit and Delete Article Scripts to the admin Area
· Move the New Article Script to the admin Area
· Autoloading classes and requiring files
· Practical Exercise
Lecture-21 Pagination
Live Lecture
· Pagination: Split Database Results up Into Pages
· Add a Method to the Article Class to get a Single Page of Article Records
· Add a Paginator Class and Calculate the offset and Limit from the Page Number
· Get the Page Number from the Query String
· Validate the Page Number using the filter_var Function
· Add Previous and Next Pagination Links
· Calculate the Total Number of Records and Pages
· Add Pagination to the admin Index and Create Shared Pagination Links
· Tables and pagination
· Practical Exercise
Lecture-22 Uploading Files
Live Lecture
· Uploading Files: Add a Form to Upload an Article Image
· Handle the Upload Error Code
· Restrict the Size of all Uploaded Files using PHP Configuration Settings
· Restrict the Size of an Uploaded File in an Individual Form
· Restrict the Type of an Uploaded File
· Create a Folder for Uploads and Move the Uploaded File into it
· Sanitise the Uploaded Filename as a Security Precaution
· Don't Overwrite Existing Files in the Uploads Folder
· Save the Filename to the Article Record in the Database
· Display the Uploaded Image if an Article has one
· Delete the Previous image File when an Article Image is Updated
· Add an Option to Delete an Article's Image file
· Uploading files
· Practical Exercise
Lecture-23 Database Relationships
Live Lecture
· Database Relationships: Create a Table and Data for Categories
· One-to-one Relationships Between Tables
· One-to-many Relationships Between Tables
· Joins: Selecting Data from Multiple, Related Tables at Once
· Relationship Constraints
· Many-to-many Relationships Between Tables
· Practical Exercise
Lecture-24 Using Relationships: Article Categories
Live Lecture
· Show an Article's Categories on the Individual Article Page
· Get an Article's Categories in an Object Method
· Add a Category Class and form Inputs to edit an Article's Categories
· Insert Article Categories while Avoiding Duplicate Records in the Join Table
· Insert Article Categories More Efficiently using a Single Query
· Delete Article Category Records if Unchecked in the Form
· Add Categories When Inserting a new Article Record
· Pagination and Joins: Show Categories in the Index Page
· Database relationships
· Practical Exercise
Lecture-25 JavaScript and PHP
Live Lecture
· Execute Code in the Browser: An Introduction to JavaScript
· Using the jQuery Library
· Add jQuery and a Custom Script file to the CMS
· Add Delete Confirmation Using JavaScript and POST
· Client-side form Validation Using the jQuery Validation Plugin
· An Introduction to Ajax with PHP
· Use JSON to Safely Encode Structured Data in an Ajax Request
· JavaScript and PHP
· Practical Exercise
Lecture-26 Dates and Times
Live Lecture
· Only Show an Individual Article if it's been Published
· Only Show Published Articles on the Index Page
· Use the Date Time Class and the Time Element to Show the Published Date and Time
· Show the Published Date and Time of Articles in the admin Area
· Publish Unpublished Articles Using an Ajax Request
· Practical Exercise
Lecture-27 An Introduction to CSS
Live Lecture
· Add Styling and Formatting to HTML: An Introduction to CSS
· Using CSS Frameworks: Bootstrap et al
· Add a General Layout and Style the Navigation Links
· Add Styling and Layout to Forms and Tables
· Add a Custom Stylesheet and Style the List of Articles
· Add a Date and Time Picker Plugin to make Selecting Dates and Times Easier
· CSS basics
· Practical Exercise
Lecture-28 Sending Emails from PHP
Live Lecture
· Add a Contact Page for Sending an Email
· Validate the Submitted Contact Form
· Get Access to a Mail Server
· How to Send Email from PHP: The Mail Function and PHP Mailer
· Send Email from the Contact Page Using PHP Mailer
· Configuration and Error Handling
· Practical Exercise
Choose Any 2 Specialization (CodeIgniter / Laravel / WordPress)
Live Lecture
· Extract Environment-dependent Settings out into a Single Configuration File
· Deny Direct Access to the config file from a Browser
· Handing Errors and Exceptions: user-defined Handling Functions
· Display Error and Exception Details Depending on the Environment
· HTTP Status Codes and Handling Ajax Errors
· Sending emails and error handling
· Practical Exercise
Lecture-30 CodeIgniter Framework
Live Lecture
· Basic DB & Client Side Validation
· Active Record Class-Insert Data
· Client Side Validation
· RegExp
· Server Side Validation & Image Verification
· Server side validation
· Captcha image verification
· Advanced Database with Session & Email System
· Active Record Class- Selecting Data
· Session
· Email system
· File Upload & Online Payment Method
· Include file & file upload
· PayPal Standard
· Authorize.net
· Practical Exercise
Lecture-31 DB Normalization
Live Lecture
· Active Record Class:- Method Chaining, Deleting Data
· Database Normalization
· Practical Exercise
Lecture-32 Advanced PHP Framework with Methods, Classes & Cookies
Live Lecture
· Basic database design concept
· CodeIgniter Methods
· CodeIgniter Classes
· Cookies
· Practical Exercise
Lecture-33 Laravel PHP Framework
Live Lecture
· Laravel PHP Framework
· Laravel Architecture
· Container
· Facades
· Flexibility
· Robustness
· Practical
Lecture-34 Setup & Installation
Live Lecture
· Requirement
· Installation
· Web Server Configuration
· Project Structure
· Basic Routing
· Route Parameters
· Practical Exercise
Lecture-35 Responses
Live Lecture
· View Data
· Redirects
· Custom Responses
· Basic Filters
· Multiple Filters
· Filter Classes
· Global Filters
· Pattern Filters
· Practical Exercise
Lecture-36 Controllers
Live Lecture
· Creating Controllers
· Controller Routing
· RESTful Controllers
· Blade Templates
· Creating Templates
· PHP Output
· Control Structures
· Templates
· Template Inheritance
· Advance Routing
· Named Routes
· Secure Routes
· Parameter Constraints
· Route Prefixing
· Domain Routing
· Practical Exercise
Lecture-37 URL Generation
Live Lecture
· The Current URL
· Generating Framework URLS
· Asset URLs
· Generation Shortcuts
· Request Data
· Retrieval
· Old Input
· Upload Files
· Cookies
· Forms
· Fields
· Buttons
· Macros
· Security
· Practical Exercise
Lecture-38 Validation
Live Lecture
· Rules
· Error Messages
· Custom Rules
· Custom Message
· Databases
· Abstraction
· Configuration
· Preparing
· Schema Builder
· Creating Tables
· Column Types
· Special Column Types
· Column Modifiers
· Updating Tables
· Dropping Tables
· Schema Tricks
· Practical Exercise
Lecture-39 Migrations
Live Lecture
· Basic Concept
· Creating Migration
· Rolling Back
· Migration Tricks
· Eloquent ORM
· Creating new models
· Reading Existing Models
· Updating Existing Models
· Deleting Existing Models
· Eloquent Queries
· Preparation
· Eloquent to string
· Query Structure
· Magic Queries
· Query Scopes
· Practical Exercise
Lecture-40 Eloquent Relationship
Live Lecture
· Relationships
· Implementing Relationship
· Relating and Querying
· Authentication
· Practical Exercise
Lecture-41 - 54 WordPress
Live Lecture
· WordPress - Introduction
· WordPress – Installation
· WordPress – Dashboard
· WordPress - Settings
· WordPress Categories
· WordPress Posts
· WordPress Media
· WordPress Pages
· WordPress Tags
· WordPress Links
· WordPress Comments
· WordPress Plugins
· WordPress Users
· WordPress Appearance
· WordPress Advanced
Lecture-55-70 SEO & Web Hosting
Live Lecture
· Web Hosting
· Basic Concepts
· How it Works?
· Server Types
· Skills Required
· Domain Names
· Site Construction
· Hosting Concepts
· Site Backup
· Site Statistics
· SEO
· Introduction to SEO
· How Search Engine Works?
· What is SEO Copywriting?
· What is Search Engine Rank?
· What is On-Page and Off-page SEO?
· Tactics & Methods
· White Hat SEO
· Black Hat or Spamdexing
· Practical Exercise
· Web Site Domain
· Guru Mantra
· Practical Exercise
· Relevant Filenames
· File Naming Style
· File Name Example
· File Extension
· URL Sub-Directory Name
· Guru Mantra
· Practical Exercise
· Design & Layout
· Design Layout
· Practical Exercise
· Optimized Keywords
· Best Places to Put Keywords
· Finding Keywords
· What is Word Stemming?
· Practical Exercise
· Optimized Meta
· What Do the Metatags Look Like?
· Meta Description Tag
· Meta Keywords Tag
· Robots Meta Tag
· Practical Exercise
· Title Optimization
· Best Practices for Creating Titles
· Practical Exercise
· Optimized Anchor
· Optimized Anchor
· Practical Exercise
· Content is the King
· Unique, High-Quality Content
· SEO Content Writing (Copy Writing)
· Other Advantages of Having Great Content
· Practical Exercise
· Verifying Web Site
· Why HTML/XHTML Verification is Required?
· What is W3C Compliance?
· Rules for W3C Compliance
· Practical Exercise
· Hiring an Expert
· Choosing an SEO Expert or Company
· Practical Exercise
· Link Building
· How to Increase Link Popularity?
· Practical Exercise
· Mobile SEO Techniques
· What is Mobile SEO?
· Optimize Your Site for Mobile
· Select a Mobile Configuration
· Inform Search Engines
· Avoid Common Mistakes
· Useful Tools
· Practical Exercise
· Miscellaneous Techniques
· To-Don't List
· To-Do List
· Practical Exercise
· Techniques Summary
· Techniques
· Practical Exercise
· Internet Basics
· Internet reference Models
· Internet Domain Name System
· Internet Services
· Internet Connectivity
· Internet Protocols
· Electronic Mail Basics
· E-Mail Protocols & E-Mail Working
· Website Development
· Websites Types & Website Designing
· Websites Development
· Website Publishing
· Website URL Registration
· Website Hosting
· Website Security
· Search Engine Optimization
· Website Monetization
· Practical Exercise
· World Wide Web
· Internet Collaboration
· Internet Security and Privacy
Project Development