Skip to main content

Web Programming using PHP

Overview

  • Credit value: 15 credits at Level 5
  • Convenor: Ian Hollender
  • Assessment: programming tasks (40% and 60%)

Module description

In this module you will learn the basics of procedural and object-orientated PHP and how to use the language to produce well-engineered server-side websites and applications, following a separation of concerns design philosophy. You will have the opportunity to develop user login authenticated single point of entry websites, following a model view controller design pattern, utilising file and database access, form data processing, and cookie and session control.

Indicative syllabus

  • Introduction to PHP: Open-Source origins; PHP procedural language (variables/arrays, control structures, functions)
  • File handling: using PHP to open, read, write and close external files and manipulate data
  • Building well-engineered web applications: Separation of Concerns, Model View Controller, Single Point of Entry, Include files and HTML templating; identifying failure points and exception handling.
  • Object-Orientated PHP
  • Interfacing PHP to a database: PHP Data Objects Extension and the MySQL driver
  • Form processing: using PHP to process submitted form data; validating and displaying data/redisplaying forms
  • Maintaining state with PHP: cookies; session management

Learning objectives

By the end of this module, you will have:

  • been introduced to the PHP programming language, using both a procedural and object-orientated style
  • developed the PHP skills required to create dynamic and authenticated websites, process forms, read and write external file data between files and databases, analyse and manipulate such data, as well as preserving state
  • developed an awareness and skillset to design and build well-engineered websites and web applications
  • developed good programming practice by writing efficient well-documented code that can be easily understood by colleagues
  • acquired the self-study skills and resources to enable you to further enhance your knowledge and capabilities with PHP.