The course covers the fundamentals of web technology. It is an intensive 2 weeks course that covers many web
concepts and tools including client side languages and technoplogies such as X/HTML, CSS, DOM, JavaScript and DHTML,
as well as server side technologies and languages such as SQL using MySQL, and PHP,
two of the world most popular web open source tools to create a data driven web site that is easy to publish
and easy to maintain.
As part of this course, the student will be exposed to HTML and to the more recent and more structured XHTML and CSS.
In addition the student will learn JavaScript, and will use all this knowledge to create web pages and web forms that
collect and present data from the server. The student will be exposed to database concepts, and to the relational database model.
The SQL language will be presented and used to design, build and interact with the MySql database server.
Students will also be exposed to the PHP scripting language, and will use that language to build their own data-driven web sites.
XHTML, CSS, JavaScript, MySql and PHP have become the world most popular languages and tools to develop web sites.
They are currently being used by millions of web users across the internet.
DATE |
SESSION |
TOPIC[s] COVERED |
  |
[Day 1] |
1a |
What is the Internet?
What is the Web?
Web hosting
Domain Name System
URL - Uniform Resource Locator
Relative vs. Absolute URLs
What is HTTP - Hypertext Transfer Protocol?
What is HTML? XHTML?
XHTML coding requirements
Using File Transfer Protocol FTP, SFTP
Web directory structure
|
| Reading: |
Chapter intro, 1, 2 (HTML for the World Wide World) |
  |
|
1b |
X/HTML web page structure
The anatomy of X/HTML element
The HEAD section
the BODY section
X/HTML tags versus attributes
Basic X/HTML tags
Additional X/HTML tags
Formatting text
Adding list elements
Creating links to other pages
Internal anchors vs. external links
|
| Reading: |
Chapter 3, 4, 7 (HTML for the World Wide World) |
  |
|
1c |
Using X/HTML -- beyond basic tags
Adding color to the web page
Specifying color
The RGB hexadecimal color scheme
Adding images to the web page
Turning an image into a hyperlink
Turning an image into an image map
The image formats, GIF, JPEG, PNG
Which format should I use?
Adding multemedia to the web page
The <object> and <embed> tags
Character entities
The <meta> tag
Refresh and redirect web pages
|
| Reading: |
Chapter 5, 6, 17 (HTML for the World Wide World) |
  |
[Day 2] |
2a |
Using X/HTML tables
The X/HTML Table structure
Using tables to display rows and columns
Using tables to layout your page
The <table>, <tr> and <td> tags
Spanning multiple rows and columns
Creating column groups
The <thead>, <tbody> and <tfoot> tags
Nesting tables
Wrapping text around tables
|
| Reading: |
Chapter 14 (HTML for the World Wide World) |
  |
|
2b |
X/HTML frames
What is a frameset?
What is a frame?
Controlling frame re-sizing and scroll bars
Nesting framesets
Targeting frames
Special targeting (_blank, _parent, _top, etc...)
Targeting to a new browser window
Creating inline frames
|
| Reading: |
Chapter 15 (HTML for the World Wide World) |
  |
|
2c |
X/HTML forms
Creating input fields
Creating radio and checkboxes
Creating selection and dropdown lists
Submitting a form. Where does it go?
About server scripts and programming
Saving and mailing your form content
The "Get" and the "Post" methods
Using hidden fields
Uploading files to a server
|
| Reading: |
Chapter 16 (HTML for the World Wide World) |
  |
[Day 3] |
3a |
CSS - Cascading Style Sheets
Structure of a CSS rule
Advantages of using CSS
Inline, embedded and external CSS
Creating style sheets
Applying styles to your X/HTML
Inline vs. block-level tags
The <div> and <span> tags
CSS selectors
Class and Id selectors
Contextual selectors
Cascading and Inheritance rules
|
| Reading: |
Chapter 9, 10 (HTML for the World Wide World) |
  |
  |
3b |
CSS Properties and Values
Test related properties
Font related properties
The element box model
Box related properties
Background related properties
Display and visibility properties
Positioning related properties
Relative vs. absolute vs. fixed positioning
Positioning elements in 3D using z-index
Specifying length units
Other media specific styles
Printing and controlling page-breaks
|
| Reading: |
Chapter 8, 11, 12 (HTML for the World Wide World) |
  |
|
3c |
Introduction to JavaScript
HTML and scripting languages
Where to insert JavaScript in HTML
The <script> tag
JavaScript variables and data types
Numeric and String operators
Comparison and Logical operators
JavaScript Arrays and Objects
What is an array?
Accessing array elements
What is an object?
Object properties and methods
|
| Reading: |
Chapters 1, 2 (Beginning JavaScript) |
  |
[Day 4] |
4a |
Basic JavaScript programming concepts
The if statement
The else condition
The switch and case statements
The for and for..in loops
The while and do..while loops
The break and continue statements
The label identifier
Defining functions
Passing parameters and receiving data from functions
Variable scope and the var statement
|
| Reading: |
Chapter 3 (Beginning JavaScript) |
  |
