Database structure

The web application uses a 4-table relational database stored on a server that records a number of suppliers of various items required by several projects and the orders for items as follows. The structure of each table is given by: < TABLE_NAME >(< PRIMARY_KEY >, OTHER FIELDS ........)

SUPPLIERS (SNAME, MOBILE, POSTCODE)
ITEMS(INAME, NUMBER_IN_PACKAGE, DESCRIPTION)
PROJECTS(PNAME, DEPARTMENT)
ORDERS(SNAME, INAME, PNAME, QUANTITY)

Each order refers to a single supplier requesting supply of a single item for a single project. No nulls are permitted. The ORDERS table has a primary key that combines the primary keys of the other 3 tables.

Initial data

When the database is set up it should be populated with data that you have chosen. Display this data as part of your documentation. Each table should have from 3 to 6 records initially.

Order forms

Before implementing the database, use PHP and CSS to create a form that enables a user to make an order to a supplier for an item required for a specified project. You should use drop down boxes containing the initial data for user-friendly selection of supplier, item and project.

Use JavaScript to ensure that an entry has been made in each element of the form and that the entry for QUANTITY is numerical.

Test the form by posting the values of the entries in the order form to a separate php file that will display the order details.

Creating the database

Use MySQL commands from the command line to create a database on the server with the structure specified and populated with the initial data.

Test the database by writing a query on the command line that displays all initial orders.

Write PHP code that will enable users to create an account giving them access to the database with permission to query the database and add new orders. Account usernames will generally be email addresses. However include username ‘tutor’ with password ‘guest’ as one of the accounts. User passwords should be encrypted with an MD5() hash function.

Querying the database

Write PHP code that connects the database with the application. Enable the user to interrogate the database in a variety of ways, using a column of 5 buttons, 1 per query, with an appropriate description attached. Queries should demonstrate at least the ability to select records, select fields, display in sorted form and count.

Generating new orders

Allow recognised users to submit a valid form that creates an additional record being written to the ORDERS table.

Additional task for ITECH6224 students

On the topic of “Advantages of server-side scripting” identify four (4), relevant, independent resources. Use these resources to discuss the topic in about 500 words. Take care to cite appropriately.

Documentation

Include in a Word document:

  • Initial data details
  • A list of either parts of the assignment you have completed or parts not completed
  • Details of specific assistance received from people other than lecturer or tutor and the names of those assisting
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.