Simple PHP MVC Blog System
Description
This PHP Blog System has an MVC pattern, uses Traits (PHP 5.4), Namespace (PHP 5.3), Singleton pattern, PDO (PHP 5.1) and the new PHP Password Hashing feature (PHP 5.5).
The project was a PHP Challenge Project I have done.
Why this MVC Blog System can be very Useful for You?
If you need to code a simple website under a Professional and very nice/clean code (as I really enjoy doing), this script will be very useful in order to start on good basis and save time and money.
However, if you need to build a blog system, again this project can be used as a framework to start your project easily under a good development pattern and good development practice and organization.
Requirements that were Requested for the Project
Requirements
- The project should be written in object-oriented PHP targeting version 5.5 or higher
- It should be all self-written, no existing frameworks or libraries
- It should have good security (e.g., hashed passwords, protect against SQL injection, shouldn't have any error when we try to change URL query strings or to hack it, etc)
- Should use a MySQL database to store admin account and article data
Specification
Build a simple blog with the following functionalities
The Frontend
- List of blog articles showing the title, body truncated to 100 characters, and date. It should show only the latest 5 articles
- Single blog article showing the title, full body, and the date
The Backend
- List of all the blog articles
- Possibility to add a new blog article with a title and body. The title should allow a maximum of 50 characters
- Possibility to edit an existing blog article
- Possibility to delete an article
- Logout feature for the admin user
HTML and CSS code should be kept to the minimum needed to make the website functional โ This project is purely to assess how you approach the problem and not how good it looks.
Server Requirements of the Web App
-
Application Server PHP 5.5.0 or higher.
-
PHP Extension mbstring
-
Database MySQL/MariaDB 5 or higher.
The Author
Contact the Author
By email at: phy [AT] hizup [D0T] uk
License
This blog system (PHP script) is under Lesser General Public License (LGPL); See the LICENSE.txt file for more information.