Signature Assignment
Signature Assignment
Purpose of Assignment
The signature assignment will leverage all of the skills learned (as outlined below in the course outcomes section) during the course to create a working PHP-MySQL-based blogging website.
Program Student Learning Outcomes:
Course Outcomes
1. Explore contemporary tools in developing database websites
2. Develop web pages using PHP syntax for basic programming structures (i.e. conditionals, iterations, arrays, functions, objects etc.)
3. Connect to and maintain data in a relational database Design and implement forms and controls that demonstrate an awareness of user-centered design
4. Access and manage file I/O from PHP pages
5. Handle exceptions, including user data entry errors appropriately
6. Authenticate users and manage user sessions in a PHP application
7. Demonstrate an awareness of security best practices in PHP development
Assignment Description
A blogging database will be provided as outlined in the ERD below
The entities in the DB are
· Users
· Posts
· Tags
The relationships are
· 1:M A user may make zero or more posts. A post is made by a single user
· M:N A post may have zero or more tags. A tag can be used by zero or more posts.
Students will have to
1. Install the database in MySQL
2. Create a web application that has the following functionality
a. Allows users to create an account
b. Allows users to login
c. Allows administrators to login
d. Allows users to search the database by keywords/authors/tags/dates
e. Allows users to create a new blog entry with attributes:
i. Blog content
ii. Blog date
iii. Blog author
iv. Blog tags
f. Allows users to browse the blog entries
g. Allows users to display a blog entry
h. Allows users to logout
i. Allows administrators to edit and/or delete a post
3. Enhance the DB by introducing a 1:1 relationships between administrators and User
Criteria
for Success
All functionality will be tested. The test procedure will be posted on Canvas allowing you to test your solution before submission.
Deliverables
A ZIP of all PHP source files, MySQL database files and required documentation shall be submitted Canvas.
The MWB (MySQL Workbench) file shall include
1. ERD
2. Views: SQL queries providing required functionality
Some SQL queries will be provided
Others will be developed by the student
A framework for the PHP and HTML sources will be developed week by week.
Rubric(s)
Criteria
(examples shown below) |
Above Standard 100:85 % |
Standard
85:70 % |
Below Standard 70:0 % |
||||||
User Account Creation |
All or some error paths are coded . |
User is able to successfully create an account |
Code will not work, errors out Not implemented |
||||||
Account Login |
All or some error paths are coded |
User is able to successfully login |
|||||||
Search Blog Entries by Author, Tag, Keyword |
User is able to successfully search by some or all means |
||||||||
Create Blog Entries |
User can successfully create a new blog entry |
||||||||
Browse Blog Entries |
User is able to scroll through all blog entry summaries |
||||||||
Display Selected Blog |
User is able to display the contents of a selected blog |
||||||||
Logout |
Logout works corrrectly |
||||||||
Admin |
Administrator is able to 1. Edit a post 2. Delete a post |
Administrator functionality is provided but with errors |
Administrator functionality is missing |
||||||
DB Enhancement |
A 1:1 relationship between admins and User is correctly implemented |
A 1:1 relationship between admins and User is implemented but contains some errors |
A 1:1 relationship between admins and User is not implemented |