You are a web developer working for a company that specialises in developing web-based solutions. Your company has been awarded a contract to design a dynamic and interactive web site for Northumbria Music Club (NMC). You have been given the task of developing a small part of the final solution; a facility to allow CDs (including details of artists and publishers) to be listed and also for users to enter a review for a particular CD (this review will be stored in the MySQL database).

Part A: Web Solution Prototype

You will be expected to develop your prototype using the database tables and data that will be created in your mysql database on numyspace when you run the sql script accompanying this file. Instructions about how to run the script are included at the top of the sql script itself. Note also there is a diagram explaining the relations at the end of this document.

Interface requirements:

  • Create a home page for the NMC called index.php or index.html (this will mean that this page will automatically load when your core address is entered without any need to enter the filename. This home page will have links to the other web site sections, including a link to the critical evaluation (refer to the next section for details).
  • Create a facility that will display an alphabetical list of the CDs, along with summary information (publisher(s), year of publication and price). The listing should be ordered by category within which they are ordered by CD title.
  • This listing should also include a method for the user to choose a category of CD and see only the CDs of that category – whichever mechanism is chosen to allow the user to choose a category should also include the ability to show all CDs regardless of category.
  • Provide some form of link from the previous listing that will allow:
    • the user to view all of the information for a particular CD including all the artists on the CD; the user to view all of the information for a particular CD including all the artists on the CD;
    • allow the user to view all of the reviews for a particular CD.
  • Create a facility that will allow a user to enter a new review against a particular CD.
  • Each review allows the user to be able to express their opinion on a particular film. The review will also record the user’s name and date submitted. For this prototype allow the tester to choose from a list generated from the nmc_user table the user for whom they are writing the review. (Note that some of the information you enter into this new review you will ask the user for, other information you should be able to generate automatically.)

All the data about CDs shown on your pages must be dynamically derived from the database – so that if the information in the database changed your pages would change – no such data should be 'hard-coded' into your pages. If your pages aren't dynamic in this respect they will deemed to have not met the requirements.

Please also notice that some of the CD titles may well contain characters that might cause your pages to not validate, you must not change such data in the database but make such content ‘safe’ using appropriate PHP coding.

Please think about how a user is likely to ‘drive’ the site. If someone chooses a category of CDs, they should see list of all the matching CDs; then directly from that listing they should be able to ‘drill-down’ to see detailed information on any one. Then, when looking at a CD detail, there should be an easy way for a user to see reviews for that chosen CD and to add a review for that chosen CD without them having to re-navigate via the menu or have to re-choose the CD.

Coding requirements:

  • Use an XHTML 1.0 Transitional or Strict DOCTYPE on all web pages. You must not use frames or any other doctype.
  • The web site must NOT be developed using Dreamweaver, Frontpage or any other such package that writes html, javascript or PHP code for you.
  • All pages must validate, without errors, as xhtml 1 transitional using the validator at http://validator.w3.org/ You must include, at the bottom of each page, a referrer link to the above validator so that it is easy to check the pages' error-free status. (you'll find details about how to do this on the w3 validator site. Any page not containing such a link will be assumed to be not being xhtml compliant.
  • Your web site must be uploaded to the public_html directory on your Unix (‘numyspace’) account. Any web pages not uploaded to that directory, or any 'orphan' pages (pages that exist, but have no link(s) to them from other pages i.e. from index.html or index.php), will not be marked.
  • Use a separate subdirectory within public_html to store all images that you may use. Have incorporated password protection for your site using .htaccess. (You MUST provide your password details in the “Comments” box when submitting your web files to the Digital Drop Box. Failure to provide a username and password which results in your pages being inaccessible will result in a zero mark). Your password protection can either be for the entire site or just for the pages that make up your critical evaluation
  • You should have appropriate rights assigned to all directories and files
  • Use an external CSS file(s) to apply formatting (the use of tags is not allowed).
  • Comment your XHTML, CSS, and PHP code.
  • Use appropriate naming conventions within your code and indentation to appropriately structure your code.
  • Use self-authored functions for code re-use whenever relevant, in order to minimise repeating code.

Part B: Critical Evaluation

You are required to create a web page that contains your critical evaluation (not forgetting to place a link to it from the index.html or index.php home page). This critical evaluation should look at general theory and practice and contrast that with your own work and experience. You should aim to demonstrate your knowledge of the wider issues relating to work in this area and the theory and literature that underpins it. The emphasis should be on evaluation within the context of theory, It should not be merely a story of what you did. Your evaluation must cover the following points:

  • The use of external CSS as a means of separating style from content.
  • The issues surrounding adherence to w3 standards (XHTML 1.0 Transitional/Strict).
  • The issues involved in designing for a heterogeneous client environment and specifically those surrounding cross browser compatibility and current disability legislation

Note:

  • The same coding requirements as specified in Part A also apply to this section (Part B).
  • This section should be between 1,500 and 2,000 words in length.
  • Use section headings to clearly identify each of the above areas.
  • If you reference any source (no matter in what form), they must be properly quoted and referenced using the Harvard referencing convention both in the text and in a reference section at the end of the evaluation.
Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.