|
4b |
The Browser Objects
The Browser Object Hierarchy
The Window object
The History object
The Location object
The Navigator object
The Screen object
Opening up additional windows
Accessing other frames
JavaScript events and event handling
Setting up timers
|
| Reading: |
Chapters 5 [first half], 7 (Beginning JavaScript) |
  |
[Day 5] |
5a |
The Document Object Model
The Document object
The Image object
Creating an image rollover effect
The Form object
The elements Input object
Common properties and methods
The Select and option objects
Interacting with HTML form elements
Validating data entered in a form
|
| Reading: |
Chapters 5 [second half], 6 (Beginning JavaScript) |
  |
|
5b |
DHTML - Dynamic HTML
Cross browser challenges
DHTML in early browsers
DHTML in modern W3C compliant browsers
The HTMLElement Object
Accessing HTML elements
Altering the content of HTML elements
Altering the style of HTML elements
Hiding and showing content
Finding a common denominator
|
| Reading: |
Chapters 12, 13 (Beginning JavaScript) |
  |
[Day 6] |
6a |
SQL - Structured Query language
DDL - Data Definition language
DML - Data Manipulation Language
SQL standard vs. vendor extensions
Our first database
The SELECT statement
The FROM clause
The WHERE clause
Comparison operators
Using SELECT DISTINCT
|
| Reading: |
Chapter 10 (PHP and MySQL Web Development ) |
  |
  |
6b |
Selecting data from multiple tables
The join construct
Old vs. new join syntax
Normal or Inner join
Cross join - Cartesian product
Outer join vs. Inner join
What is a Self Join
Performance considerations
|
| Reading: |
Chapter 10 (PHP and MySQL Web Development ) |
  |
|
6c |
SQL built-in Functions
Aggregate functions - COUNT, SUM, AVG, MIN, MAX
Arithmetic functions - ABS, RAND, ROUND, TRUNCATE
Character functions - CONCAT, LENGTH, SUBSTR, TRANSLATE
Date functions - Current date, date manipulation, date formatting
|
| Reading: |
Chapter 10 (PHP and MySQL Web Development ) |
  |
[Day 7] |
7a |
The SQL SELECT Clauses
The FROM clause
The WHERE clause
Grouping with GROUP BY clause
The HAVING clause
Sorting with the ORDER BY clause
|
| Reading: |
Chapter 10 (PHP and MySQL Web Development ) |
  |
  |
7b |
Database Design
The Logical and Physical Model
Understanding data normalization
First normal form
Second normal form
Third normal form
Pros & cons of data normalization
Denormalizing data
Entiry relationships
One-to-one relationship
One-to-many relationship
Many-to-many relationship
|
| Reading: |
Chapter 8 (PHP and MySQL Web Development ) |
  |
|
7c |
Creating database objects
What is a primary key?
What is a foreign key?
What is an index?
Creating tables
SQL data types
Adding a primary key
Adding constraints
Creating Indexes
Altering table definition
Droping tables
Droping databases
|
| Reading: |
Chapter 9 (PHP and MySQL Web Development ) |
  |
[Day 8] |
8a |
Manipulating data in tables<
Adding data with the INSERT statement
INSERT with a SELECT statement
Changing data with the UPDATE statement
UPDATE with a SELECT statement
Removing data with the DELETE statement
DELETE with a SELECT statement
The TRUNCATE statement
The REPLACE statement (mySql)
|
| Reading: |
Chapter 10 (PHP and MySQL Web Development ) |
  |
|
8b |
Introduction to PHP
PHP variables
Numeric and string operators
Comparison and logical operators
Working with Arrays
Control Structure and Program Flow
The if, while, for and each statements
|
| Reading: |
Chapter 1, 2 (PHP and MySQL Web Development ) |
  |
[Day 9] |
9a |
Working with Strings & String functions
Working with Numbers & Numeric functions
Working with Dates & Date functions
Working with Arrays & Array functions
|
| Reading: |
Chapter 3, 4, 5 (PHP and MySQL Web Development ) |
  |
  |
9b |
Accessing HTML form data
The GET and POST methods
Reading and Writing to Files
File Permissions
Inserting, Updating & Deleting from databases
Querying databases
|
| Reading: |
Chapter 11, 18 (PHP and MySQL Web Development ) |
  |
[Day 10] |
10a |
The HTTP protocol
The Stateless Nature of HTTP
The Browser Request Packet
The Server Response Packet
|
| Reading: |
Chapter 22 (PHP and MySQL Web Development ) |
  |
|
10b |
Creating Continmuity on the Web
Repopulating Form Entry Fields
Using Hidden Fields
Using the end of the URL
Manipulating Cookies
Session Management and Session Variables
Final Exam
Final Project Delivery
|
| Reading: |
Chapter 22 (PHP and MySQL Web Development ) |
All contents ©
Sam Sultan.