All Projects
Mid-Core / System Completed

Employee Data Record System

HR Management Tool

01 — Project Overview

An HR management portal for managing employee data, department assignments, and attendance — with role-based admin access.

Solo Developer.

Stack

PHPMySQLHTML5CSS3Bootstrap
Private / Offline

02 — The Problem

Goal

Centralize employee records for a small organization currently tracking everything in paper files.

User Issue

Paper employee records made it nearly impossible to query data quickly (e.g., "list all employees in department X".)

03 — The Process

01

Department Relational Model

Designed a departments table with foreign key relations to the employees table for clean hierarchical queries.

02

Admin vs Employee View

Built separate dashboards — employees see their own data, admins see and edit all.

Key Challenge

Ensuring an employee could not access or modify another employee's record via URL manipulation.

snippet
// Prevent IDOR
if ($_GET['id'] !== $_SESSION['emp_id'] && $_SESSION['role'] !== 'admin') {
  header('Location: /dashboard'); exit;
}

04 — The Solution

A secure, role-separated HR portal with full CRUD for employee records, department management, and attendance tracking.

Employee Data System Screenshot

05 — Results & Learnings

Impact

Eliminated the paper-filing bottleneck and allowed instant SQL-powered queries across employee data.

Learnings

Learned about IDOR (Insecure Direct Object Reference) vulnerabilities and how to prevent them with server-side role checks.

What I'd do differently

Would add an audit log so admins can track who changed what and when.