Human Resource Management System in PHP CodeIgniter with Source Code

A fully functional project based on Human Resource 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 final-year IT students for their college projects. It has a number of features that will allow users to manage all the activities of a company. 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 Human Resource Management system project in PHP MySQL CodeIgniter Framework with source code files, please scroll down to the bottom of this post for the Download button.

About Human Resource Management System PHP Project

In particular, this HR Management System project in PHP CodeIgniter focuses mainly on keeping track of the company with respect to their employees. Also, the system displays all the categories with their respective details. In addition, the system allows managing departments, assets, payroll, projects, and more. Evidently, this project contains an admin panel with an employee panel as well. In an overview of this web application, an employee has a minor role and control over the system. He/she can manage personal profiles, view assigned projects and tasks. Here, an employee can process his/her leave application by filling up the required details. All the leave applications are sent for approval status from the administrator. However, the admin has the right to set employee’s account. By default, the system automatically sets these users’ login details as their contact numbers.

Administrative Panel and Employee Management

An administrator has full control over the system. He/she can manage users, departments, designations, payroll, and so on. Here, each and every section has its own respective details such as name and other important details which is a kind of mandatory field. Here, an admin first has to set up various departments and designations in order to fill up their respective staff members. Second, the user has to manage employees with respect to their departments, designation, and other details. In fact, there is a large number of fields in order to be fulfilled by the admin or by the employee. These fields consist of topics regarding their address, experience, banking details, social media handles, salary details, and more. To be honest, this whole system works and is more than an employee management system or a payroll management system. As it contains a wide range of important features.

Attendance Management System

Each organization or a company must have its own attendance system, so this particular project contains a simple attendance system too. In order to maintain proper attendance of staff members, the administrator can simply put up a bulk attendance or a single one. To be precise, the user has to select any of the available employees, set their check-in/out time and locations of their work. As a result, the system automatically calculates their total working hours. Besides, the administrator can list all the attendance as well as view the attendance report. For this, the user has to input months and select an employee. Whereas, an employee does not have access to view his/her own attendance report or control it through any means. Meaning, all these controls fall upon the hands of the administrator only.

Employee Leave Management System

Employee leave management system is also known as one of the key features of the human resource system. As mentioned earlier, an employee can process their leave application from their own respective account. The only thing is that an admin has the right to control their approval status. Here, an admin can simply look upon their leave subject, reason, and total duration. And after that, the user either has to approve or decline the leave application. Regarding leave history, the employee, as well as admin members, can have a brief overview of each. In fact, the system allows fetching a total of remaining leave days for each employee. Moreover, the admin can also process the leave application form by selecting any of the employees. With it, this particular section completes the whole meaning of the employee leave management system by having its essential aspects on to the system.

Project and Task Management System

On one hand, the admin can add a list of projects under various categories. Such as upcoming, running, and completed. Here, the administrator has to provide a few details regarding the project such as name, summary, description, starting and ending dates. After the management of the project for the company, now an admin can assign multiple tasks to multiple active employees. The best thing about this is that the system allows adding a project leader with a number of collaborators in order to complete it. In fact, we can call it teamwork within the company set by the admin. Moreover, the employee can view details regarding their assigned task from their own respective account too. In addition to it, there’s also a field visit section where an admin can manage employees under the section too. Besides, the project section requires a number of other details such as work files.

Employee Payroll Management System

With it, here comes an important section for this system. The very first thing to mention out here is that each employee must have their salary details filled up in order to make it work out for payroll. As soon as the employee has their salary details, he/she is eligible for the payroll process. It’s quite simple and worth mentioning because the system requires the name of the employee, their salary months in order to fetch their total salaries. Here, the admin has to set up salary arrangements and provide some information if he/she has some deduction parts. If not, the system generates a payroll slip. But before that, the admin has the right to select a method of payment and payment status. In addition to it, the system generates a payment slip with all the important salary details. Also, the user can print out the payment invoices too.

Loan Management System

