Develop a dynamic web application

Assignment Help Management Information Sys
Reference no: EM131194369

Introduction

This is an individual assignment in which you are required to develop a dynamic web application as described below using PHP, MySQL, JavaScript and CSS.

Details of the weight of the assignment and due date are given in the course description.

Task Description

Database Structure

The web application uses a 3-table relational database stored on a server that records the details of movie reviews. The structure of the database is:

REVIEWER (id, name, email, password)

MOVIE (id, title, release_date)

REVIEW (reviewer_id, movie_id, rating, review_date, comment, helpful)

Each record in the REVIEW table refers to one movie reviewed by one reviewer. Primary keys have been underlined.

The reviewer_id and movie_id fields form a compound primary key, and refer to the id fields in the REVIEWER and MOVIE tables respectively.

Both date fields may be stored as either ‘YYYYMMDD' strings, or using MySQL date types. Comment should be of the TEXT datatype.

The rating field is a numeric value between 0 and 10.

The password field should be a VARCHAR field of at least 125 characters.

The helpful field is a numeric value contains a count of the number of people who have found this review useful or interesting.


Initial data

When the database is created it should be populated with data of your own invention. Include this data as part of your written report. Each table should have between 3 and 6 records initially.

Creating the database

Create an SQL file that creates a database on the server, creates the three tables above, and populates it with your initial data.

Initial password data should be generated using, at minimum, the md5() PHP or MySQL function. If possible use the PHP password_hash() or crypt() functions, as available, to generate password hashes. It is acceptable for all initial REVIEWER records to share the same password.

Include a reviewer with email/username ‘tutor' and password ‘guest'.

Test your database by writing a query on the command line that displays all initial data, and include it in your report.

Reviewing movies

Use PHP and CSS to create a page that displays a list of movies.

When a reviewer selects a movie from the list, they should be taken to movie review page where they can see the reviews for that movie, in order from most helpful to least helpful.

Hint: consider passing the id of the movie using the querystring.

Create a form that allows a reviewer to add a review of their own for a movie, if they haven't already. Use appropriate HTML inputs to improve the user experience - that is, consider using drop-downs or radio buttons to present rating selections.

Use Javascript to validate the input, enforcing that the comment field is at least 10 characters in length. Write PHP code to add the review to the database.

User accounts

Write an HTML form that allows new reviewers to sign up to create a review. The form should request a name, email address and password. The password must be hashed before storing it in the database.

Write PHP code to allow reviewers to log in and log out. This will require the use of sessions or cookies. Only allow logged-in reviewers to add new movie reviews. The list of movies and movie review pages should be visible to anybody without logging in.

Aggregate data

For movies that have at least 3 reviews, display the average review at the top of their review page. The average should be calculated using an SQL query.

Create a page that contains a list of reviewers, and for each reviewer the number of movies they have reviewed.

On the movie list page, include a list of top 3 reviewers, ordered by how many people in total found their reviews helpful, from most helpful to least helpful. This should also be calculated using a single SQL query.

Additional task for ITECH6224 Students

On the topic of "Key-Value Databases" identify four (4), relevant, independent resources. Use these resources to write a discussion of the advantages and limitations of Key-Value Databases compared to relational databases in in your own words. Take care to cite appropriately. Word count should be about 500 words.

Further details

Documentation

Include a written report containing:

- Initial data details

- The query you used to test your database

- A list of parts of the assignment you have completed or not completed.

- Details of specific assistance you received from people other than your lecturer or tutor, and the names of those assisting.

Assignment support
This assignment is supported by the first 5 lectures and the first 6 labs. Work on the assignment should be spread over a number of weeks after the relevant lab has been mastered.

Reference no: EM131194369

Questions Cloud

Expense of long-term profits : Evaluate the following statement: Managers should not focus on the current stock value because doing so will lead to an overemphasis on short-term profits at the expense of long-term profits.
United states constitution : Unlike many English language constitutions, the United States Constitution specifically provides for a mechanism for the government to involuntarily take private real property from its citizens.
Write a short definition for each of the molecular compound : Classify each of the following elements as main-group or transition elements. Write a short definition for each of the molecular compound, ionic compound, diatomic molecule, molecular formula and empirical formula.
Sample distribution of the sample mean : If a population is known to be normally distributed, what can be said of the sample distribution of the sample mean drawn from this population?
Develop a dynamic web application : ITECH3224/6224 - Which you are required to develop a dynamic web application as described below using PHP, MySQL, JavaScript and CSS.
What is lean six sigma : What is Lean Six Sigma? Describe the difference between Lean Six Sigma Green Belts, Black Belts, and Master Black belts. Using any resource available (internet, textbook, magazine) explain the process of obtaining these certifications.
Best-fit and best-practices perspectives : 1. Contrast the essential differences between the best-fit and best-practices perspectives.
Relationships and influence : Your initial post for this Discussion Board requires online research and the choice of one suitable source. Please view the Unit 1 Reading PDF for information about what constitutes a suitable source. Do not use the textbook or library articles fo..
What are some of the ways this socialization occurs : Identify an area of practice where change theory may find applicability. Provide examples to support your answer. Comment on the inherent weaknesses in change theory that may impact real life situations or give rise to difficulties in the process ..

Reviews

Write a Review

Management Information Sys Questions & Answers

  What are the disadvantages to implementing fiber optic cable

What advantages do fiber optic cables offer over twisted pair or other media choices? What are the disadvantages to implementing fiber optic cables

  Wireless home network

From the e-activity, identify the key reasons for selecting your wirless home router. Discuss the type of encryption it uses and explain the reason(s) why you believe this method of encryption is more superior than its contemporaries.

  Discuss how your selected strategy can be used in planning

Discuss how your selected strategy can be used in the planning (what do we need to do?) and programming (how will we do it?) phases of budget preparation to identify less costly solutions for implementing technical, operational, and management con..

  Business and technologycan you help me to get started with

business and technologycan you help me to get started with thistechnology is an important component of the business

  Did your interviewer use any of the ethical tests

How did you prepare for the interview? Did any questions 'stump' you? How did you feel during the interview? How did you feel after the interview? Did your interviewer use any of the ethical tests? What interview tips do you have for your peers?

  Compare and contrast accessing the internet via a modem

Compare and contrast accessing the Internet via a modem, DSL, a cable modem, and satellite. Identify which of these access mechanisms is the most popular today, and identify which will be most widely used five to ten years from now.

  Provide one example of some kind of information technology

In your first posting, you are expected to provide one example of some kind of information technology tool that helps organizations share knowledge.

  Value chain modeli need help understanding why volkswagen

value chain modeli need help understanding why volkswagen uses the value chain model? describe why they use this

  Principle of communication studies

Create a paper that, in some way, demonstrates your acquired knowledge of a core principle of communication studies - Issues within interpersonal communication.

  To what events must the mls system respond

Who are the stakeholders for the issues related to real estate in your community, and what are their main interests and what types of information does the board collect and make available to its members and to the community?

  Software application implementationprepare a paper

software application implementationprepare a paper describing a successful or unsuccessful software application

  Important information about replacement chain

Important information about Replacement Chain - Should the firm replace its old knitting machine, and if so, which new machine should it use?

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd