Payroll Management System using PHP/MySQL with Source Code


Project: Payroll Management System using PHP/MySQL

About the Project

The Payroll Management System is a simple PHP/MySQL project that manages and calculates the employee's payroll of a certain company. This payroll project can compute the employee's payroll monthly and semi-monthly. The payroll management system itself a static configuration for payroll calculation such as the number of working days of a company, which in this system, the setup is for a company that has 5 working days in a week and that's for Monday-Friday schedule and each day has a static schedule of 8 Am-12 PM and 1 PM-5 PM time log schedule. Using the said system static configuration, this will help to calculate the number of absences and tardiness/undertime of an employee in each day within the selected date range of the payroll. The payroll management system includes also the computation of different allowances and deductions of an employee and this feature of the system can be managed dynamically. Each employee will have their own setup for their allowances and deduction and also can be set as monthly, semi-monthly, and applicable only for one-time earnings or deduction.

The system works as the following:

  1. The System admin will populate the list of department, position, allowances, deduction, and employee.
  2. After that, the system admin will set up the employee's allowances and deductions individually.
  3. Then, the system admin will encode the employee's daily time record to the system.
  4. The admin will create a payroll along with the payroll details such as the payroll date range and the payroll type which is either Monthly or Semi-monthly.
  5. After the creation of the payroll details, the admin will calculate the payroll of all employees by clicking the calculate.
  6. Then, there it is, the payroll was generated and calculated and it is also ready to print.


  • Login Page
    • The page where the admin users will log in their system credentials to access the system.
  • Home Page
    • The page where the admin will be redirected by default after logging into the payroll management system.
  • Department List Page
    • The page where the admin can admin/staff will manage the list of their company's departments.
  • Position List Page
    • The page where the admin/staff will manage the list of their company's positions per department.
  • Allowance List Page
    • The page where the admin/staff will manage the list of allowances.
  • Deduction List Page
    • The page where the admin/staff will manage the list of deductions.
  • Employee List Page
    • The page where the admin will manage the list of the employees. This also the page where the admin will manage the employees' allowances and deductions.
  • Attendance List Page
    • ​​​​​​​The page where the admin will encode and manage the employees' daily time records.
  • Payroll List Page
    • ​​​​​​​The page where all payroll cut-offs are listed and can be managed. This also the page where can admin calculate the payroll of employees.
  • Cut-off Payroll Page
    • ​​​​​​​The page where the employees' payroll is listed.
  • Employee's Payslip Modal
    • ​​​​​​​The popup modal that displays the employee's payslip.

How to Run

  1. Download the source code and extract the zip file.
  2. Download or set up any local web server that runs PHP script.
  3. Open the web-server database and create a new database name it payroll_db.
  4. Import the SQL file located in the database folder of the source code.
  5. Copy and paste the source code to the location where your local web server accessing your local projects. Example for XAMPP('C:\xampp\htdocs')
  6. Open a web browser and browse the project. E.g [http://localhost/recruitment-management-system-using-php]

Admin Default Access

Username: admin

Password: admin123

There is it, the Payroll Management System is ready to be used. You can now explore the features and functionalities of this project. This simple project is for educational purposes only and explains only how to create a payroll generation system. This system is not ready to use by a certain company yet, this requires some modification to meet the company's requirements for their employees' payroll computation.

I hope this project will help you with what you are looking for. Feel free to download and modify the source code.

Explore this website for more source codes and tutorials.


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 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 byCan i get repo… (not verified)on Tue, 01/05/2021 - 18:51

I want report for Payroll Management System using PHP/MySQL with Source Code project
Submitted byAbhi urs (not verified)on Tue, 01/05/2021 - 18:54

can i get report for this project
Submitted byAnonymous (not verified)on Thu, 04/22/2021 - 19:10

even after providing correct userid and password credentials, the next page is not loading yet?
Submitted byRichard Msesi (not verified)on Sat, 05/22/2021 - 01:02

Please I am asking about, when I add reductions and allowances to a particular employee, for once type it inserts data into the database but for type (monthly/semi-monthly) cannot insert data but shows the notification that employees data successfully inserted. Please I need help on this problem
Submitted by1tannerweir (not verified)on Thu, 02/10/2022 - 23:57

For anyone getting an error on the employee list page, you need to edit line 37 of the employee.php file and remove the apostrophe from the end of the SQL query (before the ending quotation mark)
Submitted byPoisonous Butete (not verified)on Sat, 03/19/2022 - 10:37

check the db_connect.sql if the database name corresponds to the name of the database indicated. In my case per instruction create payroll_db database in phpmyadmin and check if it is same witht eh db_connect.sql and it shows that it is not same so I change it to the one I have on my database then delete the password then in works.( you may not need to delete admin password in the tables of admin)
Submitted byanon16161616 (not verified)on Fri, 12/02/2022 - 16:04

In reply to by Poisonous Butete (not verified)

hello, how did you do? can you telll me step by step? i can't log in because it says the username or password is invalid

Add new comment