联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2021-05-09 10:45

31748 / 32516 Internet Programming

Assignment 2:

An Online Car Rental System using AJAX and JSON

Due 11:59 pm, Friday 14 May 2021

Introduction

In this assignment, you are required to develop a simplified on-line business portal (website)

for a Car Rental Company: “Hertz-UTS”. The objectives of this assignment are as follows:

1. Learn how to design your own data structure, by which, you could form your own

database using JSON Object

2. Learn how to use AJAX technique to send and retrieve data from the web server

asynchronously without interfering with the display and behaviour of the existing

page.

3. Learn how to load a JSON file using JavaScript.

4. Learn how to parse a JSON file, extract the node values/attributes and store them in

session arrays of your DHTML pages.

5. Learn the usage of session: how to set, update, delete and destroy the session.

Assignment Requirements

1. This assignment is done individually and it counts as 35% towards your final assessment.

2. The website should be dynamic which means all the data are loaded dynamically from the

JSON file. If the contents in the JSON file change (e.g., the mileage changes to 12354 for

id=1), the pages should change as well.

3. The vehicles available for renting can be divided into three categories: Sedan, Wagon and

SUV. Each car to be stored in a JSON file is associated with the following 10 attributes:

Category Availability Brand Model Model

year

Mileage Fuel

type

Seats Price

per day

Description

sedan Y/N Toyota Camry 2013 10000 petrol 5 $120 xxxxxxx

4. Car image samples are provided on the CANVAS

You need to create a folder “images” stores the pictures for the cars. Each image is named

according to the model of the car and the image types all are “jpg”.

Figure 1. The screenshot of the folder “images”.

Assignment Specification

This assignment requires that you do the following steps.

1. Design a JSON file “cars.json” with the structure specified in requirement 3 and store at

least 10 + car data items in the JSON file. Set up the availability state to “True” for 70%of

cars in the Warehouse, and a “False” state to the other 30%. (80 marks).

2. Use AJAX to load the JSON file “cars.json” and extract the data and save it as arrays in

your webpage. (50 marks).

3. Display the cars in a nice tabular format using the above arrays on your webpage for users

to select. (50 marks)

Figure 2. An example of displaying cars for selection on the webpage.

4. Provide a “button” to add the car to the reservation “shopping cart”. Use AJAX to check the

availability of the car after clicking the button (the field “availability” is included in

cars.json). If the availability is “True” then add the car to the reservation shopping cart

and prompt success; If the availability is “False” then alert that “Sorry, the car is not

available now. Please try other cars”. (50 marks)

Figure 3. Information prompted after clicking the “Add to cart” button.

5. Provide a button/link to view the reservation shopping cart. Display the cars which have

been added into the reservation shopping cart (hint: use session to store the data). Users

can set the “rent days” or delete cars in the shopping cart. (50 marks).

Figure 4. An example of the reservation shopping cart.

6. Provide the checkout button to check if there are cars in the shopping cart. If no, then alert

“No car has been reserved.” and jump to the first page. If yes, validate the “rental

days” (integer, >0) using JavaScript and navigate to the next page. (30 marks)

7. Design the checkout page which displays a purchase form asking the user to fill in their

delivery details (name, email address, mailing address, city, state, post-code and payment

type). All these fields must be completed for the order to go ahead. Validate the format of

the email address. If all details are filled correctly, then direct the user to a page showing

the delivery details and the cost. (40 marks)

Figure 5. An example of the checkout page.

Submission:

You will submit the assignment details, including URL of the website and a

compressed file containing all your source code through CANVAS after the submission

link is activated, but prior to the due date.

Note that you need to submit both a live link (URL) pointing to your running system as

well as all your source code stored in a compressed file (.zip).

After the indicated deadline submissions will not be accepted!

Collaboration/plagiarism

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:

http://www.gsu.uts.edu.au/rules/16-2.html.

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:

http://wiki.it.uts.edu.au//start/Academic_Integrity.

End ##


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp