About this website

Zend Framework      www.php.net      MySQL

Introduction

I created this website as a self-training exercise to learn the Zend Framework and to extend my knowledge of PHP5 and MySQL. During this learning exercise, I placed the emphasis on functionality and compliance with standards. However, the website does also make extensive use of CSS for the layout, colour scheme and styling. I am currently working on the CSS, refining and improving it using the w3c validators.

I began to create a version of this site in 2004 using PHP4 but as of January 2009, it has been completely rewritten to take advantage of the Object Oriented nature of PHP5.

As the site uses the Zend Framework, it follows the Model/View/Controller pattern.

At the foot of many pages on this website, you will find bullet points highlighting the specific skills, techniques and technologies used to construct the page.

The website is full-featured and contains the following :

AN ONLINE BOOKING SYSTEM

  • An availability calendar showing existing bookings
  • A mechanism to choose a date and holiday duration
  • A booking form for user and contact details
  • Confirmation that the booking has taken place
  • An administration system


AN ADMINISTRATION SYSTEM
  • To view this area, proceed to the Online Booking area and click ADMIN
  • An area for the owner of the accommodation to maintain bookings
  • Miscellaneous views of all bookings
  • A mechanism to change certain settings for or even delete a booking
  • A list of clients
  • A mechanism to maintain a mailing list
  • The ability to add, edit or delete seasons and prices


Documentation

All documentation was created using phpDocumentor and is available to view via the appropriate menu option. All source code is also available for persual via this documentation.


Development Environment

Development took place on my local machine using EasyPHP to provide the Apache server. All source code was hand-coded using Vim, a 'vi' like text editor which provides colour-coded syntax highlighting. I also installed Cygwin to take advantage of the many useful Unix/Linux command line tools.

The basic database content has been installed from XML files. This includes the reference data, property details and initial bookings.

This page illustrates the following skills :