Rainforest Online Shop Project: PHP and MySQL Website Development

Verified

Added on  2019/09/16

|3
|1017
|556
Project
AI Summary
This assignment requires the development of a database-driven website called Rainforest, an online shop where products can be listed and reviewed by customers. The project involves creating a password-protected administration area for adding, editing, and deleting products and categories, as well as a public-facing front end for browsing products and adding reviews. The system must include features for product browsing, filtering by category, and user review submissions with name, review text, email, and rating. The project also requires a technical report with analysis, design decisions, testing evidence, and conclusions, along with well-documented source code and a video demonstration. The marking scheme emphasizes code quality and functionality over design aesthetics, with potential enhancements including user accounts, shopping carts, order management, and social media integration. The website should be easy to use and must be implemented using PHP and MySQL, with a focus on object-oriented programming and a single entry point.
Document Page
Aims & Objective The purpose of this assignment is to assess your ability to create a database driven
website using PHP and MySQL.
Brief You’ve been asked to create a website called Rainforest, an online shop where products are
listed for sale and can be reviewed by customers. Each product has a name, manufacturer and price
and is assigned to a specific category, for example: Clothing, Toys, Electronics, Books.
Users can then browse all the products listed on the website and add a review for the product.
Basic Requirements (Grades D- to C )
The system must:
1. Have a password protected administration area that has functionality for (20 functionality marks):
a) Adding products
b) Adding categories
c) Assigning products to categories
d) Editing an existing products and categories
e) Deleting products
f) Deleting categories
2. Have a publicly visible front end that allows users to (20 functionality marks):
a) Browse all products
b) Filter products by the category they are assigned to
c) Add a review to a product by entering:
1. Their name
2. Their review
3. Their email address
4. Their rating out of 5
d) The date a review is made should also be logged
e) View all the reviews which have been added by other customers
Please note: Online purchasing is not a basic requirement, you only need to implement product
listings and reviews for a pass grade.
It is up to you how you structure your application and you may extend it with additional functionality
that you think would be useful. Possible enhancements include:
• User accounts allowing users to return and log in to the system instead of entering their details
each time (10 functionality marks)
• Shopping cart/order products online. Do not ask for credit card information, just log the shopping
cart in the database and allow administrators to see the orders that have been placed (10
functionality marks)
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
• Allow admins to mark orders as “shipped” to keep track of which orders have been shipped and
which are awaiting shipping and filter all the orders by their status shipped/not shipped (5
functionality marks)
• Paypal integration see https://developer.paypal.com/ (Please use test accounts) (5 functionality
marks)
• Social media buttons so that people can easily share the products on social media (5 functionality
marks)
• Allow searching of products by name (5 functionality marks) •
Allow people to subscribe to the website so they get an email whenever a new product is added (5
functionality marks)
• Allow people to log in and see all their existing orders and reviews (5 functionality marks)
• Allow administrators to add other administrators (5 functionality marks) • Allow administrators to
upload images for each product (5 functionality marks)
• Password hashing + security (5 functionality marks)
* Functionality marks will be used to calculate your grade for the functionality section of the
marking scheme.
There are marks available for code quality, you should try to avoid repeated code and use
ObjectOriented Programming, autoloaders and a single entry point as well as valid HTML and CSS.
This is not a design course, your website should be easy to use but it does not have to look
impressive.
Functionality is more important than making the site look good.
Deliverables
1. Technical report (Guideline length 2000 – 2500 words)
a) Standard front sheet (Attached to this assignment. Do not include whole assignment brief)
b) Table of contents.
c) Introduction/problem statement for the task.
d) Analysis of requirements and assumptions for the task.
e) An explanation of design decisions that were made
f) Evidence of testing:
i. Test logs providing information of all the tests carried out (including any failed tests for
functionality not implemented)
ii. List of any bugs/weaknesses you have discovered along with what you did to fix them, or
what you would do to fix them given enough time
g) Conclusion
i. What you think has been well implemented
Document Page
ii. Where improvements could be made
iii. What you would do if you had more time
h) References (use Harvard referencing). If you have used code from a book or that you have
found online you must indicate clearly which parts of your code they are and include
references.
2.Source code
a) The source code must be well documented with relevant comments. Consistent
and clear indentation of the code is also important. You must submit the source code in two
forms:
i. A zip file containing the public_html and MySQL directories as well as the
Vagrantfile. The marker should be able to extract the files and type “vagrant up” and access
your website. You will lose marks if your code contains references to files using paths that
are only relevant to your computer. E.g. C:\Users\Name\Documents\CSY2028\file.php all
references to files should use relative names.
ii. A commented full listing as a word document named “Appendix”
3.Video Demonstration
a) In Addition to the report you must provide a video demo of your assignment. The
demo should be 5-10 minutes (No longer than 15 minutes)
Marking Criteria
This is a programming course, not a design course. As such, marks will be awarded for code
quality instead of design. However, thought should be placed in how easy to use the website
is, even if it doesn't look appealing.
chevron_up_icon
1 out of 3
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]