1. Homepage
  2. Programming
  3. FIT2104 - Web database interface - Assignment 2: Web-database Application for School Courses and Students

FIT2104 - Web database interface - Assignment 2: Web-database Application for School Courses and Students

Engage in a Conversation
AustraliaMonash UniversityFIT2104Web database interfacePHPHTML5

Project descriptions CourseNana.COM

Dane Oldman is a professional musician and music teacher specialised in children’s music education. He opened Little Dreamer Music School about a decade ago. Although there’s an online presence for the school, it’s kind of outdated and doesn’t do much other than demonstrating the school’s music programs. As there are more and more students enrolled in the school each year, Dane is thinking about building a system to help him manage students and course enrolments to improve productivity so he can focus on teaching instead of administration. CourseNana.COM

Dane was impressed with your initial proposal and has decided to give you the job. However his budget has been limited, meaning Dane can only afford to hire you to implement some functions at this stage. So he has decided to focus on the enrollment-management features for the moment and to implement the students/parents-oriented functions in the future, depending on how well the first stage works. CourseNana.COM

The expectation of this assignment is to develop a web-database application for Dane that will enable the administration of courses and students. CourseNana.COM

General requirements CourseNana.COM

First of all, websites are meant to be user-centric. Completion of each individual task may earn you marks for that specific task, but the website design and usability are also to be taken into account. You may receive over-the-top deductions if the website is poorly designed. On the contrary, if your site is well designed with good usability, you may receive extra merits. CourseNana.COM

The database must be a MySQL database and the web application must use PHP (with pdo_mysql interface). PHP rapid development frameworks (e.g. Laravel, CakePHP, CodeIgniter, etc.) are not allowed. The connection between the web pages and the database must be specified in one place only within your application (as a connection/configuration file or similar). Additionally, you must implement features which guard against SQL injection on all pages (the minimum requirement in such regard would be the use of prepared statements throughout). CourseNana.COM

The requirements for this assignment are based on the learning objectives in FIT2104. Thus it’s important that you will watch all lectures, read all required and extended materials, as well as attend all labs and complete all lab exercises. Your participation in the labs and the performance on the exercise tasks may be taken into consideration of this assignment. CourseNana.COM

Connections to your assignment 1 CourseNana.COM

It is intended that you implement the application that you have proposed and described in the assignment 1. And because we assume that you have discussed with Dane on what functions need to be delivered in this stage and what details need to be changed, data model and most of the functions will be pre-defined for you in the format of a few resources listed on Moodle along with this assignment specification document. You’ll need to implement the functionalities described in the following section, and provide sufficient and realistic demo data, and add them to the database to make the system usable when submitted: CourseNana.COM

●  Sufficient data means each major table should contains at least 15 records, for example, 15 courses across at least 6 categories and at least 2 image per courses, 20 students, etc. depending on how many tasks you have completed CourseNana.COM

●  Realistic data means you should not use random garbage (like “asdfasdf” as client’s name) in your records. Instead use records that look legit and fit the purpose of the system. This does not mean you should use real data (like real names for the people you know), and images used must be royalty-free. Realistic data can be generated with services like generatedata.com, and you can google for how to get royalty-free images CourseNana.COM

If you have functionalities that are described in your assignment 1 submission, but not in this specification (or significantly different in terms of achieving business goals), you should not implement those functionalities in this assignment, as the scope of this assignment is defined. However you should consider discussing those functionality on the forum or during weekly labs with your tutor, as we might provide help to enable you to achieve extra study goals. CourseNana.COM

If you have found that your assignment 1 ideas are quite different from the scope of this assignment, you should abandon those ideas and start from scratch. This does not mean you’ll need to resubmit your assignment 1. CourseNana.COM

One last reminder - ALL DATABASE ACCESS, FILE ACCESS AND CODE DISPLAY FOR THIS ASSIGNMENT MUST BE DONE USING PHP CourseNana.COM

Requirements CourseNana.COM

Basic requirements CourseNana.COM

Completing basic requirements below may earn you up to a passing grade for this assignment. CourseNana.COM

Database schema: First, you will need to create a database with the given data model provided along with the assignment specifications. That means you’ll need to decide if it contains all fields required to complete the following tasks, create a final schema for the project, whether data type and length is suitable for each field, and the correct constraints for any foreign keys involved. CourseNana.COM

Security/Authentication: Security is a concern here and only Dane (and potentially his staff) should have access to the system. A valid username and password must be entered in a login page to gain access to any of the pages on the site (except the login page and pages that are designed to be publicly available). Adequate security measures with passwords should be considered. CourseNana.COM

Dashboard page: The dashboard page is the first page a user would see once logged in (i.e. the index). If a user is not logged in, the user should be prompted to login first. A navigation menu must be visible at all times when the user is managing their business on the website. The menu must provide links to pages offering all functionality from here required in the assignment. Other contents on the dashboard page are welcomed but not required. CourseNana.COM

Courses pages: The page will allow Dane to browse and search courses offered by entering a keyword that partially or exactly matches the course’s name. That means: CourseNana.COM

●  A suitably formatted and sorted list, which contains courses that match the entered search criteria, should be displayed, OR CourseNana.COM

●  A message indicating that no course matches the entered search criteria
And Dane should be able to manage courses from a list, and to upload and display one or more images of a course. That means:
CourseNana.COM

●  Inspect the details of a selected course, including images of such course CourseNana.COM

●  Add a new course, with the ability to upload one or more images, and assign the course to one specific category CourseNana.COM

●  Modify the details of the selected course, including add new images of the course, and change the course’s category CourseNana.COM

