Documentos de Académico
Documentos de Profesional
Documentos de Cultura
A PROJECT ON
SUBMITTED BY
BADLAPUR-421503
UNIVERSITY OF MUMBAI
I
EMPLOYEE LEAVE MANAGEMANT SYSTEM
II
EMPLOYEE LEAVE MANAGEMANT SYSTEM
III
EMPLOYEE LEAVE MANAGEMANT SYSTEM
ACKNOWLEDGEMENT
I the undersigned, have great pleasure in giving my sincere thanks to those who have
contributed their valuable time in helping me to achieve the success in my project work.
I would like to thank our in-charge Principal Miss. NEETU KAPOOR for her continuous
support.
I would like to express my sincere thanks to Prof.SWETA SATAO for her guidance and
constant encouragement, which made this project a success. As a Project Guide she helped
me with her valuable knowledge and timely guidance, cooperation, encouragement and
time spent for this project work.
I would also like to thanks our teaching staff for providing me sufficient information which
help me to complete my project successfully.
I would also like to thank my family members for their continuous support in completing
this project work. And last but not least, I wish to thank all my friends and well-wishers
who are directly or indirectly linked with the success of my project.
1
EMPLOYEE LEAVE MANAGEMANT SYSTEM
INTRODUCTION TO PROJECT
The Easy Leave is an Intranet based application that can be accessed throughout
the organization or a specified group/Dept. This system can be used to automate
the workflow of leave applications and their approvals. The periodic crediting of
leave is also automated. There are features like email notifications, cancellation of
leave, automatic approval of leave, report generators etc in this Tool.
2
EMPLOYEE LEAVE MANAGEMANT SYSTEM
SOFTWARE SOLUTIONS
3
EMPLOYEE LEAVE MANAGEMANT SYSTEM
SPEED:
EXPERTISE:
Our teams combine cutting edge technology skills with rich domain expertise.
What’s equally important - they share a strong customer orientation that means
they actually start by listening to the customer. They’re focused on coming up with
solutions that serve customer requirements today and anticipate future needs.
They offer customers the advantage of being able to Architect, integrate and
manage technology services. This means that they can rely on one, fully
accountable source instead of trying to integrate disparate multi vendor solutions.
SERVICES:
4
EMPLOYEE LEAVE MANAGEMANT SYSTEM
This project is aimed at developing a web based Leave Management Tool, which is
of importance to either an organization or a college. This is an Intranet based
application that can be accessed throughout the organization or a specified
group/Dept. This system can be used to automate the workflow of leave
applications and their approvals. The periodic crediting of leave is also automated.
There are features like email notifications, cancellation of leave, automatic approval
of leave, report generators etc in this Tool.
The development of the new system contains the following activities, which try to
automate the entire process keeping in view of the database integration approach.
2. The system makes the overall project management much easier and
flexible.
3. Readily upload the latest updates, allows user to download the alerts by
clicking the URL.
5
EMPLOYEE LEAVE MANAGEMANT SYSTEM
After analyzing the requirements of the task to be performed, the next step is to
analyze the problem and understand its context. The first activity in the phase is
studying the existing system and other is to understand the requirements and
domain of the new system. Both the activities are equally important, but the first
activity serves as a basis of giving the functional specifications and then successful
design of the proposed system. Understanding the properties and requirements of a
new system is more difficult and requires creative thinking and understanding of
existing running system is also difficult, improper understanding of present system
can lead diversion from solution.
The design starts after the requirement analysis is complete and the coding
begins after the design is complete. Once the programming is completed, the
testing is done. In this model the sequence of activities performed in a software
development project are: -
Requirement Analysis
Project Planning
6
EMPLOYEE LEAVE MANAGEMANT SYSTEM
System design
Detail design
Coding
Unit testing
System integration & testing
Here the linear ordering of these activities is critical. End of the phase and
the output of one phase is the input of other phase. The output of each phase is to
be consistent with the overall requirement of the system. Some of the qualities of
spiral model are also incorporated like after the people concerned with the project
review completion of each of the phase the work done.
WATER FALL MODEL was being chosen because all requirements were known
beforehand and the objective of our software development is the
computerization/automation of an already existing manual working system.
Changed
Requirements
Communicated
Requirements
Requirements
Requirements Specification
Engineering
Design
Specification
Design
Executable
Software
Programming Modules Maintenance
Integrated
Process Software
Integration Product
Delivered
Software
Product Product Delivery Product
Input Output
7
EMPLOYEE LEAVE MANAGEMANT SYSTEM
GUI’S
In the flexibility of the uses the interface has been developed a graphics concept in
mind, associated through a browses interface. The GUI’S at the top level have been
categorized as
The operational or generic user interface helps the users upon the system in
transactions through the existing data and required services. The operational user
interface also helps the ordinary users in managing their own information helps the
ordinary users in managing their own information in a customized manner as per
the assisted flexibilities.
NUMBER OF MODULES
8
EMPLOYEE LEAVE MANAGEMANT SYSTEM
The system after careful analysis has been identified to be presented with the
following modules:
Administration
Employee
Search
Report
Authentication
Administrator:-
In this module the Administrator has the privileges to add all the Employees and
register them in the organization and check the information of the Employee and
check the status of the leave when they have taken and what type of leave they
have taken and search is done based on the employee and report is generated
based on employee.
Search:-
This module contain complete search like Leave search, Type of Leave, Employee
based on the leave and starting and ending day of leave.
Employee:-
In this module employee has the privileges to use his username and password for
login and he can see the request given by the customer and he can pass the
process to the Business Manager and maintain the record of the customers.
Reports:-
This module contains all the information about the reports generated by the
Employees based on the Performance and by the leave status.
9
EMPLOYEE LEAVE MANAGEMANT SYSTEM
Authentication:-
This module contains all the information about the authenticated user. User without
his username and password can’t enter into the login if he is only the authenticated
user then he can enter to his login.
PROJECT INSTRUCTIONS:
Based on the given requirements, conceptualize the Solution Architecture. Choose the
domain of your interest otherwise develop the application for ultimatedotnet.com. Depict
the various architectural components, show interactions and connectedness and show
internal and external elements. Design the web services, web methods and database
infrastructure needed both and client and server.
Provide an environment for upgradation of application for newer versions that are
available in the same domain as web service target.
PROPOSED SYSTEM
To debug the existing system, remove procedures those cause data redundancy,
make navigational sequence proper. To provide information about audits on
different level and also to reflect the current work status depending on
organization/auditor or date. To build strong password mechanism.
10
EMPLOYEE LEAVE MANAGEMANT SYSTEM
11
EMPLOYEE LEAVE MANAGEMANT SYSTEM
HARDWARE CONFIGURATION
12
EMPLOYEE LEAVE MANAGEMANT SYSTEM
SOFTWARE CONFIGURATION
A major element in building a system is the section of compatible software since the
software in the market is experiencing in geometric progression. Selected software should
be acceptable by the firm and one user as well as it should be feasible for the system.This
document gives a detailed description of the software requirement specification. The study
of requirement specification is focused specially on the functioning of the system. It allow
the developer or analyst to understand the system, function to be carried out the
performance level to be obtained and corresponding interfaces to be established.
13
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
The following commands specify access control identifiers and they are typically
used to authorize and authenticate the user (command codes are shown in
parentheses)
The user identification is that which is required by the server for access to its file
system. This command will normally be the first command transmitted by the
user after the control connections are made (some servers may require this).
PASSWORD (PASS)
This command must be immediately preceded by the user name command, and,
for some sites, completes the user's identification for access control. Since
password information is quite sensitive, it is desirable in general to "mask" it or
suppress type out.
14
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Feasibility Study
Technical Feasibility
Operation Feasibility
Economical Feasibility
The technical issue usually raised during the feasibility stage of the
investigation includes the following:
15
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Proposed projects are beneficial only if they can be turned out into
information system. That will meet the organization’s operating
requirements. Operational feasibility aspects of the project are to be
taken as an important part of the project implementation. Some of the
important issues raised are to test the operational feasibility of a project
includes the following: -
16
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
17
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
E – R DIAGRAMS
18
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
19
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
20
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
CLASS DIAGRAM
21
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Login Activity:
22
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
SEQUENCE DIAGRAMS
SEQUENCE DIAGRAM 1
Press login
button
Validate if NO
If No Come Back to Home Page
Time
23
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
SEQUENCE DIAGRAM 2
Employee
Use URL
Press login
button
Validate if NO
24
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Home Page Login Page Admin Home Page Add Employee Info Database Confirm Page
Admin
Use URL
Validate If NOT
Come Back to Login Page
if Validation NOT OK
Back to Add Employee Info Page
25
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
SYSTEM NAME
Use case 1
Actor Actor
Use case 2
26
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
27
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Index.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(isset($_POST['signin']))
{
$uname=$_POST['username'];
$password=md5($_POST['password']);
$sql ="SELECT EmailId,Password,Status,id FROM tblemployees WHERE EmailId=:uname and
Password=:password";
$query= $dbh -> prepare($sql);
$query-> bindParam(':uname', $uname, PDO::PARAM_STR);
$query-> bindParam(':password', $password, PDO::PARAM_STR);
$query-> execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
if($query->rowCount() > 0)
{
foreach ($results as $result) {
$status=$result->Status;
$_SESSION['eid']=$result->id;
}
if($status==0)
{
$msg="Your account is Inactive. Please contact admin";
} else{
$_SESSION['emplogin']=$_POST['username'];
echo "<script type='text/javascript'> document.location = 'emp-changepassword.php';
</script>";
}}
else{
28
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
?><!DOCTYPE html>
<html lang="en">
<head>
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="http://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="http://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="loader-bg"></div>
<div class="loader">
<div class="preloader-wrapper big active">
<div class="spinner-layer spinner-blue">
<div class="circle-clipper left">
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
</div><div class="circle-clipper right">
<div class="circle"></div>
</div>
29
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
<div class="spinner-layer spinner-spinner-teal lighten-1">
<div class="circle-clipper left">
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
</div><div class="circle-clipper right">
<div class="circle"></div>
</div>
</div>
<div class="spinner-layer spinner-yellow">
<div class="circle-clipper left">
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
</div><div class="circle-clipper right">
<div class="circle"></div>
</div>
</div>
<div class="spinner-layer spinner-green">
<div class="circle-clipper left">
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
</div><div class="circle-clipper right">
<div class="circle"></div>
</div>
</div>
</div>
</div>
<div class="mn-content fixed-sidebar">
<header class="mn-header navbar-fixed">
<nav class="cyan darken-1">
<div class="nav-wrapper row">
<section class="material-design-hamburger navigation-toggle">
<a href="#" data-activates="slide-out" class="button-collapse show-on-large
material-design-hamburger__icon">
<span class="material-design-hamburger__layer"></span>
</a>
</section>
<div class="header-title col s3">
<span class="chapter-title">ELMS | Employee Leave Management
System</span>
</div>
</form>
</div>
</nav>
</header>
30
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</ul>
<div class="footer">
</div>
</div>
</aside>
<main class="mn-inner">
<div class="row">
<div class="col s12">
<div class="page-title"><h4>Welcome to Employee Leave Management
System</h4></div>
31
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
</body>
</html>
32
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Profile.php(user)
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['emplogin'])==0)
{
header('location:index.php');
}
else{
$eid=$_SESSION['emplogin'];
if(isset($_POST['update']))
{
$fname=$_POST['firstName'];
$lname=$_POST['lastName'];
$gender=$_POST['gender'];
$dob=$_POST['dob'];
$department=$_POST['department'];
$address=$_POST['address'];
$city=$_POST['city'];
$country=$_POST['country'];
$mobileno=$_POST['mobileno'];
$sql="update tblemployees set
FirstName=:fname,LastName=:lname,Gender=:gender,Dob=:dob,Department=:department,Add
ress=:address,City=:city,Country=:country,Phonenumber=:mobileno where EmailId=:eid";
$query = $dbh->prepare($sql);
$query->bindParam(':fname',$fname,PDO::PARAM_STR);
$query->bindParam(':lname',$lname,PDO::PARAM_STR);
$query->bindParam(':gender',$gender,PDO::PARAM_STR);
33
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
$query->bindParam(':dob',$dob,PDO::PARAM_STR);
$query->bindParam(':department',$department,PDO::PARAM_STR);
$query->bindParam(':address',$address,PDO::PARAM_STR);
$query->bindParam(':city',$city,PDO::PARAM_STR);
$query->bindParam(':country',$country,PDO::PARAM_STR);
$query->bindParam(':mobileno',$mobileno,PDO::PARAM_STR);
$query->bindParam(':eid',$eid,PDO::PARAM_STR);
$query->execute();
$msg="Employee record updated Successfully";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
34
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</head>
<body>
<?php include('includes/header.php');?>
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="row">
<div class="col s12">
<div class="page-title">Update employee</div>
</div>
<div class="col s12 m12 l12">
<div class="card">
<div class="card-content">
<form id="example-form" method="post" name="updatemp">
<div>
<h3>Update Employee Info</h3>
<?php if($error){?><div
class="errorWrap"><strong>ERROR</strong>:<?php echo htmlentities($error); ?>
</div><?php }
else if($msg){?><div class="succWrap"><strong>SUCCESS</strong> : <?php echo
htmlentities($msg); ?> </div><?php }?>
<section>
<div class="wizard-content">
<div class="row">
<div class="col m6">
<div class="row">
<?php
$eid=$_SESSION['emplogin'];
$sql = "SELECT * from tblemployees where EmailId=:eid";
$query = $dbh -> prepare($sql);
$query -> bindParam(':eid',$eid, PDO::PARAM_STR);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{ ?>
<div class="input-field col s12">
<label for="empcode">Employee Code</label>
<input name="empcode" id="empcode" value="<?php echo htmlentities($result->EmpId);?>"
type="text" autocomplete="off" readonly required>
<span id="empid-availability" style="font-size:12px;"></span>
</div>
35
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
</div>
</div>
36
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
{
foreach($results as $resultt)
{ ?>
<option value="<?php echo htmlentities($resultt->DepartmentName);?>"><?php echo
htmlentities($resultt->DepartmentName);?></option>
<?php }} ?>
</select>
</div>
<?php }}?>
</div>
</div>
</div>
</div>
</div>
</section>
</section>
</div>
</form>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
37
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</body>
</html>
<?php } ?>
38
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Change-password.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link href="assets/plugins/material-preloader/css/materialPreloader.min.css"
39
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
rel="stylesheet">
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="loader-bg"></div>
<div class="loader">
40
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
41
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
</div>
</div>
</div>
<span class="material-design-hamburger__layer"></span>
</a>
</section>
</div>
</div>
42
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</nav>
</header>
<div class="side-nav-wrapper">
<div class="sidebar-profile">
<div class="sidebar-profile-image">
</div>
<div class="sidebar-profile-info">
<p>Shubham kumar</p>
<span>EMP10806121</span>
</div>
</div>
<li class="no-padding">
<div class="collapsible-body">
<ul>
</ul>
43
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
</li>
<li class="no-padding">
</li>
</ul>
<div class="footer">
</div>
</div>
<div class="row">
</div>
<div class="card">
<div class="card-content">
<div class="row">
<div class="row">
44
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
</div>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
45
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<script src="assets/plugins/jquery/jquery-2.2.0.min.js"></script>
<script src="assets/plugins/materialize/js/materialize.min.js"></script>
<script src="assets/plugins/material-preloader/js/materialPreloader.min.js"></script>
<script src="assets/plugins/jquery-blockui/jquery.blockui.js"></script>
<script src="assets/js/alpha.min.js"></script>
<script src="assets/js/pages/form_elements.js"></script>
</body>
</html>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['emplogin'])==0)
{
header('location:index.php');
}
else{
// Code for change password
if(isset($_POST['change']))
{
$password=md5($_POST['password']);
$newpassword=md5($_POST['newpassword']);
$username=$_SESSION['emplogin'];
$sql ="SELECT Password FROM tblemployees WHERE EmailId=:username and
Password=:password";
$query= $dbh -> prepare($sql);
$query-> bindParam(':username', $username, PDO::PARAM_STR);
$query-> bindParam(':password', $password, PDO::PARAM_STR);
$query-> execute();
$results = $query -> fetchAll(PDO::FETCH_OBJ);
if($query -> rowCount() > 0)
{
$con="update tblemployees set Password=:newpassword where EmailId=:username";
$chngpwd1 = $dbh->prepare($con);
$chngpwd1-> bindParam(':username', $username, PDO::PARAM_STR);
$chngpwd1-> bindParam(':newpassword', $newpassword, PDO::PARAM_STR);
$chngpwd1->execute();
$msg="Your Password succesfully changed";
}
else {
$error="Your current password is wrong";
}
}
46
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
?>
<!DOCTYPE html>
<html lang="en">
<head>
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="row">
<div class="col s12">
<div class="page-title">Change Pasword</div>
</div>
<div class="col s12 m12 l6">
<div class="card">
47
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="card-content">
<div class="row">
<form class="col s12" name="chngpwd" method="post">
<?php if($error){?><div
class="errorWrap"><strong>ERROR</strong>:<?php echo htmlentities($error); ?>
</div><?php }
else if($msg){?><div class="succWrap"><strong>SUCCESS</strong>:<?php echo
htmlentities($msg); ?> </div><?php }?>
<div class="row">
<div class="input-field col s12">
<input id="password" type="password" class="validate" autocomplete="off" name="password"
required>
<label for="password">Current Password</label>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
48
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</body>
</html>
<?php } ?>
49
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Apply-leave.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['emplogin'])==0)
{
header('location:index.php');
}
else{
if(isset($_POST['apply']))
{
$empid=$_SESSION['eid'];
$leavetype=$_POST['leavetype'];
$fromdate=$_POST['fromdate'];
$todate=$_POST['todate'];
$description=$_POST['description'];
$status=0;
$isread=0;
if($fromdate > $todate){
$error=" ToDate should be greater than FromDate ";
}
$sql="INSERT INTO tblleaves(LeaveType,ToDate,FromDate,Description,Status,IsRead,empid)
VALUES(:leavetype,:fromdate,:todate,:description,:status,:isread,:empid)";
$query = $dbh->prepare($sql);
$query->bindParam(':leavetype',$leavetype,PDO::PARAM_STR);
$query->bindParam(':fromdate',$fromdate,PDO::PARAM_STR);
$query->bindParam(':todate',$todate,PDO::PARAM_STR);
$query->bindParam(':description',$description,PDO::PARAM_STR);
$query->bindParam(':status',$status,PDO::PARAM_STR);
50
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
$query->bindParam(':isread',$isread,PDO::PARAM_STR);
$query->bindParam(':empid',$empid,PDO::PARAM_STR);
$query->execute();
$lastInsertId = $dbh->lastInsertId();
if($lastInsertId)
{
$msg="Leave applied successfully";
}
else
{
$error="Something went wrong. Please try again";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
51
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</head>
<body>
<?php include('includes/header.php');?>
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="row">
<div class="col s12">
<div class="page-title">Apply for Leave</div>
</div>
<div class="col s12 m12 l8">
<div class="card">
<div class="card-content">
<form id="example-form" method="post" name="addemp">
<div>
<h3>Apply for Leave</h3>
<section>
<div class="wizard-content">
<div class="row">
<div class="col m12">
<div class="row">
<?php if($error){?><div class="errorWrap"><strong>ERROR </strong>:<?php echo
htmlentities($error); ?> </div><?php }
else if($msg){?><div class="succWrap"><strong>SUCCESS</strong>:<?php echo
htmlentities($msg); ?> </div><?php }?>
52
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
</div>
</section>
</section>
</div>
</form>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
53
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Leave-history.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['emplogin'])==0)
{
header('location:index.php');
}
else{
?>
<!DOCTYPE html>
<html lang="en">
<head>
54
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="row">
<div class="col s12">
<div class="page-title">Leave History</div>
</div>
55
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<tbody>
<?php
$eid=$_SESSION['eid'];
$sql = "SELECT
LeaveType,ToDate,FromDate,Description,PostingDate,AdminRemarkDate,AdminRemark,Status
from tblleaves where empid=:eid";
$query = $dbh -> prepare($sql);
$query->bindParam(':eid',$eid,PDO::PARAM_STR);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{ ?>
<tr>
<td> <?php echo htmlentities($cnt);?></td>
<td><?php echo htmlentities($result->LeaveType);?></td>
<td><?php echo htmlentities($result->ToDate);?></td>
<td><?php echo htmlentities($result->FromDate);?></td>
<td><?php echo htmlentities($result->Description);?></td>
<td><?php echo htmlentities($result->PostingDate);?></td>
<td><?php if($result->AdminRemark=="")
{
echo htmlentities('waiting for approval');
} else
{
?></td>
<td><?php $stats=$result->Status;
if($stats==1){
?>
<span style="color: green">Approved</span>
<?php } if($stats==2) { ?>
<span style="color: red">Not Approved</span>
<?php } if($stats==0) { ?>
<span style="color: blue">waiting for approval</span>
<?php } ?>
</td>
56
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</tr>
<?php $cnt++;} }?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
</body>
</html>
<?php } ?>
57
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Admin dashboard.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
{
header('location:index.php');
}
else{
?>
<!DOCTYPE html>
<html lang="en">
<head>
58
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</head>
<body>
<?php include('includes/header.php');?>
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="middle-content">
<div class="row no-m-t no-m-b">
<div class="col s12 m12 l4">
<div class="card stats-card">
<div class="card-content">
59
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="card-content">
<span class="card-title">Listed leave Type</span>
<?php
$sql = "SELECT id from tblleavetype";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$leavtypcount=$query->rowCount();
?>
<span class="stats-counter"><span class="counter"><?php echo
htmlentities($leavtypcount);?></span></span>
</div>
<div class="progress stats-card-progress">
<div class="determinate" style="width: 70%"></div>
</div>
</div>
</div>
</div>
<tbody>
<?php $sql = "SELECT tblleaves.id as
lid,tblemployees.FirstName,tblemployees.LastName,tblemployees.EmpId,tblemployees.id,tbllea
ves.LeaveType,tblleaves.PostingDate,tblleaves.Status from tblleaves join tblemployees on
tblleaves.empid=tblemployees.id order by lid desc limit 6";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{
?>
60
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<tr>
<td> <b><?php echo htmlentities($cnt);?></b></td>
<td><a href="editemployee.php?empid=<?php echo
htmlentities($result->id);?>" target="_blank"><?php echo htmlentities($result->FirstName."
".$result->LastName);?>(<?php echo htmlentities($result->EmpId);?>)</a></td>
<td><?php echo htmlentities($result->LeaveType);?></td>
<td><?php echo htmlentities($result->PostingDate);?></td>
<td><?php $stats=$result->Status;
if($stats==1){
?>
<span style="color: green">Approved</span>
<?php } if($stats==2) { ?>
<span style="color: red">Not Approved</span>
<?php } if($stats==0) { ?>
<span style="color: blue">waiting for approval</span>
<?php } ?>
</td>
<td>
<td><a href="leave-details.php?leaveid=<?php echo htmlentities($result->lid);?>"
class="waves-effect waves-light btn blue m-b-xs" > View Details</a></td>
</tr>
<?php $cnt++;} }?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</main>
</div>
61
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<script src="../assets/plugins/peity/jquery.peity.min.js"></script>
<script src="../assets/js/alpha.min.js"></script>
<script src="../assets/js/pages/dashboard.js"></script>
</body>
</html>
<?php } ?>
62
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Manage-departement.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
{
header('location:index.php');
}
else{
if(isset($_GET['del']))
{
$id=$_GET['del'];
$sql = "delete from tbldepartments WHERE id=:id";
$query = $dbh->prepare($sql);
$query -> bindParam(':id',$id, PDO::PARAM_STR);
$query -> execute();
$msg="Department record deleted";
?>
<!DOCTYPE html>
<html lang="en">
<head>
63
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="row">
<div class="col s12">
<div class="page-title">Manage Departments</div>
</div>
<div class="col s12 m12 l12">
<div class="card">
<div class="card-content">
<span class="card-title">Departments Info</span>
<?php if($msg){?><div class="succWrap"><strong>SUCCESS</strong> : <?php
echo htmlentities($msg); ?> </div><?php }?>
<table id="example" class="display responsive-table ">
<thead>
<tr>
<th>Sr no</th>
<th>Dept Name</th>
<th>Dept Short Name</th>
<th>Dept Code</th>
<th>Creation Date</th>
64
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<th>Action</th>
</tr>
</thead>
<tbody>
<?php $sql = "SELECT * from tbldepartments";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{ ?>
<tr>
<td> <?php echo htmlentities($cnt);?></td>
<td><?php echo htmlentities($result->DepartmentName);?></td>
<td><?php echo htmlentities($result->DepartmentShortName);?></td>
<td><?php echo htmlentities($result->DepartmentCode);?></td>
<td><?php echo htmlentities($result->CreationDate);?></td>
<td><a href="editdepartment.php?deptid=<?php echo
htmlentities($result->id);?>"><i class="material-icons">mode_edit</i></a><a
href="managedepartments.php?del=<?php echo htmlentities($result->id);?>" onclick="return
confirm('Do you want to delete');"> <i class="material-icons">delete_forever</i></a></td>
</tr>
<?php $cnt++;} }?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
</body>
</html>
<?php } ?>
65
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Manage-leavetype.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
{
header('location:index.php');
}
else{
if(isset($_GET['del']))
{
$id=$_GET['del'];
$sql = "delete from tblleavetype WHERE id=:id";
$query = $dbh->prepare($sql);
$query -> bindParam(':id',$id, PDO::PARAM_STR);
$query -> execute();
$msg="Leave type record deleted";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
66
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="row">
<div class="col s12">
<div class="page-title">Manage Leave Type</div>
</div>
67
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<th>Description</th>
<th>Creation Date</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php $sql = "SELECT * from tblleavetype";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{ ?>
<tr>
<td> <?php echo htmlentities($cnt);?></td>
<td><?php echo htmlentities($result->LeaveType);?></td>
<td><?php echo htmlentities($result->Description);?></td>
<td><?php echo htmlentities($result->CreationDate);?></td>
<td><a href="editleavetype.php?lid=<?php echo htmlentities($result-
>id);?>"><i class="material-icons">mode_edit</i></a>
<a href="manageleavetype.php?del=<?php echo htmlentities($result-
>id);?>" onclick="return confirm('Do you want to delete');"> <i class="material-
icons">delete_forever</i></a> </td>
</tr>
<?php $cnt++;} }?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
</body>
</html>
<?php } ?>
68
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Manage-employee.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
{
header('location:index.php');
}
else{
// code for Inactive employee
if(isset($_GET['inid']))
{
$id=$_GET['inid'];
$status=0;
$sql = "update tblemployees set Status=:status WHERE id=:id";
$query = $dbh->prepare($sql);
$query -> bindParam(':id',$id, PDO::PARAM_STR);
$query -> bindParam(':status',$status, PDO::PARAM_STR);
$query -> execute();
header('location:manageemployee.php');
}
69
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="row">
<div class="col s12">
70
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<tbody>
<?php $sql = "SELECT EmpId,FirstName,LastName,Department,Status,RegDate,id from
tblemployees";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{ ?>
<tr>
<td> <?php echo htmlentities($cnt);?></td>
<td><?php echo htmlentities($result->EmpId);?></td>
<td><?php echo htmlentities($result->FirstName);?> <?php echo
htmlentities($result->LastName);?></td>
<td><?php echo htmlentities($result->Department);?></td>
<td><?php $stats=$result->Status;
if($stats){
?>
<a class="waves-effect waves-green btn-flat m-b-xs">Active</a>
<?php } else { ?>
<a class="waves-effect waves-red btn-flat m-b-xs">Inactive</a>
<?php } ?>
</td>
<td><?php echo htmlentities($result->RegDate);?></td>
<td><a href="editemployee.php?empid=<?php echo htmlentities($result-
>id);?>"><i class="material-icons">mode_edit</i></a>
<?php if($result->Status==1)
{?>
71
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
<div class="left-sidebar-hover"></div>
</body>
</html>
<?php } ?>
72
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Leave.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
{
header('location:index.php');
}
else{
?>
<!DOCTYPE html>
<html lang="en">
<head>
73
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<?php include('includes/sidebar.php');?>
<main class="mn-inner">
<div class="row">
<div class="col s12">
<div class="page-title">Leave History</div>
</div>
74
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<tbody>
<?php $sql = "SELECT tblleaves.id as
lid,tblemployees.FirstName,tblemployees.LastName,tblemployees.EmpId,tblemployees.id,tbllea
ves.LeaveType,tblleaves.PostingDate,tblleaves.Status from tblleaves join tblemployees on
tblleaves.empid=tblemployees.id order by lid desc";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{
?>
<tr>
<td> <b><?php echo htmlentities($cnt);?></b></td>
<td><a href="editemployee.php?empid=<?php echo
htmlentities($result->id);?>" target="_blank"><?php echo htmlentities($result->FirstName."
".$result->LastName);?>(<?php echo htmlentities($result->EmpId);?>)</a></td>
<td><?php echo htmlentities($result->LeaveType);?></td>
<td><?php echo htmlentities($result->PostingDate);?></td>
<td><?php $stats=$result->Status;
if($stats==1){
?>
<span style="color: green">Approved</span>
<?php } if($stats==2) { ?>
<span style="color: red">Not Approved</span>
<?php } if($stats==0) { ?>
<span style="color: blue">waiting for approval</span>
<?php } ?>
</td>
<td>
<td><a href="leave-details.php?leaveid=<?php echo htmlentities($result->lid);?>"
class="waves-effect waves-light btn blue m-b-xs" > View Details</a></td>
</tr>
<?php $cnt++;} }?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
75
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<script src="../assets/plugins/material-preloader/js/materialPreloader.min.js"></script>
<script src="../assets/plugins/jquery-blockui/jquery.blockui.js"></script>
<script src="../assets/plugins/datatables/js/jquery.dataTables.min.js"></script>
<script src="../assets/js/alpha.min.js"></script>
<script src="../assets/js/pages/table-data.js"></script>
<script src="assets/js/pages/ui-modals.js"></script>
<script src="assets/plugins/google-code-prettify/prettify.js"></script>
</body>
</html>
<?php } ?>
76
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
Pending-leave.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link href="../assets/plugins/material-preloader/css/materialPreloader.min.css"
rel="stylesheet">
77
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="loader-bg"></div>
78
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="loader">
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
79
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="circle"></div>
</div>
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
</div>
</div>
</div>
<span class="material-design-hamburger__layer"></span>
</a>
</section>
80
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
<span class="badge">0</span></a></li>
</ul>
<li class="notificatoins-dropdown-container">
<ul>
<li class="notification-drop-title">Notifications</li>
</ul>
</div>
</nav>
</header>
<div class="side-nav-wrapper">
<div class="sidebar-profile">
<div class="sidebar-profile-image">
</div>
<div class="sidebar-profile-info">
<p>Admin</p>
</div>
81
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</div>
<li class="no-padding">
<div class="collapsible-body">
<ul>
</ul>
</div>
</li>
<li class="no-padding">
<div class="collapsible-body">
<ul>
</ul>
</div>
</li>
<li class="no-padding">
82
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
icons">keyboard_arrow_right</i></a>
<div class="collapsible-body">
<ul>
</ul>
</div>
</li>
<li class="no-padding">
<div class="collapsible-body">
<ul>
</ul>
</div>
</li>
<li class="no-padding">
</li>
</ul>
83
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="footer">
</div>
</div>
<div class="row">
</div>
<div class="card">
<div class="card-content">
<thead>
<tr>
<th>#</th>
<th>Status</th>
<th align="center">Action</th>
</tr>
</thead>
<tbody>
84
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<tr>
<td> <b>1</b></td>
<td>2017-12-02 23:56:01</td>
</td>
<td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
<script src="../assets/plugins/jquery/jquery-2.2.0.min.js"></script>
<script src="../assets/plugins/materialize/js/materialize.min.js"></script>
<script src="../assets/plugins/material-preloader/js/materialPreloader.min.js"></script>
<script src="../assets/plugins/jquery-blockui/jquery.blockui.js"></script>
85
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<script src="../assets/plugins/datatables/js/jquery.dataTables.min.js"></script>
<script src="../assets/js/alpha.min.js"></script>
<script src="../assets/js/pages/table-data.js"></script>
<script src="assets/js/pages/ui-modals.js"></script>
<script src="assets/plugins/google-code-prettify/prettify.js"></script>
</body>
</html>
86
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
..
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link href="../assets/plugins/material-preloader/css/materialPreloader.min.css"
rel="stylesheet">
<style>
.errorWrap {
padding: 10px;
87
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="loader-bg"></div>
<div class="loader">
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
88
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="circle"></div>
</div>
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
<div class="circle"></div>
</div>
</div>
<div class="circle"></div>
</div><div class="gap-patch">
<div class="circle"></div>
89
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="circle"></div>
</div>
</div>
</div>
</div>
<span class="material-design-hamburger__layer"></span>
</a>
</section>
</div>
<span class="badge">0</span></a></li>
</ul>
90
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<li class="notificatoins-dropdown-container">
<ul>
<li class="notification-drop-title">Notifications</li>
</ul>
</div>
</nav>
</header>
<div class="side-nav-wrapper">
<div class="sidebar-profile">
<div class="sidebar-profile-image">
</div>
<div class="sidebar-profile-info">
<p>Admin</p>
</div>
</div>
<li class="no-padding">
<div class="collapsible-body">
<ul>
91
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
</ul>
</div>
</li>
<li class="no-padding">
<div class="collapsible-body">
<ul>
</ul>
</div>
</li>
<li class="no-padding">
<div class="collapsible-body">
<ul>
</ul>
</div>
</li>
<li class="no-padding">
92
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="collapsible-body">
<ul>
</ul>
</div>
</li>
<li class="no-padding">
</li>
</ul>
<div class="footer">
</div>
</div>
<div class="row">
</div>
93
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<div class="card">
<div class="card-content">
<thead>
<tr>
<th>#</th>
<th>Status</th>
<th align="center">Action</th>
</tr>
</thead>
<tbody>
<tr>
<td> <b>1</b></td>
<td>Restricted Holiday(RH)</td>
<td>2017-12-03 13:59:07</td>
</td>
<td>
94
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
View Details</a></td>
</tr>
<tr>
<td> <b>2</b></td>
<td>2017-11-20 16:44:14</td>
</td>
<td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</main>
</div>
<div class="left-sidebar-hover"></div>
<script src="../assets/plugins/jquery/jquery-2.2.0.min.js"></script>
<script src="../assets/plugins/materialize/js/materialize.min.js"></script>
95
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
<script src="../assets/plugins/material-preloader/js/materialPreloader.min.js"></script>
<script src="../assets/plugins/jquery-blockui/jquery.blockui.js"></script>
<script src="../assets/plugins/datatables/js/jquery.dataTables.min.js"></script>
<script src="../assets/js/alpha.min.js"></script>
<script src="../assets/js/pages/table-data.js"></script>
<script src="assets/js/pages/ui-modals.js"></script>
<script src="assets/plugins/google-code-prettify/prettify.js"></script>
</body>
</html>
CONCLUSION
96
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
BENEFITS:
The project is identified by the merits of the system offered to the user.
The merits of this project are as follows: -
97
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
LIMITATIONS:
FUTURE IMPROVEMENT
A console for the data centre may be made available to allow the
personnel to monitor on the sites which were cleared for hosting during a
particular period.
98
EMPLOYEE LEAVE MANAGEMANT
SYSTEM
BIBLIOGRAPHY
www.15seconds.com
FOR SQL
www.msdn.microsoft.com
99