This week’s post will be focusing on the design of the database. In this post, the way forward for the database development and PHP coding. The post will include an Entity Relationship diagram with the details of each table and all relationships within the database. It will also include a second Gantt chart with the plan of progress for the next 5 weeks, until the end of the project.
The front end of the website would have little importance if we would just leave it the way it is. Although functional, server side development has become an integral part of web development to be able to include interactivity and customisation for the user on every online site. Back 20 years ago, when Internet was just in its beginning, websites were simply informational, displaying commercial and business information, with little if any customisation to the decisions being made by the user.
With the introduction of server side development, websites could now be customised according to the decisions and needs taken by the user. One very simple and basic example used in the FireFile website is that each user is only given access to view/download the folders and files he himself has uploaded or has share permissions upon. It would be a disaster had all users have access to all the folders and files in the system. This can be achieved through server-side scripting, in this case made through php.
The validations made through php need to be done through a relational database which handles users, and sharing permissions. These will all be stored in the database, and the website’s function is to create, read, update and delete records in the different tables there, to then display the results to the user. The figure below shows the Entity Relationship Diagram for the FireFile database.
On the other hand, the following weeks will be dedicated to server side scripting through php. Login validations against the data already available in the database, the creation of new users, files, folders, and the sharing permissions on each of them are all handled by the database itlsef. The following gantt chart will show the progress of the project from now till its termination.