●  Delete the selected course along with all its images CourseNana.COM

All uploaded course images must be stored in a subdirectory called course_images
In addition to above requirements, all user-input fields need to be validated to ensure data integrity. CourseNana.COM

This can be done by either: CourseNana.COM

●  HTML5 built-in form validation CourseNana.COM

●  External Javascript validation libraries
Also ensure that any database errors on these pages are captured properly, and a user-friendly error message is displayed to the user if any error occurs. Your application should not crash. Students pages: This page will allow Dane to manage (list, add, modify and delete) his students.
CourseNana.COM

Also you’ll need to allow Dane to conveniently list students who have agreed to subscribe - he needs to send periodics or newsletter to his students/parents. Preferably, you can help Dane by generating a list of email addresses which he can directly paste into a BCC field. CourseNana.COM

Also ensure that any database errors on these pages are captured properly, and a user-friendly error message is displayed to the user if any error occurs. Your application should not crash. CourseNana.COM

Category pages: This page will allow Dane to manage (list, view details, add, modify and delete) the (courses) category list. CourseNana.COM

Also ensure that any database errors on these pages are captured properly, and a user-friendly error message is displayed to the user if any error occurs. Your application should not crash. CourseNana.COM

Optional requirements - Intermediate CourseNana.COM

Once you have completed all basic requirements above, you may complete the following optional requirements in order to earn up to a credit. You may need to modify your database schema to fit any additional data that needs to be stored. CourseNana.COM

Homepage: Instead of using the staff dashboard page as index, a publicly available homepage needs to be the first page a user sees when visiting the website. This is the business presence of Dane’s music school and feel free to populate some related information about the school and courses to attract potential students and parents. Also this page should contain navigations that redirect to the contact us page as well as the login page. CourseNana.COM

Contact Us page: The contact page should include a basic contact form consisting of the customer’s name, email address, phone number and message they would like to leave. Once the form is submitted, its content should be formatted into an easy-to-read format and sent to Dane’s email address: contact_littledreamermusic@example.com (yes, this is not a real email address) using PHP’s mail(). This page is also publicly available. CourseNana.COM

Students pages: In addition to basic requirements regarding students pages, Dane would also like to be able to generate a nicely formatted PDF document containing name tag labels (containing student’s name and/or course name) that can be printed on A4 label sheets similar to this one. CourseNana.COM

Tailored classes pages: This page will allow Dane to manage (list, view details, add, modify and delete) his tailored classes. CourseNana.COM

Also ensure that any database errors on these pages are captured properly, and a user-friendly error message is displayed to the user if any error occurs. Your application should not crash. CourseNana.COM

Optional requirements - Advanced CourseNana.COM

Once you have completed all basic and intermediate optional requirements above, you may complete the following optional requirements in order to earn up to a high distinction grade. You may need to modify your database schema to fit any additional data that needs to be stored. CourseNana.COM

Students pages: You’ll need to modify the students pages so that Dane can choose one or more courses (from a list of existing courses) a student is enrolled in when adding or modifying a student, and create a new page to check the details of a student, including all courses the student is currently enrolled in. It’s likely you’ll need to modify the schema to make this work. CourseNana.COM

Category pages: You’ll need to modify the category pages so that a category can be a child of another category. Make sure Dane can choose a parent category from a list of existing categories. It’s likely you’ll need to modify the schema to make this work. CourseNana.COM

Images page: Dane may want to be able to delete one or more product image files from the website. This page will list all images in the system. You’ll need to add a checkbox for each image, so Dane can select multiple images and delete them from both the database table and the filesystem folder. CourseNana.COM

NOTE: This function should be driven by the database records. In other words, if an image file is present in the filesystem, but is not assigned to a product in the database (i.e. being orphaned), you can ignore them. CourseNana.COM

Also ensure that any database errors on these pages are captured properly, and a user-friendly error message is displayed to the user if any error occurs. Your application should not crash. CourseNana.COM

Overall aesthetics: You can implement Bootstrap templates to the website to make it more appealing to the users. Also you may implement various JavaScript plugins to further improve the usability of the website. This includes but not limited to: CourseNana.COM

●  Use Bootstrap templates to make the website responsive (fits smaller screens) CourseNana.COM

●  Use Datatables or similar to make tables more interactive and searchable CourseNana.COM

●  Use Select2.js or similar to make dropdown lists/multiple select boxes more user friendly etc CourseNana.COM

Get in Touch with Our Experts

WeChat (微信) WeChat (微信)
Whatsapp WhatsApp
Australia代写,Monash University代写,FIT2104代写,Web database interface代写,PHP代写,HTML5代写,Australia代编,Monash University代编,FIT2104代编,Web database interface代编,PHP代编,HTML5代编,Australia代考,Monash University代考,FIT2104代考,Web database interface代考,PHP代考,HTML5代考,Australiahelp,Monash Universityhelp,FIT2104help,Web database interfacehelp,PHPhelp,HTML5help,Australia作业代写,Monash University作业代写,FIT2104作业代写,Web database interface作业代写,PHP作业代写,HTML5作业代写,Australia编程代写,Monash University编程代写,FIT2104编程代写,Web database interface编程代写,PHP编程代写,HTML5编程代写,Australiaprogramming help,Monash Universityprogramming help,FIT2104programming help,Web database interfaceprogramming help,PHPprogramming help,HTML5programming help,Australiaassignment help,Monash Universityassignment help,FIT2104assignment help,Web database interfaceassignment help,PHPassignment help,HTML5assignment help,Australiasolution,Monash Universitysolution,FIT2104solution,Web database interfacesolution,PHPsolution,HTML5solution,