32516 - Internet Programming

Assignment 1:

"An On-line Grocery Store with Graphic User Interface"

Due on: Friday 23 April 2021, at 11:59 pm


In this assignment, you are required to develop a web site for a Grocery Store to run a grocery business on-line. This Grocery Store system is a simulated online grocery shopping experience. It is applicable to any e-commerce shopping application.

The products in the store for sale can be divided into five categories: Frozen-Food, Fresh-Food, Beverages, Home Health and Pet-Food. The data pre-defined in a MySQL database is shown as below:

This assignment consists of four components. You are required to work individually to complete all functionalities of this project. This assignment counts as 45% towards your final assessment.


1. Learn about the design of professional (advanced) Web pages

2. Learn about real-life Website design, including hierarchal structures for navigation.

3. Learn how to use graphic tools for creating clickable rollover image maps

4. Learn how to design customised presentation (layout) of Web pages

5. Learn how to use server/client side scripting languages for creating dynamic Web pages

6. Learn how to use PHP & MySQL for reading, writing and verifying data

7. Learn how to create an e-commerce application using a combination of scripting languages, descriptive languages, development tools and backend databases.

Window Layout

The browser window is divided into three frames, the Left Hand Frame, the Top Right Hand Frame and the Bottom Right Hand Frame, as shown below:


The main focus of our on-line shopping project is to allow customers to visually search/browse for products available in the shop and then display the details of chosen products. Customers can add chosen products to a virtual shopping cart and when they wish to complete the shopping, they can checkout by filling an on-line Purchase Form that asks for the delivery of details and email address. Once the Form is filled out, the customer can complete the order by clicking on the "Purchase" button. The details of the order are then sent via email to the email address given on the form as a confirmation of the order.

There are four components in this project. These component will display in one of the three frames of browser's window. The four components are :-

1. The left hand frame displays a Visual (e.g. an Image Map) Browser. The Visual Browser shows the category hierarchy of products available in the shop. The default image only shows two levels of the products hierarchy.

When the mouse pointer moves over a particular category node then the image displayed changes to a more detailed graph, showing the substructure of this particular category. At the lowest level of the hierarchy individual nodes are "live" i.e. they represent particular products and they are live links to a php file.

When a user clicks on a particular “product node” it will bring up a php file showing the details of the product in the right top frame.

2. The top right frame is a web page generated on the server side by a php script. It retrieves the appropriate product entry from the MySQL products table and then displays selected attributes of the product in a web page generated by the script. Each product displayed has an "Add" button which adds the selected product to the user's shopping cart, which is displayed in the bottom right hand frame.

3. The bottom right hand frame displays a Virtual Shopping Cart, showing the user how many products that are already chosen and the total value of their selections so far. Users can empty the shopping cart (i.e. clear all selections made so far) by clicking on a "Clear" button. Users can also complete their shopping session by clicking on a button labelled "Checkout". When the Checkout button is clicked, the system checks that theuser actually has products in the shopping cart, and if so it executes a php script whose results are shown in the top right hand frame. (If there are no products in the shopping cart a simple message is displayed in the shopping cart frame).

4. The checkout component displays a purchase form asking the user to fill in their delivery details (name, address, suburb, state, country and email address). All these fields must be completed for the order to go ahead. The user completes the transaction by clicking on a button labelled "Purchase". The details of the order are sent via email to the email address given on the form.


● Use Cloud9 or your local IDE for development. Deploy your website using BeanStalk.

● Use a graphic tool of your choice to create your clickable image maps.

● Use clickable image maps and JavaScript to create your rollover image maps.

 Use PHP code to retrive products' information from MySQL database

● Test each component of your system, and then integrate all components into a complete system.


You submit the assignment details (your name, Student ID, URL of the assignment, partner's details (if done with someone else) through a form which will appear as a menu option on the subject website. If you want to you can submit your assignment details after the form appears, but prior to the due date you may do so. There will be a link to the submission form at the subject homepage for making your submission. You will be asked to submit the URL of your page.

● Before you submit your assignment, please check whether your web site is accessible.

● Do not send the URL of your assignment to the lecturer or tutors by email!

After the indicated deadline submissions will not be accepted! 


Students are reminded of the principles laid down in the "Statement of Good Practice and Ethics in Informal Assessment" in the Faculty Handbook. Assignments in this subject should be your own original work. Any collaboration with another participant should be limited to those matters described in the "Acceptable Behaviour" section. Similarly, any group work should be the result of collaboration only within the group. Any infringement by a participant will be considered a breach of discipline and will be dealt with in accordance with the Rules and By-Laws the University. The Faculty penalty for proven misconduct of this nature is zero marks for the subject. For more information, see:


Further, copying of resources (e.g. images, blocks of HTML) from other web sites without acknowledgement of the source constitutes plagiarism, and is considered as unacceptable behaviour. While you should feel free to use other web sites for inspiration, you should not cut-and-paste "source code".

The exception to the above rule is web sites which make available free-to-download archives of images, scripts, etc. You should check any restrictions before using such material (e.g. many image sites require you to include a link back to their home page if you use their images). Further, for the purposes of this subject, you should also acknowledge the source of any such material by using a comment <!-- ... --> in your HTML file. For more information, see:


Here are some png graphics which you can use in the assignment if you wish. The colours are not particularly good, and you can improve them if you wish. You are also free to make your own images from scratch.