Talking about the employee loan management section, this particular section allows the system to have records of employees’ loan status. Here, employees’ loan status refers to a condition where the company can grant some loan to their employees under a special condition. Talking furthermore about it, an employee can take up to their requested amount as a loan lent from the company. For this, an admin has to provide various details. Such as employee name, amount, install period, install amount, loan number, status, and other details. Additionally, the admin can manage installment loans with similar procedures. To be precise, an admin has full control over it too as he/she needs to grant or reject the application. Also, all the loan amounts are referred to during the payroll of a particular employee in the form of deduction.

Company Asset Management Systen

After all, the system also requires a proper record for the calculation of their assets too. Before stepping onto further, the user has to first manage asset categories. This section requires information on category types and brand names. After the management of categories, now the user can manage and list out asset details. Here, the user needs to provide the name of the asset, category, model, code, purchase date, configuration, price, and quantity. With it, the system also allows managing logistic support details. For this, the admin has to provide category, employee, task, project, assign quantity, starting and ending dates with short remarks. In short, this whole section helps the user to have a quick overview of their company’s asset with logistic support too.

Notice Management, System Settings and More

On the other hand, the system administrator can make certain announcements as a notice to all their employees. For this, an admin has to enter the notice title, upload an attachment with an effective date. In fact, the notice board is presented on every account’s dashboard as the secondary focus. Regarding system settings, the user can make changes to the application’s logo, title, description, address, and others. Moreover, the admin can have a detailed report on the leave details of each employee member. Furthermore, the system allows managing holidays for the employee where the employee can have information regarding their days off. In addition to it, the administrator has the right to manage earned leaves for each employee member. Besides, each level accounts can manage its own to-do list task from the dashboard with ease.

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

Available Features:
  • Admin Panel
  • Employee Panel
  • Setup Department, Designation
  • Employee Management System
  • Set Inactive Employees
  • Employee Attendance System
  • Attendance Report
  • Employee Leave System
  • Employee Leave Report
  • Project Management
  • Assign Tasks, Field Visit
  • Manage Holidays, Earn Leaves
  • Payroll System
  • Set Employees’ Salary
  • Print Invoices
  • Payroll Reports
  • Loan Management
  • Installment Loans
  • Asset Management
  • Manage Logistic Support
  • Make Announcements
  • Personal To-Do List
  • System Settings
  • Update Personal Profile
Project Name:Human Resource Management System
Language/s Used:PHP with CodeIgniter Web Framework
PHP version (Recommended):5.6, 7.4
Database:MySQL
Type:Web Application
Developer:Nawjesh Soyeb
Updates:0
Human Resource Management System PHP Project Overview

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 Human Resource Management System project in PHP CodeIgniter. For this particular PHP project, PHP Version 5.6 or Newer is required because the project does not operate with the oldest PHP version. So, users with the oldest PHP version (older than 5.6) might face various problems while operating it. As a result, you’ll need to manage your PHP version (only if you’re using the old version) at the moment. Also, Download Free HR Management System Project in PHP MySQL CodeIgniter Source Code. So, this human resource management system PHP project is a fully functional project for all 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 Human Resource Management System Project in PHP MySQL CodeIgniter with Source Code:
Click the Download Button Below to Start Downloading

Note: Only for Educational Purpose

