We can find many articles related to uploading, viewing, and downloading files. Murali's latest article is written on the basic concept of uploading and managing files, and shows us how to create a magic with a little PHP and MySQL. Learn how to properly manage duplicate files through versioning.
File Version Management in PHP - Program Plan (Page 2 of 5 )
I drafted a plan on what is needed for this file version management program. Below are some features:
When a user uploads a file for the first time, the system should upload the file in the specified folder and insert the file details like file name, size, and type in the database table.
When the user uploads a file for the second time (the filename has to be the same), the system will compare the size, date and time of the existing file and of the file being uploaded, and automatically assign a new version for the uploaded file if there is a difference. If there is no difference, then the existing file will be retained and a message will be displayed for the user.
A check box allows the user to replace the existing file. Clicking this option will replace the exiting file. Note that only the latest version of the file can be replaced in this case, and not an older one.
The database will maintain file list and version details. Users should be able to view all the versions of a file and download the required version.
While displaying the file list, the program displays all the versions of files under one name. For example, if the file name is xyz.doc and its other versions are xyz_VERSION1.doc, xyz_VERSION2.doc, xyz_VERSION3.doc, xyz_VERSION4.doc, xyz_VERSION5.doc and so on. The program will display filename as xyz.doc for all the versions.
The program allows users to delete the file. Clicking on delete will ask for confirmation before proceeding.