Employee Attendance System in PHP using CodeIgniter Framework Free Source Code



This project is an Employee Attendance System. This is a web-based application project developed in PHP using CodeIgniter Framework and MySQL Database. This application provides an Online Attendance Log and Management platform for a certain company. This can also help the company to easily store, retrieve, and manage their Employees' Attendance. The project has a pleasant user interface with the help of Bootstrap Framework and SB-Admin2 Template to give the end-users a better experience while using the web application. It also consists of user-friendly features and functionalities.

About the Employee Attendance System

The project was developed using the following:

  • XAMPP v3.3.0
  • PHP
  • CodeIgniter
  • MySQL Database
  • HTML
  • CSS
  • JavaScript
  • Ajax
  • jQuery
  • Bootstrap
  • Font Awesome
  • SB-Admin2

This Employee Attendance System in CodeIgniter Project can be accessed by 2 different types of user roles. The user roles are the Admin and Employee users. Both users roles must log in to the system to gain access to the features and functionalities of the system.

The Admin Role has the privilege to access and manage all of the important data in the system. They are the ones who are in charge of managing the list of Departments, Working Shifts, Locations, and Employees. They are the only ones who can create a system account for the employees. They can generate a printable date-wise attendance report.

The Employee Role has limited permission only to the features and functionalities of the system. They can only Time In/Time Out once a day. The employee side can also view their profile image and information. They can also list all their attendance history. The attendance history page list the attendance records of the logged-in employee based on the user or employee's chosen range of date.



  • Login
  • Profile Page
  • Attendance Form
  • Time Out Button
  • Date-Wise Attendance Record
  • Logout


  • Home Page
    • Display the summary.
  • Department Management
    • Add New Department
    • List All Departments
    • Edit/Update Department Details
    • Delete Department
  • Working Shift Management
    • Add New Working Shift
    • List All Working Shifts
    • Update Working Shift Details
    • Delete Working Shift
  • Location Management
    • Add New Location
    • List All Locations
    • Update Location Details
    • Delete Location
  • Employee Management
    • Add New Employee
    • List All Employees
    • Update Employee Details and Image
    • Delete Employee
  • User/Account Management
    • Create An Account for Employee
    • List All Employees' Account
    • Update Employee's Account Password
    • Delete Employee's Account
  • Report
    • Generate Date-Wise Printable Attendance Report
  • Login and Logout

The source code was developed only for educational purposes only. You can download the source code for free and modify it the way you wanted.

System Snapshots of some Features

Admin Dashboard

CodeIgniter - Employee Attendance System

Department List (Admin-Side)

CodeIgniter - Employee Attendance System

Employee List (Admin-Side)

CodeIgniter - Employee Attendance System

Employee Edit/Update Form Page (Admin-Side)

CodeIgniter - Employee Attendance System

Attendance Report (Admin-Side)

CodeIgniter - Employee Attendance System

Attendance Form Page (Employee-Side)

CodeIgniter - Employee Attendance System

Attendance Check-Out/Time Out Page(Employee-Side)

CodeIgniter - Employee Attendance System

Employee Profile Page

CodeIgniter - Employee Attendance System

How to Run ??


  • Download and Install any local web server such as XAMPP.
  • Download the provided source code zip file. (download button is located below)

System Installation/Setup

  1. Open your XAMPP Control Panel and start Apache and MySQL.
  2. Extract the downloaded source code zip file.
  3. Copy the extracted source code folder and paste it into the XAMPP's "htdocs" directory.
  4. Browse the PHPMyAdmin in a browser. i.e. http://localhost/phpmyadmin
  5. Create a new database naming eas_db.
  6. Import the provided SQL file. The file is known as eas_db.sql located inside the database folder.
  7. Browse the Employee Attendance System in a browser. i.e. http://localhost/ci_eas/.

Admin Default Access:

Username: admin
Password: admin123


That's it. You can now explore the features and functionalities of this Employee Attendance System in PHP CodeIgniter. I hope this will help you with what you are looking for and you'll find something useful for your future projects.

Explore more on this website for more Free Source Codes and Tutorials.

Enjoy :)

Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. After downloading it, you will need a program like Winzip to decompress it.

Virus note: All files are scanned once-a-day by SourceCodester.com for viruses, but new viruses come out every day, so no prevention program can catch 100% of them.


1. Re-scan downloaded files using your personal virus checker before using it.
2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.


Submitted byabdoo (not verified)on Sat, 11/05/2022 - 22:33

I had this problem when deleting : #1451 - Cannot delete or update a parent row: a foreign key constraint fails (`eas_db`.`attendance`, CONSTRAINT `attendance_ibfk_4` FOREIGN KEY (`shift_id`) REFERENCES `shift` (`id`) ON UPDATE CASCADE)
Submitted byAnonymous (not verified)on Wed, 07/05/2023 - 15:45

how can I change the name of ci_eas to my own?
Submitted byI get this err… (not verified)on Thu, 07/13/2023 - 19:32

A PHP Error was encountered Severity: Warning Message: mysqli::real_connect(): The server requested authentication method unknown to the client [caching_sha2_password] Filename: mysqli/mysqli_driver.php Line Number: 211 Backtrace: File: C:\xampp\htdocs\ci_eas\application\controllers\Auth.php Line: 8 Function: __construct File: C:\xampp\htdocs\ci_eas\index.php Line: 315 Function: require_once
Submitted byshuhaib (not verified)on Sun, 07/30/2023 - 18:06

I am unable login the admin page and the CSS style does not work in the directory initialize.php file I am unable to find and change the base_url defined. pls let me know the location to change base_url defined
Submitted byhello, (not verified)on Fri, 09/01/2023 - 17:29

hello team, I want to modified this program,i want to view attendance form on saturday and sunday.. please help me
Submitted bykalps (not verified)on Sat, 03/09/2024 - 16:43

A PHP Error was encountered Severity: 8192 Message: Creation of dynamic property CI_URI::$config is deprecated Filename: core/URI.php Line Number: 102 Backtrace: File: C:\xampp\htdocs\ci_eas\index.php Line: 315 Function: require_once
Submitted bySibiraj (not verified)on Wed, 05/29/2024 - 21:36

The given link -> http://localhost/ci4_payroll -- is not opening...it shows error

Add new comment