126 comments

  1. A PHP Error was encountered
    Severity: 8192

    Message: Return type of CI_Session_files_driver::destroy($session_id) should either be compatible with SessionHandlerInterface………………………..

  2. Hello sir I tried to run project re-checked everything. edited the database file but still not able to login
    as admin or employee.

    error:
    404 Page Not Found
    The page you requested was not found.

      1. on opening localhost/HRSystem-CI i am having “The Configuration file does not exist.” , Please help

  3. 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……………………

    1. This looks like an error coming from your LATEST version of PHP. This particular project is tested only with PHP 7.4, so the latest PHP 8 might create these problems. Still, you can find related solutions for these problems online!

  4. A Database Error Occurred
    Error Number: 1146
    Can you help with this error ?
    Table ‘hrsystemci.employee’ doesn’t exist

    SELECT * FROM `employee` WHERE `em_email` = ‘[email protected]’ AND `em_password` = ’25c2c9afdd83b8d34234aa2881cc341c09689aaa’ AND `status` = ‘ACTIVE’

    Filename: C:/xampp/htdocs/HRSystem-CI/system/database/DB_driver.php

    Line Number: 691

  5. 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

    1. This looks like an error coming from your LATEST version of PHP. This particular project is tested only with PHP 7.4, so the latest PHP 8 might create these problems. Still, you can find related solutions for these problems online!

  6. Dear One, I can’t bring any changes on your source code!! I want to omit some fields and texts like in profile tabs but I couldn’t the route and the the view pages! could you please let me have this part of information as well?

  7. Hi sir, get error at task list. when you try to add task list. then you try to choose the project list, but the project list cannot catch the project name. please advise sir. tq in advanced

  8. An uncaught Exception was encountered
    Type: ParseError

    Message: syntax error, unexpected ‘extends’ (T_EXTENDS), expecting identifier (T_STRING)

    Filename: C:\xampp\htdocs\HRSystem-CI\application\controllers\Dashboard.php

    Line Number: 4

    Backtrace:

    File: C:\xampp\htdocs\HRSystem-CI\index.php
    Line: 322
    Function: require_once

  9. A Database Error Occurred
    Error Number: 1146

    Table ‘hrsystemci.employee’ doesn’t exist

    SELECT * FROM `employee` WHERE `em_email` = ‘[email protected]’ AND `em_password` = ’23c637389687757aeb042ab2942055d436109862′ AND `status` = ‘ACTIVE’

    Filename: C:/xampp/htdocs/HRSystem-CI/system/database/DB_driver.php

    Line Number: 691

      1. good day admin!
        how can i add employee records? do you have any link how can i add employee like sample tutorials? sorry for the inconvenience newbie here.

  10. hello sir
    im getting this error ; Access forbidden!
    You don’t have permission to access the requested object. It is either read-protected or not readable by the server.

    If you think this is a server error, please contact the webmaster.

    Error 403
    localhost
    Apache/2.4.25 (Unix) OpenSSL/1.0.2j PHP/7.1.4 mod_perl/2.0.8-dev Perl/v5.16.3

    what should i do ?

  11. Hello is there a way where I can remove the error codes? I found a way to run the system and use the functionalities even though I use PHP 8.1, however the error codes are showing after updating or adding records.

  12. hello Sir,
    I got below error (
    A PHP Error was encountered

    Severity: Warning

    Message: mysqli::real_connect(): (HY000/1049): Unknown database ‘hrsystemci’…………..
    taking into consideration that I’m using port 3308 for DB, could you help please to run the application

    thanks

  13. Please reply sir… Hi sir, get error at task list. when you try to add task list. then you try to choose the project list, but the project list cannot catch the project name. please advise sir. tq in advanced

  14. Dear Sir, need your help, I tried all the open imported the sql file, i could see the login page but when i enter the login id and password as prescribed then it says error 404 Page Not Found The page you requested was not found. Now i named the folder as hrms but other files and database name is all as defined by you. I am able to see the login screen but unable to login with the above errors. Any help from you would be really great sir.

    1. Looks like you’ve changed the name of the project folder without configuration, try running the project with the default folder name [the one we’ve provided] Also, make sure you’ve not deleted the “.htaccess” file

    1. This project requires Employees’ email IDs to log in as employees. There’s a different panel for employees too. For more watch the full demo video!

  15. 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…………..

    1. This looks like an error coming from your LATEST version of PHP. This particular project is tested only with PHP 7.4, so the latest PHP 8 might create these problems. Still, you can find related solutions for these problems online!

  16. Hello, this project running extremely well and beautifully made. Just one concern is when a user as “Employee” is logged in, he is not supposed to view others employee details like salary, documents, etc. but here any user as Employee can view all other employee’s detail. Is there anyway to restrict controls and views for “Employee”??

  17. Thank you so much for this project. It works perfectly fine! I have a question though. If I want to control what’s being seen by the employee, which file should I modify. As of the moment, if I log in the employee account, he/she can also view the details of other employee via dashboard. Which I think is not really a good way right? I appreciate your help

  18. Please what is the between Admin and Super Admin, and is it possible to add User Role maybe HOD who can only view employee under his department? And if i have some requirements that i think should be added because the source code is a bit difficult to understand, can you help me?

    1. Admin and Super Admin are the same I guess when it comes to access level. And sorry, we don’t accept any customizations at the moment. This is all we’ve got from the developers!

  19. error generation salay A Database Error Occurred
    Error Number: 1140

    In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column …………….

    Line Number: 656

    PHP 7.4.29

      1. in the payroll sector > listing > action > print

        This error appears,
        Error Number: 1140
        In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column ‘rh.employee.id’; this is incompatible with sql_mode=only_full_group_by

  20. please help sir, please pleaseee

    in the payroll sector > listing > action > print

    A PHP Error was encountered
    Severity: Warning

    Message: A non-numeric value encountered

    Filename: controllers………………..

      1. Hey, Thank you for your reply.

        It is not for live production. I still have it in the Domainname.com/HRSystem-CI/
        But after login it keeps giving 404. Where should I adjust the route?

        Kind regards,

  21. i got this error

    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………..

    1. This looks like an error coming from your LATEST version of PHP. This particular project is tested only with PHP 5.6 nad 7.4, so the latest PHP 8 might create these problems. Still, you can find related solutions for these problems online!

  22. @adminastro, When you will release the updated version?
    The project can’t be changed in Task.
    then how can use this PHP for multiuser?

  23. so many questions from me, please help ya
    1.how to change admin and password on the main page, I did not find the file?
    2. The “cancel” button doesn’t work properly?
    3.how do I delete an employee list name?

  24. [email protected]….. getting the error 404 page not found but i have not changed anything at all just run it the way it but when i login using the password details given i get that error when i try to login
    login/login_auth cant be found anywhere in the system

  25. Severity: 8192

    Message: Creation of dynamic property Home::$exceptions is deprecated

    Filename: core…………

    received this error please solve

  26. Severity: 8192
    Message: str_replace(): passing null to parameter #3 ($subject) of type array|string is deprecated.
    Filename: core/Output.php
    Line Number: 457
    Backtrace:……………

  27. mine is working just fine but i have been try to add new features but for some reason i can update anything to the databbase

  28. Dear Sir/Madam,
    Thank you very much sir / madam, very helpful system, nice..

    There are some constraints:
    1. Bootstrap is not compatible (when I go on blank website) please advise
    2. When submitting a 2-day leave application, the remaining leave only lasts 1 day (example: remaining leave 12, I’am submit remaining 2 days, remaining leave only 1 day so remaining leave 11.. it should be reduced by 2 days so the rest of the cut 10 days

    Please Advise & please help
    Thanks

  29. Oh fantastic thanks admin for support
    I have no words for this project
    life saving
    i want to contribute a cup of coffee in your efforts kindly guide 🙂

  30. A PHP Error was encountered
    Severity: Warning

    Message: A non-numeric value encountered

    Filename………………..

    1. login as administrator, add new employee and login details. get back to login panel and enter the employee login details to access the system as an employee. Check the demo video for more!

    1. Upgrading project to CodeIgniter 4 involves several steps, including adjusting code, updating configurations, and addressing compatibility issues. The CodeIgniter documentation will provide you a detailed guide on upgrading from version 3 to version 4. You can follow the official upgrade guide.

  31. Getting the error 404 page not found but i have not changed anything at all just run it the way it but when i login using the password details given i get that error when i try to login
    login/login_auth cant be found anywhere in the system.
    I’d changed the project folder and configuration, but still get error on it.

Leave a Reply

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