Duration
3 days
Overview
CodeIgniter is a powerful PHP framework with a rich set of libraries and a simple interface that allows applications to be built fast without compromising on quality or efficiency. When combined with MySQL, one of the most widely used relational databases, which is popular because it is easy to integrate with a front end and has a wide repository of support, one gets to build flexible web sites and web applications rapidly.
This course will help to leverage the CodeIgniter compatibility features and simplistic development tools through a blended workshop that comprises of theory and plenty of hands on exercises for practical learning. The participants will learn about the CodeIgniter Framework form, how to connect with the database and how to make websites more interactive, effective, less complex and easily manageable. This course also demonstrates how to build Web services and consume the Web services in CodeIgniter using PHP.
Secure web programming is the best defence against hackers. This course will demonstrate live real-time hacking methods, analyse the code deficiency that enabled the attack and most importantly, teach how to prevent such vulnerabilities by adopting secure coding best practices in order to bullet-proof the application.
Objective
- Build web applications using CodeIgniter and MySQL and advance your knowledge of OOPs programming
- Build projects that focus on performance, business and application logic and visual presentation
- Build applications from scratch using minimum code and with the support of a large number of libraries and resources
- Build a secure website based on major security principles in PHP programming vulnerabilities, and known security issues in web applications
- Learn how to create and deploy contract-first web services.
- Understand Web Services Description Language (WSDL) file.
Target Participants
Website developers who want to pursue a career in web development will benefit greatly from this course. The hands on labs will enable the student to get a first-hand experience of the hackers’ world and what could be done to stop him.
Program Prerequisites
- Basic knowledge of PHP
- Basic knowledge of MySQL
- Knowledge of HTML and CSS
- Programming experience in an Object Oriented language will be beneficial
Mode of Delivery
Every participant will be provided with course notes and are required to bring in their own laptop for hands-on exercise and practice sessions.
Day 1
- Object Oriented PHP Basics
- Use of Object Oriented PHP in web applications
- The php.ini File
- Basic PHP Syntax
- PHP tags
- Variables Names
- Variables Scope
- Variables Constants
- PHP Operators
- Creating Dynamic pages
- JavaScript Revisited
- Flow Control
- Conditional IF processing
- Loops while, do..while, for..break, continue
- Enumerated Arrays
- Associated Arrays
- Two Dimensional Arrays
- Array manipulation Functions
- JQuery
- Form Events
- HTML and CSS
- Links
- Images
- Tables
- Lists
- Forms
- Frames
- Doctypes
- URLs
- Webserver
- Syntax-Id & Class-Backgrounds
- Text
- Fonts
- Tables, Border-Outline, Margin
- Media Types
- Attribute Selectors
- String Manipulation
- Formatting Strings
- Reusing code and Writing Functions
- Include Files
- User Functions
- Form processing
- Basic PHP with framework
- PHP and MySQL
- Why use a framework
- What is CodeIgniter Framework
- MySQL Database Training
- What is a relational database
- About tables, records and fields
- SQL Language
- Using MySQL Client
Day 2
- CodeIgniter Framework – Basic DB & Client side validation
- Active Record Class-Insert Data
- Client Side Validation
- RegEx
- What is authentication
- Store password securely
- Hashing
- Brute force
- Dictionary attack
- Form-based authentication
- CodeIgniter Framework – Server side Validation & Image Verification
- Server side validation
- Captcha image verification
- Client side authorization
- Injection Flaws
- OS Command Injection
- SQL Injection
- Parameterized queries
- CodeIgniter Framework – Advanced Database with Session & Email System
- Active Record Class – Selecting Data
- Session
- Email System
- Directory traversal
- File extension handling
- Uploaded files backdoors
- Directory listing
- Custom error pages
- Page vs Application level error handling
- DB Normalization
- Concepts
- Normalization Types
- Method Chaining
- Deleting Data
- Database Normalization
- DB Relationship & Model Description
- Updating Data
- Database relationship
- Database Model Description
Day 3
- Advanced PHP Framework with Methods, classes & Cookies
- Basic database design concept
- CodeIgniter Methods
- CodeIgniter Classes
- Cookies
- Cross-Site Request Forgery (CSRF)
- Anti CSRF token
- Open redirect
- Clickjacking
- Browser’s cache
- Session management
- Cookie's properties
- Session fixation
- CodeIgniter Framework – SSL, Email Manager, File Upload
- Lecture on secure path SSL
- Email Manager
- Include file & file upload
- Protecting stored data at the client side
- Client side Web SQL Database Security
- Offline cache poisoning
- SQL injection in HTML5
- Webservice
Introduction
- Building a service contract
- Building the WSDL file visually
- Validating the Web service
- Building the PHP service code
- Deploying the code
- Summary
Programme scope, delivery arrangements and suitability are confirmed during enquiry.