School Management System in PHP CodeIgniter with Source Code

A fully functional project based on School Management System which uses PHP Language with CodeIgniter Web Framework. Following PHP CodeIgniter project contains all the essential features which can be in use for the second year, final year IT students for their college projects. It has a large number of features that will allow users to manage each and every record present within a school. This system as well as the web application’s concept is all clear, it’s the same as real-life scenarios and well-implemented on it. To download free School Management System project in PHP CodeIgniter Framework with source code files, please scroll down to the bottom of this post for the Download button.

About School Management System PHP CodeIgniter Project

Moving on, this School Management System project in PHP CodeIgniter focuses mainly on dealing with students, teachers, and their respective attendance, classes, marks, etc. Also, the system displays all the available information of students, their classes, subject, teachers, mark sheets, payments, and much more. In addition, the system allows managing students, teachers by just entering their name, age, address, contact info, class, and photo. The project only contains an Admin Panel. In an overview of this web application, the admin has access to everything and manages them easily. The admin has the right to manage the classes, their sections, and subjects. For classes, he/she should enter the names and numeric values of it.

Section, Subjects, and Attendance

For the class section, he/she should enter the names of each by selecting a teacher’s name. In addition, the system allows users to set up subjects for each class by assigning teachers’ names to them. This one’s important for maintaining a particular student’s mark sheet and managing their marks. Another best thing about this whole project is about attendance section. The attendance section contains two parts: Student and Teacher. Both students and teachers have to maintain their attendance. For students, the admin should enter a date, select class, and section which fetches all the available students of that particular terms. Afterward, the user can simply take action against each student. Here action means Present, Absent, and Late for Attendance. And same goes for the teacher’s side too except the teacher does not require a selection of classes.

Attendance Report and Student’s Mark Sheet

After maintaining the attendance, now the user can have a look a the overview of their attendance. In order to view the attendance report, the user should select attendance type i.e. students or by teachers. By selecting students, the user has to select a date, class, and section. Whereas, for the teacher, he/she should select date only. After generating the report, the user can have an overview of attendance from the beginning until the end. The system displays report by indicating with different labels. These labels are Red for Absent, Green for Present, and Yellow for Late. Moving towards the mark sheet, an admin has the right to manage it too. For this, an admin has to enter the mark sheet name by selecting available classes. In fact, different classes will contain different mark sheets.

Student’s Marks, and Payment

As soon as the admin sets the mark sheet, the user has to manage marks for each available student. To manage the marks of students, the subjects are important. Earlier, the user needs to set subjects for each class with their total marks and so on. Now, the user has to select class, section, and set marks on each subject for students. After setting up obtained marks for particular students, the system generates a mark sheet for it. The mark sheet shows the subject name with total marks, obtained marks, and overall percentage. And for this, each class should have its own subjects and teachers. Under the accounting section, the user can set up payments for the students with payment name, date, and amount. After setting up, the mentioned student’s records will fall upon the pending status for payments.

Payment Management, Income and Expenses

The payment section contains all the records that fall upon different categories like paid, unpaid, and pending. From the payment section, an admin can clear their student’s payment. For that, the admin needs to enter the current date, paid amount and select status if it’s paid, unpaid, or pending. In addition, the user also needs to set the payment type i.e. full payment or installment. All these student’s payment falls upon school’s income. The admin can also view overall income from the income section. Also, the user can have a look at their current budget, expenses, and income. In addition to it, the admin can manage their expenses by entering expense title, and amount. This will result in a decrement in the total budget. And finally, the system generates the total budget by calculating lifetime income and expenses.

Last but not least, a clean and simple dashboard is presented with simple color combinations for greater user experience while using this School Management System project in PHP MySQL CodeIgniter Framework. For its UI elements, a free open-source CSS framework; Bootstrap is on board with some Vanilla CSS too. Presenting a new School Management System Project in PHP MySQL CodeIgniter which includes an admin panel that contains all the top and essential features to follow up, and a knowledgeable resource for learning purposes.

Available Features:
  • Admin Panel
  • Class and Section Management
  • Manage subjects
  • Student Management
  • Teacher Management
  • Attendance Management (Students and Teacher)
  • View Attendance Report
  • Manage Student’s Marks
  • Mark Sheet Management
  • Student’s Payment Management
  • Maintain Income and Expenses
  • Generates Current Budget
Project Name:School Management System
Language/s Used:PHP with CodeIgniter Web Framework
PHP version (Recommended):5.6.3
Type:Web Application
Developer:Sani Kamal
School Management System in PHP CodeIgniter Project Information

Instructions: How to Run?

  • After you finish downloading the project, unzip the project file and head over to your XAMPP directory.
  • There you’ll find a folder naming “htdocs”.
  • Inside the “htdocs” folder, paste the project folder (not the .zip one, but the extracted one).
  • Open your favorite browser; we recommend using Google Chrome or Mozilla Firefox.
  • Then, go to URL “http://localhost/phpmyadmin“.
  • Create a Database with a name that is provided inside the “01 LOGIN DETAILS & PROJECT INFO.txt”.
  • Click on the “Import” tab and choose the database file (.sql) which is provided under the folder naming “DATABASE FILE”.
  • After setting up all these, go to URL “http://localhost/[ PROJECT_FOLDER_NAME ]/“
  • All the login details are provided inside the project folder, check that out and enter in order to use it.

And there you have it, a full setup of the School Management System project in PHP CodeIgniter. For this particular PHP project, PHP Version 5.6.3 is required because the project might not operate well with the latest PHP version. So, users with the latest PHP version (more than 5.6) might face various problems while operating it. As a result, you’ll need to downgrade your PHP version (only if you’re using the latest version) at the moment. Download Free School Management System Project in PHP MySQL CodeIgniter Source Code. So, this school system is a fully functional project for all the beginner as well as the intermediate levels that broads vast knowledge into such PHP web applications. In conclusion, this whole PHP project with free source code is an absolute project and a meaningful way for the users to learn and explore more about it.

Free Download School Management System Project in PHP MySQL CodeIgniter with Source Code:
Click the Download Button Below to Start Downloading

Note: Only for Educational Purpose


  1. seems like the username or the password is wrong. can you mention the correct one? It is giving msg like incorrect combination of username and password

    1. The login details are correct. If you’ve got such an error message then, it’s probably due to your LATEST PHP version. This project requires PHP 5.6 (as mentioned in the project overview table)

  2. A PHP Error was encountered
    Severity: 8192

    Message: Return type of CI_Session_files_driver::open($save_ path, $ name) should either be compatible with SessionHandlerInterface::open(string $path, string $ name): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

    Filename: drivers………………..

  3. I have done everything as instructed bit this is what is coming

    SMS Debug ===> Error Encountered!
    Severity: 8192……………


  4. when i installed this in the cpanel on my site it showing this

    School Management System (An Error Was Encountered)
    The Encrypt library requires the Mcrypt extension.

Leave a Reply

Your email address will not be published. Required fields are marked *