0% found this document useful (0 votes)
29 views81 pages

Group 15 CSE-2 Final Year Project Report

Uploaded by

Ayush2031028
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views81 pages

Group 15 CSE-2 Final Year Project Report

Uploaded by

Ayush2031028
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 81

PROJECT REPORT

ON
PLACEMENT
MANAGEMENT SYSTEM
submitted
in partial fulfillment for the degree of
B.TECH
IN
COMPUTER SCIENCE & ENGINEERING
(KCS-851)
by

NIKHIL KUMAR(1900270100119)
MAYANK GANDHI(1900270100104)
PRASHANT PANWAR (1900270100132)
NIKHIL KUMAR SINGH(1900270100118)
UNDER THE GUIDANCE OF
DR. CHARU AGARWAL

AJAY KUMAR GARG ENGINEERING COLLEGE


GHAZIABAD (2022-23)
CERTIFICATE

This is to certify that the project report entitled Placement


Mangement System submitted by Nikhil Kumar, Mayank
Gandhi, Prashant Panwar, Nikhil Kumar Singh to the Ajay
Kumar Garg Engineering College Ghaziabad in partial fulfillment
for the award of the degree of B. Tech in (Computer Science &
Engineering) is a bona fide record of project work carried out by
them under my supervision. The contents of this report, in full or
in parts, have not been submitted to any other Institution or
University for the award of any degree or diploma.

Dr. Charu Agarwal


(Computer Science & Engineering)

ii
DECLARATION

We hereby declare that this project report titled Placement


Management System submitted in partial fulfillment of the
degree of B. Tech in (Computer Science & Engineering) is a
record of original work carried out by me under the supervision of
Dr. Charu Agarwal , and has not formed the basis for the award
of any other degree or diploma, in this or any other Institution or
University. In keeping with the ethical practice of reporting
scientific information, due acknowledgments have been made
wherever the findings of others have been cited.

Nikhil Kumar (1900270100119)

Mayank Gandhi(1900270100104)

Prashant Panwar(1900270100132)

Nikhil Kumar Singh(1900270100118)

iii
ACKNOWLEDGMENTS
We take this opportunity to thank Dr. Charu Agarwal and
other faculty members who helped in preparing the guidelines.

We extend my sincere thanks to one and all of the AKGEC


family for the completion of this document on the project report
format guidelines.

Nikhil Kumar(1900270100119)

Mayank Gandhi(1900270100104)

Prashant Panwar(1900270100132)

Nikhil Kumar Singh(1900270100118)

iv
ABSTRACT

The system focuses on automation of conventional training and


placement management system. This system can be used as an
application for the Training &Placement Officers in the college
to manage the student information with regard to placement
and providing assistance using the assistance portal where
students can post their query to the TPO and coordinators.
Providing Student login helping them to update their personal
and educational information in a form which will be added to
the database and upload a resume and providing them with
preparation materials for placements. An additional feature of
the portal is a Company Tab which will be providing assistance
to the companies to shortlist the students as per their eligibility
criteria. It reduces the manual work and consumes less
paperwork to reduce the time. Front end of the system is
developed with the help of CSS, Bootstrap, and HTML.
Backend of this system will be managed with the help of PHP,
Android and XML. Database management of this system will
be done with the help of MYSQL database. Online Training
and Placement system automates activities of Training
and placement cell and place the best coordination between
students. It provides student community to use collective
intelligence to increase selection ratio and eases out process of
creation of management information automatically. Online
Training and Placement focuses on automation of placement
cell. Authorizing the CV, communicating about the various
job openings to the student community, managing the corporate
relationship for inviting them for the placements as well other
activities, monitoring the progress of the selection process
and communicating with different users.

v
LIST OF FIGURES
FIGURE TITLE PAGE NUMBER

4.1 Use case diagram for Student 16

4.2 Use case diagram for Admin 17

4.3 Use case diagram for Company 18

4.4 Entity Relationship Diagram of PMS 19

4.5 Class Diagram of PMS 20

4.6 Sequence diagram for Student 22

4.7 Sequence diagram for Admin 23

4.8 Sequence diagram for College 24


4.9 Zero-level data flow diagram of PMS 25
4.10 One-level data flow diagram of PMS 26
4.11 27
Second-level data flow diagram of PMS
4.12 Gantt Chart of PMS 28
4.13 Activity Diagram of PMS 29
6.1 Home page of PMS Website 61
6.2 Login Selection page of PMS Website 61
6.3 Login page for students on PMS Website 62
6.4 Login page for companies on PMS Website 62
6.5 Dashboard of Student on PMS Website 63
6.6 Dashboard of Company on PMS Website 63

6.7 Register Student page of PMS Website 64

6.8 Register Company page of PMS Website 64

vi
ABBREVIATIONS/ NOTATIONS/
NOMENCLATURE

This section provides the definitions of all terms, acronyms, and abbreviations
required to interpret this report.

PMS Placement Management System

Administ An object that holds power to verify the account created of


-rator student and company.

CRUD Create, Retrieve, Update, Delete

Contributer A Student or company that adds an initial product in the Project.

QR Code A unique identifier assigned to single items

Session The time which a User is actively using the system

SRS Software Requirements Specification

SDD Software Design Document

User The person who operates the software product.

vii
TABLE OF CONTENTS

DESCRIPTION PAGE NUMBER

CERTIFICATE ii

DECLARATION iii

ACKNOWLEDGEMENTS iv

ABSTRACT v

LIST OF FIGURES vi

ABBREVIATIONS/ NOTATIONS/ NOMENCLATURE vii

1. Introduction 1

Preface 1

Objective of the Project 1

Theoretical Background 3

Problem Definition 4

Scope of the Project 5

2. Overall Description 7

Project Perspective 7

Product Functions 7

User Classes & Characteristics 8

Operating Environment 9

Design and Implementation 9

User Documentation 10

Assumptions and Dependencies 10

3. Software Requirements Specifications 11

External Interface 11

Communications Interfaces 12

viii
System Features 12

Performance Requirements 13

Safety Requirements 13

Security Requirements 14

Software Quality Requirements 14

4. Requirements Modeling 15

USE case Diagrams 15

ER Diagram 19

Class Diagrams 20

Sequence Diagrams 21

Data Flow Diagrams 25

Gantt Chart 28

Activity Diagram 29

5. Experimental Analysis/Testing 30

Black Box Testing 30

6. Implementation of Integrated System 33

Pseudo Code for implementation 33

Screenshots & Examples to showcase the project 61

7. Future Scope 65

Possible Enhancements or features to add to Website 65

8. Conclusion 66

References 67

Resumes 69

ix
CHAPTER 1
INTRODUCTION

1.1 Preface

Manual Training and Placement which is done at various colleges is by


human intervention due to which there is a maximum chance of errors.
The major problem is searching and updating the student data. Placement
officers have to manage the student’s profile and their documents. The
Placement Officer has to collect the information of various companies
who come for recruitment. They have to arrange profiles of students
according to various streams and notify them each time according to
company requirements. Placement officers submit the information of
students and if any changes or updates are required in the profile of any
student, it has to be done manually. This process is so difficult and
tedious when the number of users increases. This is tedious and
time consuming. Chances of missing data are also possible. It is also
difficult for collecting, managing, and updating student data as the
number of students increases.

‘Placement Management System’ like many other placement


management websites, provides information on placement providers and
the placements and also keeps up to date information of all students. It is
a platform where students can view and assess their opportunities. The
system uses MySQL for Database management and will sort the data of
the student based on eligibility criteria demanded by the respective
companies and a list of eligible candidates will be prepared and they can
choose if they are interested to attend that particular drive or test. Based
on this a final data-set is created and the interested candidates will be
registered automatically by the system.

1.2 Objective of the Project

Our project is mainly focused on analysis and tracking of student


Performance in placement drives.
1
To implement this application, coordinator has to collect the student’s
data, those who are eligible and qualified for the aptitude and future
rounds. The current system is computerized one, but it does not meet the
needs of Training and Placement Cell. In existing system, the student’s
data is maintained in Excel Sheets. According to the Company’s
Requirement the data is short listed manually by the TPO's. Handling and
maintaining of student’s data manually is hectic to the T&P Dept. and
sometimes it might be inaccurate. To overcome these limitations, we
proposed a new system called “PLACEMENT MANAGEMENT
SYSTEM”.

The main purpose of this project is to add new features to existing


system. The proposed one is an online system which can be accessed
throughout the Organization and outside as well with valid login
credentials. This system can be used as an web application for the
Training and Placement Department of the college to manage student’s
information regarding Placements. The student’s record includes
personal details, educational qualifications, professional skills and
academics, etc. This system acts as central repository for student
information.

The Placement Management System acts as an interface between campus


recruitment cell and students. Here students can get the details by
logging into the website. Some circulars regarding on going placements
which are provided to the students who are going to attend campus
placements. This system also provides facility to admin to update details
of students and retrieve their data.

The Placement Management System is for the students and companies


which maintains the database for the students where all the students’
records are entered including their academic details and their personal
details. It will also manage the data of the Company which would
comprise of the profile of the Company, eligibility criteria and the
facilities or the package it provides etc. The System would provide the
facility of viewing both the personal and academic information of the
student and company; it would also search for eligible students and
Company and deal with the insertion and deletion of records.
2
Features:

 This project can be used very easily in the process of decision


making in new recruitments.
 Effective way of providing communication between job providers
and job seekers.
 Reliable and consistent way of searching jobs.

1.3 Theoretical Background

Recruitment is age-old process. It started even before industrialization,


probably with the inception of agriculture. With the wide acceptance of
internet and online tools, online or e-recruitment has also been there
since last two decades but it has not yet reached its full potential as yet.
Earlier recruitment was done manually and it was all at a time consuming
work. The world of recruitment is getting revolutionized. All industries,
organizations and colleges are adopting new tools and techniques for
talent acquisition and management. The millennial generation cannot
visualize life without computers, tabs, or smartphones. Recruitment and
selection are one of the most important management functions. The
whole process represents a significant investment in both financial and
other resources.

Recruitment and selection are two of the most important functions of


personnel management. Recruitment procedure selection and helps in
selecting a right candidate. Recruitment means to estimate the available
vacancies and to make suitable arrangements for their selection and
appointment. Recruitment is understood as the process of searching for
and obtaining applicants for jobs, from among whom the right people can
be selected.

As a final year student it is very crucial and important phase to get placed
at a particular company. Thus, colleges play a vital role for students to
get a job. Thus our project aims to do the same. It helps students to login
3
into the system and apply for the companies which have job vacancies.
At the same time admin will approve the student and help in throughout
the recruitment and placement procedure.

1.4 Problem Definition

Placement Management System provides online help to the users all over
the world. Using web recruitment systems like recruitment websites or
jobsites also play a role in simplifying the recruitment process. Such
websites have facilities where prospective candidates can upload their
CV’s and apply for jobs suited to them. Such sites also make it possible
for recruiters and companies to post their staffing requirements and view
profiles of interested candidates.

Earlier recruitment was done manually and it was all at a time consuming
work. Now it is all possible in a fraction of second. It is all done online
without much time consuming. Today’s recruitment applications are
designed to do a whole lot more than just reduce paperwork. They can
make a significant contribution to a company’s marketing and sales
activity. Recruitment websites and software make possible for managers
to access information that is crucial to managing their staff, which they
can use for promotion decisions, payroll considerations and succession
planning.

Limitations of Present System

Recruitment is done manually. These tasks are time consuming. It may


take one month or long. People around the world cannot apply. Online
Recruitment system very convenient because in the manual system there
are lot of difficulties in conducting and managing Interviews, short
listing, maintaining staff etc.

Proposed System

Placement Management project which relates to T & P department will


4
maintain entire recruitment service and provide services for job
vacancies. This project is a combination of two languages which are
Html & Css used to develop the web application using the php (server-
side scripting language). This project allows companies to post job
vacancies with respect to the subject on which they are looking for
employs and job seekers need to log in to their account with given login
and password and check job vacancies. Job seekers can check their job
application status from their account. This project will provide scope for
future development.

1.5 Scope of the Project

The project has a wide scope. Our project mainly helps in improving
productivity and makes use of utilization of resources. There is no
duplication of work as this was not the case when done manually. Thus it
reduces labor and increases morale. The system intends user friendly
operations which may resolve ambiguity. The project is a total
management and informative system, which provides the up- to-date
information of all the students in the college.
Our system also helps the college to overcome the difficulty in keeping
records of hundreds of students and searching for a student eligible for
recruitment criteria from the whole thing. It helps in effective and timely
utilization of resources. The project facilitates a user friendly, reliable
and fast management system.

The placement officer itself can carry out operations in a smooth and
effective manner. They need not concentrate on record keeping. The
college can maintain computerized records thus reducing paper work,
time and money.

The System would store all the academic as well as personal details of
the students who wish to be placed and the Companies who offer jobs to
the students. The details of the Companies as well as the students may be
updated or modified or deleted to keep the information up to date.

Also notifications would be sent to the students about the Companies i.e.
5
details like the Company profile, eligibility criteria for the job profile etc.
Also the information regarding the Placement activities or procedure for
a particular Company i.e. the selection rounds or procedure. means that
block chain can provide a secure platform for transactions, where
customers can trust that their personal and financial information is safe
and transactions are secure.

Features:

 This project can be used very easily in the process of decision


making in new recruitments.
 Effective way of providing communication between job providers
and job seekers.
 Reliable and consistent way of searching jobs.

6
Chapter 2

Overall Description

2.1 Product Perspective

In various colleges, training and placement officers have to manage the


students’ profiles and the documents of students for their training and
placement manually. Also Placement Officers have to collect the
information of various companies who want to recruit students and notify
students time to time about the placements. Placement Officer also have
to arrange profiles of students according to various streams and notify
them according to company requirements. If any modifications or
updates are required in the profile of the students or the Company, it has
to be searched and done manually. Hence the Placement Management
System would maintain a huge database for the complete details of the
students as well as the Companies in the Placement process which would
help to save time and effort.

2.2 Product Functions

 The Placement Development System is to be developed to make a


record of the Companies and Students by restricting large database
that would be used for each.

 The System would provide the facility to viewing both academic


and personal information of the student and also the company.

 The System would also be able to search the eligible students and
company with respect to their specification and requirement.

 The eligible students would receive an email including the details


of the company, placement procedure and other details.

7
2.3 User Classes and Characteristics

The major user classes in the system would be:

● Student
○ New student needs to Sign Up or Register giving complete details.
○ They can submit resume and update profile information.
○ They can register for Particular Company.

● Administrator

○ The admin has the supreme power of the application.


○ Admin provides approval to the Student and the Corporate
registration.
○ Admin is responsible for maintaining and updating the whole
system.
○ Admin has the responsibility to notify the Company for any
application from a student.
○ Admin has to notify the students regarding any changes in the
procedure or selection.

● Company

○ The Company has to notify the Admin or the Placement officer.


○ The Company initially has to sign up.
○ The Company may shortlist the students who applied. They may
use their details( academic as well as personal).

The other classes would be:


● Database
○ It needs to updated regarding any new additions i.e. of Company
and students.
○ It has to be updated regarding any notifications from the Company.

○ Once the selection procedure is complete, the redundant data of the


8
Company as well as the students is to be deleted.

2.4 Operating Environment

This web application can be deployed on Window - 10 machine with


Apache Server and MySQL server.

● Minimum RAM 512MB


● 20 GB Storage Space.
● Intel Dual Core Processor
● Internet Connectivity with Ports configured

This application can be accessed by user through a machine having any


web browser with html JavaScript support and flash to get video content.
The client devices must preferably have browsers like IE9 or above,
Mozilla Firefox (version 3.5 or above) or Opera 10 or chrome (version
29 or above) or safari installed in their OS and must have enabled flash
content to get videos output. Specified versions are preferred to get
HTML 5 output. The portal can be accessed through a mobile or PDA
with internet access and a web browser supporting html JavaScript
output.

2.5 Design and Implementation Constraints

Design Constraints:

● Security: The files in which the information regarding securities and


portfolios should be secured against malicious deformations.

● Fault Tolerance: Data should not become corrupted in case of system


crash or power failure.

9
2.6 User Documentation

User documentation components such as user manuals, online help, and


tutorials will be delivered along with the software. Manual can be
downloaded along the CMS package. Other tutorials and support form
will be made available in case to report any bug or other support related
issues. A simple how it works page will be included in package in html
static page format.

2.7 Assumptions and Dependencies

● We are assuming that the user should have some basic knowledge of
Computer.
● Jobseeker should be from any fields.

10
Chapter 3

SOFTWARE REQUIREMENTS
SPECIFICATIONS

3.1 External Interface


Development Tools:

● Languages: CSS, HTML, JavaScript, PHP.


● We use Apache 2.2.4 Web Server.
● We use MySQL 5.0 Database.
● We use VS Code as our editor.
● Web Browser: Microsoft Edge, Google Chrome.

On Client Side:

● Hardware Platform: Intel Pentium IV or above with 1 GB or


more RAM.
● Software Platform: Google Chrome v80+ or Mozilla Firefox
v70+

On Server Side:

● Hardware Platform: Intel I3 or higher with 8 GB or


more RAM & Minimum 20 GB Storage.

● Software Platform: HTML, CSS, Bootstrap, JavaScript, XAMPP


Control Panel.

11
Hardware Requirements:

● LAN and WAN


● 8 GB RAM
● 256 GB HDD
● i5 or above Processor

The product will host a local Apache web server where the user interface
will be displayed via the Google Chrome web browser. The scripting
language will define image placement, size and overall set-up. Javascript
will also be used to create background colors, border colors and text
display. JavaScript will be used to control client-side interactions (i.e.
sound output when image is clicked). The MySQL database will store the
images and sounds to be displayed at the output. All images are in jpeg
format.

3.2 Communications Interfaces

The requirements associated with any communications functions


required by this product, including email, web browser, network server
communications protocols, electronic forms, and so on.

Communication standards that will be used, such as FTP or HTTP.


Communication security or encryption issues will handle by using java
scripts.

3.3 System Features

The major user classes in the system would be:

● Student
○ New student needs to Sign Up or Register giving complete details.
○ They can submit resume and update profile information.
○ They can register for Particular Company.
12
● Administrator

○ The admin has the supreme power of the application.


○ Admin provides approval to the Student and the Corporate
registration.
○ Admin is responsible for maintaining and updating the whole
system.
○ Admin has the responsibility to notify the Company for any
application from a student.
○ Admin has to notify the students regarding any changes in the
procedure or selection.

● Company

○ The Company has to notify the Admin or the Placement officer.


○ The Company initially has to sign up.
○ The Company may shortlist the students who applied. They may
use their details( academic as well as personal).

3.4 Performance Requirements

Any performance requirement is not needed. User’s network speed may


increase performance.

3.5 Safety Requirements

If there is extensive damage to a wide portion of the database due to


catastrophic failure, such as a disk crash, the recovery method restores a
past copy of the database that was backed up to archival storage
(typically tape) and reconstructs a more current state by reapplying or
13
redoing the operations of committed transactions from the backed up log,
up to the time of failure.

3.6 Security Requirements

Security systems need database storage just like many other applications.
However, the special requirements of the security market mean that
vendors must choose their database partner carefully.

3.7 Software Quality Requirements

AVAILABILITY: All the students of the particular college should be


available to use the system.

CORRECTNESS: The software should provide the right information


about the students and even the companies which are going to visit.

MAINTAINABILITY: The administrator should maintain correct of the


data available.

USABILITY: The flight schedules should satisfy a maximum number of


customer’s needs.

14
CHAPTER 4
REQUIREMENTS MODELING

Requirements modeling in software engineering are essentially the


planning stage of a software application or system. Generally, the
process will begin when a business or an entity (for example, an
educational institution) approaches a software development team to
create an application or system from scratch or update an existing one.
Requirements modeling comprises several stages, or 'patterns': scenario-
based modeling, data modeling, flow-oriented modeling, class-based
modeling and behavioral modeling. Each of these stages/patterns
examines the same problem from a different perspective.

4.1 Use Case Diagram

A Use Case diagram at its simplest is a representation of a user's


interaction with the system that shows the relationship between the user
and the different use cases in which the user is involved. A use case
diagram can identify the different types of users of a system and the
different use cases and will often be accompanied by other types of
diagrams as well.
While a use case itself might drill into a lot of detail about every
possibility, a use- case diagram can't help provide a higher-level view of
the system. It has been said before that "Use case diagrams are the
blueprints for your system".

Actors:

 Student: Students have their own Credentials.

 Admin: T & P Dept. Credentials.

 Company: Recruiters have their own Credentials.

15
Figure 4.1. Use case diagram for Student.

16
Figure 4.2. Use case diagram for Admin.

17
Figure 4.3. Use case diagram for Company.

18
4.2 ER Diagram

An Entity-Relationship (ER) diagram is a specialized graphic that


illustrates the interrelationships between entities in a database. ER
diagrams often use symbols to represent. three different types of
information. Boxes are commonly used to represent entities. Diamonds
are normally used to represent relationships and ovals are used to
represent attributes in the Entity Relationship (ER) diagram.

There are various entities like user, buyer, cart, seller, order and product
who have different attributes and they are engaging with various
processes like register, login. adding items to cart, checkout, etc.

Figure 4.4. Entity Relationship diagram of PMS.

19
4.3 Class Diagram

Class diagrams are the blueprints of your system or subsystem. You can
use class diagrams to model the objects that make up the system, to
display the relationships between the objects, and to describe what those
objects do and the services that they provide. In the analysis stage, a
class diagram can help you to understand the requirements of your
problem domain and to identify its components. In an object-oriented
software project, the class diagrams that you create during the early
stages of the project contain classes that often translate into actual
software classes and objects when you write code.
Here, we have divided the whole project into various classes so that it
would be really helpful for us to divide the code into various segments.
We will develop classes one by one and do the unit testing of all the
classes.

Figure.4.5. Class Diagram of PMS.

20
4.4 Sequence Diagram

Sequence Diagrams are interaction diagrams that detail how operations


are carried out. They capture the interaction between objects in the
context of a collaboration. Sequence Diagrams are time focused and
they show the order of the interaction visually by using the vertical axis
of the diagram to represent time, what messages are sent and when.

Sequence Diagrams captures:

1)- the interaction that takes place in a collaboration that either realizes a
use case or an operation (instance diagrams or generic diagrams).

2)- high-level interactions between user of the system and the system,
between the system and other systems, or between subsystems
(sometimes known as system sequence diagrams).

21
Figure.4.6. Sequence Diagram for Student.

22
Figure.4.7. Sequence Diagram for Admin.

23
Figure.4.8. Sequence Diagram for Company.

24
4.5 Data Flow Diagrams

A data-flow diagram is a way of representing a flow of data through a


process or a system (usually an information system). The DFD also
provides information about the outputs and inputs of each entity and the
process itself. A data-flow diagram has no control flow — there are no
decision rules and no loops. Specific operations based on the data can be
represented by a flowchart.

4.5.1 Zero-Level DFD

DFD Level 0 is also called a Context Diagram. It's a basic overview of


the whole system or process being analyzed or modeled. It's designed to
be an at-a- glance view, showing the system as a single high-level
process, with its relationship to external entities. It's a basic overview of
the whole system or process being analyzed or modeled. It's designed to
be an at-a-glance view, showing the system as a single high-level
process, with its relationship to external entities.

Figure.4.9. Zero- Level DFD Diagram of PMS.


25
The figure shows a basic overview of Block-Bazar and the main process
being modeled. We can see the process of transactions with each other.

4.5.2 One-Level DFD

Level 1 DFD's aim is to give an overview of the full system. They look at
the system in more detail. Major processes are broken down into sub-
processes. Level 1 DFD also identifies data stores that are used by the
major processes.

In 1-level DFD, the context diagram is decomposed into multiple


bubbles/processes. In this level, we highlight the main functions of the
system and break down the high-level process of 0-level DFD into sub
processes.

Figure.4.10. One - Level DFD Diagram of PMS.


26
Above diagram shows a breakdown of major processes and highlights
some specific functions of use.

4.5.3 Second-Level DFD

This level provides an even more detailed view of the system by


breaking down the sub-processes identified in the level 1 DFD into
further sub-processes. Each sub-process is depicted as a separate process
on the level 2 DFD. The data flows and data stores associated with each
sub-process are also shown.

Figure.4.11. Second - Level DFD Diagram of PMS.

27
4.6 Gantt Chart

A Gantt chart is a commonly used graphical depiction of a project


schedule. It's a type of bar chart showing the start and finish dates of a
project's elements such as resources, planning and dependencies.

A Gantt chart is a project management tool assisting in the planning and


scheduling of projects of all sizes, although they are particularly useful
for simplifying complex projects. Project management timelines and
tasks are converted into a horizontal bar chart, showing start and end
dates, as well as dependencies, scheduling and deadlines, including how
much of the task is completed per stage and who is the task owner. This
is useful to keep tasks on track when there is a large team and
multiple stakeholders when the scope changes.

Figure.4.12. Gantt Chart of PMS.

28
4.7 Activity Diagram

Activity diagram is basically a flowchart to represent the flow from one


activity to another activity. The activity can be described as an operation
of the system. The control flow is drawn from one operation to another.
This flow can be sequential, branched, or concurrent.

Figure.4.13. Activity Diagram of PMS.

29
CHAPTER 5
Experimental Analysis/Testing

Software testing is an investigation conducted to provide stakeholders


with information about the quality of the product or service under test.
Software testing can also provide an objective, independent view of the
software to allow the business to appreciate and understand the risks of
software implementation. Test techniques include, but are not limited to,
the process of executing a program or application with the intent of
finding software bugs (errors or other defects). Software testing can be
stated as the process of validating and verifying that a computer
program/application/product:

 meets the requirements that guided its design and development,


 works as expected,
 can be implemented with the same characteristics.

Software testing, depending on the testing method employed, can be


implemented at any time in the development process.

5.1 Black Box Testing


The black-box approach is a testing method in which test data are
derived from the specified functional requirements without regard to the
final program structure. It is also termed data- driven, input/output
driven, or requirements-based testing. Because only the functionality of
the software module is of concern, black-box testing also mainly refers to
functional testing – a testing method emphasized on executing the
functions and examination of their input and output data. The tester treats
the software under test as a black box – only the inputs, outputs and
specification are visible, and the functionality is determined by observing
the outputs to corresponding inputs.

30
31
32
CHAPTER 6
IMPLEMENTATION OF INTEGRATED SYSTEM

6.1 Pseudo code for implementation


6.1.1 Code for Index
<?php

//To Handle Session Variables on This Page


session_start();

//Including Database Connection From db.php file to avoid rewriting in all files
require_once("db.php");
?>
<!DOCTYPE html>
<html lang="en">
<title>Home</title>

<head>
<?php

include 'php/head.php'

?>

</head>

<body>

<!-- header starts -->


<?php

include 'php/header.php'

?>
<!-- header ends -->

<section id="hero-animated" class="hero-animated d-flex align-items-center">


<div class="container d-flex flex-column justify-content-center align-items-center text-center
position-relative" data-aos="zoom-out">
<img src="assets/img/hero-carousel/hero-carousel-.svg" class="img-fluid animated">
<h2>Welcome to <span>Placement Cell</span></h2>
<p>We Will Support You In Your Entire Placement Journey.</p>
<div class="d-flex">
<a href="login.php" class="btn-get-started scrollto">Get Started</a>

33
</div>
</div>
</section>

<main id="main">

<!-- ======= Featured Services Section ======= -->


<!-- <section id="featured-services" class="featured-services">
<div class="container">

<div class="row gy-4">

<div class="col-xl-3 col-md-6 d-flex" data-aos="zoom-out">


<div class="service-item position-relative">
<div class="icon"><i class="bi bi-activity icon"></i></div>
<h4><a href="" class="stretched-link">Login</a></h4>
<p>Students can login using their credentials. </p>
</div>
</div>

<div class="col-xl-3 col-md-6 d-flex" data-aos="zoom-out" data-aos-delay="200">


<div class="service-item position-relative">
<div class="icon"><i class="bi bi-bounding-box-circles icon"></i></div>
<h4><a href="" class="stretched-link">Register</a></h4>
<p>Register yourself here.</p>
</div>
</div>

<div class="col-xl-3 col-md-6 d-flex" data-aos="zoom-out" data-aos-delay="400">


<div class="service-item position-relative">
<div class="icon"><i class="bi bi-calendar4-week icon"></i></div>
<h4><a href="" class="stretched-link">Look for companies</a></h4>
<p>You can search for companies.</p>
</div>
</div>

<div class="col-xl-3 col-md-6 d-flex" data-aos="zoom-out" data-aos-delay="600">


<div class="service-item position-relative">
<div class="icon"><i class="bi bi-broadcast icon"></i></div>
<h4><a href="" class="stretched-link">Apply for Drives</a></h4>
<p>Look for eligibilty criteria and apply for companies accordingly.</p>
</div>
</div><!-- End Service Item -->

</div>

</div>
</section><!-- End Featured Services Section -->

<!-- ======= Call To Action Section ======= -->


<section id="cta" class="cta">
34
<div class="container" data-aos="zoom-out">

<div class="row g-5">

<div class="col-lg-8 col-md-6 content d-flex flex-column justify-content-center order-last


order-md-first">
<h3>Placement <em>Portal</em> </h3>
<p>The Placement Cell plays a crucial role in locating job
opportunities for under graduates and post graduates passing out from the college by
keeping in touch with reputed firms and industrial establishments.
<br>The placement cell operates round the year to facilitate contacts between companies
and graduates. The number of students placed through the campus interviews is
continuously rising.
</p>
<a class="cta-btn align-self-start" href="#">Get Started</a>
</div>

<div class="col-lg-4 col-md-6 order-first order-md-last d-flex align-items-center">


<div class="img">
<img src="assets/img/feature-7.jpg" alt="" class="img-fluid">
</div>
</div>

</div>

</div>
</section><!-- End Call To Action Section -->

<!-- ======= Clients Section ======= -->


<section id="clients" class="clients">
<div class="container" data-aos="zoom-out">

<div class="clients-slider swiper">


<div class="swiper-wrapper align-items-center">
<div class="swiper-slide"><img src="assets/img/clients/client-1.svg" class="img-fluid"
alt=""></div>
<div class="swiper-slide"><img src="assets/img/clients/client-2.png" class="img-fluid"
alt=""></div>
<div class="swiper-slide"><img src="assets/img/clients/client-3.png" class="img-fluid"
alt=""></div>
<div class="swiper-slide"><img src="assets/img/clients/client-4.png" class="img-fluid"
alt=""></div>
<div class="swiper-slide"><img src="assets/img/clients/client-5.png" class="img-fluid"
alt=""></div>
<div class="swiper-slide"><img src="assets/img/clients/client-6.png" class="img-fluid"
alt=""></div>
<div class="swiper-slide"><img src="assets/img/clients/client-7.png" class="img-fluid"
alt=""></div>
<div class="swiper-slide"><img src="assets/img/clients/client-8.png" class="img-fluid"
alt=""></div>
</div>
</div>

35
</div>
</section><!-- End Clients Section -->

<!-- ======= Features Section ======= -->


<section id="objectives" class="features" name="objectives">
<div class="container" data-aos="fade-up">

<div class="tab-content">

<div class="tab-pane active show" id="tab-1">


<div class="row gy-4">
<div class="col-lg-8 order-2 order-lg-1" data-aos="fade-up" data-aos-delay="100">
<h3>Objectives</h3>
<p class="fst-itali">
Our Placement Portal serves various objectives:
</p>
<ul>
<li><i class="bi bi-check-circle-fill"></i> Developing the students to meet the
Industries recruitment process.
</li>
<li><i class="bi bi-check-circle-fill"></i> To motivate students to develop
Technical knowledge and soft skills in
terms of career planning, goal setting.
</li>
<li><i class="bi bi-check-circle-fill"></i> To produce world-class professionals
who have excellent analytical skills,
communication skills, team building spirit and ability to work in cross cultural
environment.</li>

</ul>
</div>
<div class="col-lg-4 order-1 order-lg-2 text-center" data-aos="fade-up" data-aos-
delay="200">
<img src="assets/img/features-1.svg" alt="" class="img-fluid">
</div>
</div>
</div>
<!-- End Tab Content -->

<section id="statistics" class="content-header">


<div class="container">
<div class="row">
<div class="col-md-12 text-center latest-job margin-bottom-20">
<h1>Our Statistics</h1>
</div>
</div>
36
<div class="row">
<div class="col-lg-3 col-xs-6">
<!-- small box -->
<div class="small-box bg-aqua">
<div class="inner">
<?php
$sql = "SELECT * FROM job_post";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$totalno = $result->num_rows;
} else {
$totalno = 0;
}
?>
<h3>
<?php echo $totalno; ?>
</h3>

<p>Total Drives</p>
</div>
<div class="icon">
<i class="ion ion-ios-paper"></i>
</div>
</div>
</div>
<!-- ./col -->
<div class="col-lg-3 col-xs-6">
<!-- small box -->
<div class="small-box bg-green">
<div class="inner">
<?php
$sql = "SELECT * FROM company WHERE active='1'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$totalno = $result->num_rows;
} else {
$totalno = 0;
}
?>
<h3>
<?php echo $totalno; ?>
</h3>

<p>Job Offers</p>
</div>
<div class="icon">
<i class="ion ion-briefcase"></i>
</div>
</div>
</div>
<!-- ./col -->
<div class="col-lg-3 col-xs-6">
<!-- small box -->
<div class="small-box bg-yellow">
37
<div class="inner">
<?php
$sql = "SELECT * FROM users WHERE resume!=''";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$totalno = $result->num_rows;
} else {
$totalno = 0;
}
?>
<h3>
<?php echo $totalno; ?>
</h3>

<p>CV'S/Resume</p>
</div>
<div class="icon">
<i class="ion ion-ios-list"></i>
</div>
</div>
</div>
<!-- ./col -->
<div class="col-lg-3 col-xs-6">
<!-- small box -->
<div class="small-box bg-red">
<div class="inner">
<?php
$sql = "SELECT * FROM users WHERE active='1'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$totalno = $result->num_rows;
} else {
$totalno = 0;
}
?>
<h3>
<?php echo $totalno; ?>
</h3>

<p>Daily Users</p>
</div>
<div class="icon">
<i class="ion ion-person-stalker"></i>
</div>
</div>
</div>
<!-- ./col -->
</div>
</div>
</section>
<!-- ======= F.A.Q Section ======= -->

</main><!-- End #main -->


38
<!-- ======= Footer ======= -->

<?php

include 'php/footer.php';
?>

<!-- End Footer -->

<!-- TPO bot -->

<a href="javascript:" id="return-to-top"><i class="icon-chevron-up"></i></a>

<button class="open-button is-size-5" onclick="openForm()" style="color:#6900FF !


important;"><strong><i class="fas fa-comment-alt"></i> Chat</strong></button>

<div class="chat-popup" id="myForm">


<form class="form-container">
<iframe style="border: none;border-radius: 5px;" width="280" height="390" allow="microphone;"
src="https://console.dialogflow.com/api-client/demo/embedded/7dec0910-2f92-4902-849c-
5c6f90718781">
</iframe>

<button type="button" class="button cancel is-fullwidth" style="background-color: rgba(105, 0,


255, 0.11);color:#6900FF;" onclick="closeForm()"><strong>Close</strong></button>
</form>
</div>

</div>

<!-- JS FILES -->


<script src="https://cdn.jsdelivr.net/npm/chart.js@2.8.0"></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.js'></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" integrity="sha512-
bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/
1itJ0C2ejDxltZVFg==" crossorigin="anonymous"></script>
<script src="{% static 'js/tabs.js' %}"></script>
<style>

</style>
<script>
// ===== Scroll to Top ====
$(window).scroll(function() {
if ($(this).scrollTop() >= 50) { // If page is scrolled more than 50px
$('#return-to-top').fadeIn(200); // Fade in the arrow
} else {
$('#return-to-top').fadeOut(200); // Else fade out the arrow
}
});
$('#return-to-top').click(function() { // When arrow is clicked
$('body,html').animate({
scrollTop: 0 // Scroll to top of body
}, 500);
39
});

function openForm() {
document.getElementById("myForm").style.display = "block";
}

function closeForm() {
document.getElementById("myForm").style.display = "none";
}
$("#button").click(function() {
$('html, body').animate({
scrollTop: $("#about").offset().top
}, 1000);
});
$("#button1").click(function() {
$('html, body').animate({
scrollTop: $("#events").offset().top
}, 1000);
});
</script>
<script src="assets/js/main1.js"></script>
<link href="//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css" rel="stylesheet">
<script src="assets/js/counter.js"></script>

<!-- tpo bot ends -->

</body>

</html>

6.1.2 Code for Login


<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="https://cdn.tailwindcss.com"></script>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Andada+Pro:ital@1&display=swap"
rel="stylesheet">
<!-- Favicons -->
<link href="img/logo1.png" rel="icon">
<link href="assets/img/apple-touch-icon.png" rel="apple-touch-icon">
<!-- Google Fonts -->
40
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?
family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&fa
mily=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family
=Source+Sans+Pro:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600;1,700&display=swap"
rel="stylesheet">

<!-- Vendor CSS Files -->


<link href="assets/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<link href="assets/vendor/bootstrap-icons/bootstrap-icons.css" rel="stylesheet">
<link href="assets/vendor/aos/aos.css" rel="stylesheet">
<link href="assets/vendor/glightbox/css/glightbox.min.css" rel="stylesheet">
<link href="assets/vendor/swiper/swiper-bundle.min.css" rel="stylesheet">

<!-- Variables CSS Files. Uncomment your preferred color scheme -->
<link href="assets/css/variables.css" rel="stylesheet">

<!-- Template Main CSS File -->


<link href="assets/css/main.css" rel="stylesheet">

<!-- custom css -->

<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/ionicons/2.0.1/css/ionicons.min.css">
<link rel="stylesheet" href="css/AdminLTE.min.css">
<link rel="stylesheet" href="css/_all-skins.min.css">
<link rel="stylesheet" href="assets/css/chat.css">
<title>Login</title>
</head>

<body>

<?php

include 'php/header.php'

?>
<section class="text-gray-600 body-font">
<div class="container px-5 py-24">
<div class="flex flex-wrap -m-4">
<div class="p-4 md:w-1/3">
<div class="h-full border-2 border-gray-200 border-opacity-60 rounded-lg overflow-
hidden">
<img class="lg:h-48 md:h-36 w-full object-cover object-center"
src="assets/img/login/login-2.jpg" alt="blog">
<div class="p-6">
41
<h2 class="tracking-widest text-xs title-font font-medium text-gray-400 mb-
1">Are you a </h2>
<h1 class="title-font text-lg font-medium text-gray-900 mb-3">Student?</h1>
<p class="leading-relaxed mb-3">Students can login using their credentials.
New students can register.</p>
<div class="flex items-center flex-wrap ">
<a href="login-candidates.php" class="text-indigo-500 inline-flex items-
center md:mb-2 lg:mb-0">Login/Register
<svg class="w-4 h-4 ml-2" viewBox="0 0 24 24" stroke="currentColor"
stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path d="M5 12h14"></path>
<path d="M12 5l7 7-7 7"></path>
</svg>
</a>

</div>
</div>
</div>
</div>
<div class="p-4 md:w-1/3 ">
<div class="h-full border-2 border-gray-200 border-opacity-60 rounded-lg overflow-
hidden">
<img class="lg:h-48 md:h-36 w-full object-cover object-center"
src="assets/img/login/login-1.jpg" alt="blog">
<div class="p-6">
<h2 class="tracking-widest text-xs title-font font-medium text-gray-400 mb-
1">Are you from the</h2>
<h1 class="title-font text-lg font-medium text-gray-900 mb-3">Placement
Cell ?</h1>
<p class="leading-relaxed mb-3">The placement coordinators can log into their
account from here.</p>
<div class="flex items-center flex-wrap">
<a href="login-company.php" class="text-indigo-500 inline-flex items-center
md:mb-2 lg:mb-0">Login/Register
<svg class="w-4 h-4 ml-2" viewBox="0 0 24 24" stroke="currentColor"
stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path d="M5 12h14"></path>
<path d="M12 5l7 7-7 7"></path>

</svg>
</a>

</div>
</div>
</div>
</div>
<div class="p-4 md:w-1/3 bg-gray-700" style="font-family: 'Andada Pro', serif;
color:#d1b8c6">
<ol list-style:upper-roman>
42
<li>Placement is a decisive factor of successful completion of any coursework at
the graduate or postgraduate level.</li>
<br>
<li>It is a dream of every student to get placed in top MNCs to achieve their set
goals and objectives.</li>
<br>
<li> The private universities are also levelling up their game by equipping and
upgrading their training and placement cells.</li>
<br>
<li> Contrary to popular belief, the role of the placement cell is not limited to
organisingrecruitment drive at the campus.</li>
<br>
<li> They play a much broader role in placing a student in a reputed organisation.
Let’s find out how!</li>
<br>
<li style="text-align:right">- Training and Placement Officer</li>

</ol>
</div>
</div>

</div>
<div>

</div>
</section>

<?php
include 'php/footer.php'
?>
</body>

</html>

6.1.3 Code for Register-Candidates


<?php

session_start();

if (isset($_SESSION['id_user']) || isset($_SESSION['id_company'])) {
header("Location: index.php");
exit();
}

?>
<!DOCTYPE html>
43
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Placement Portal</title>
<!-- Tell the browser to be responsive to screen width -->
<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
name="viewport">
<!-- Bootstrap 3.3.7 -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/
bootstrap.min.css">
<!-- Font Awesome -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">
<!-- Ionicons -->
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/ionicons/2.0.1/css/ionicons.min.css">
<!-- Theme style -->
<link rel="stylesheet" href="css/AdminLTE.min.css">
<link rel="stylesheet" href="css/_all-skins.min.css">
<!-- Custom -->
<link rel="stylesheet" href="css/custom.css">

<!-- Google Font -->


<link rel="stylesheet" href="https://fonts.googleapis.com/css?
family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic">
</head>

<body class="hold-transition skin-green sidebar-mini">

<?php
include 'uploads/register_page_header.php';
?>
<!-- Content Wrapper. Contains page content -->
<div class="wrapper">
<div class=" content-wrapper" style="margin-left: 0px;">

<section class="content-header">
<div class="container">
<div class="row latest-job margin-top-50 margin-bottom-20 bg-white">
<h3 class="text-center margin-bottom-20">Create Your Profile</h3>
<form method="post" id="registerCandidates" action="adduser.php"
enctype="multipart/form-data">
<div class="col-md-6 latest-job ">
<div class="form-group">
<input class="form-control input-lg" type="text" id="fname" name="fname"
placeholder="First Name *" required>
</div>
<div class="form-group">
44
<input class="form-control input-lg" type="text" id="lname" name="lname"
placeholder="Last Name *" required>
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" id="email" name="email"
placeholder="Email *" required>
</div>
<div class="form-group">
<textarea class="form-control input-lg" rows="4" id="aboutme" name="aboutme"
placeholder="Brief intro about yourself *" required></textarea>
</div>
<div class="form-group">
<label>Date Of Birth</label>
<input class="form-control input-lg" type="date" id="dob" min="1960-01-01"
max="1999-01-31" name="dob" placeholder="Date Of Birth">
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" id="age" name="age"
placeholder="Age" readonly>
</div>
<div class="form-group">
<label>Passing Year</label>
<input class="form-control input-lg" type="date" id="passingyear"
name="passingyear" placeholder="Passing Year">
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" id="qualification"
name="qualification" placeholder="Highest Qualification">
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" id="stream" name="stream"
placeholder="Stream">
</div>
<div class="form-group checkbox">
<label><input type="checkbox"> I accept terms & conditions</label>
</div>
<div class="form-group">
<button class="btn btn-flat btn-success">Register</button>
</div>
<?php
//If User already registered with this email then show error message.
if (isset($_SESSION['registerError'])) {
?>
<div class="form-group">
<label style="color: red;">Email Already Exists! Choose A Different Email!</label>
</div>
<?php
unset($_SESSION['registerError']);
}
?>
45
<?php if (isset($_SESSION['uploadError'])) { ?>
<div class="form-group">
<label style="color: red;"><?php echo $_SESSION['uploadError']; ?></label>
</div>
<?php unset($_SESSION['uploadError']);
} ?>

</div>
<div class="col-md-6 latest-job ">
<div class="form-group">
<input class="form-control input-lg" type="password" id="password"
name="password" placeholder="Password *" required>
</div>
<div class="form-group">
<input class="form-control input-lg" type="password" id="cpassword"
name="cpassword" placeholder="Confirm Password *" required>
</div>
<div id="passwordError" class="btn btn-flat btn-danger hide-me">
Password Mismatch!!
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" id="contactno" name="contactno"
minlength="10" maxlength="10" onkeypress="return validatePhone(event);" placeholder="Phone
Number">
</div>
<div class="form-group">
<textarea class="form-control input-lg" rows="4" id="address" name="address"
placeholder="Address"></textarea>
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" id="city" name="city"
placeholder="City">
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" id="state" name="state"
placeholder="State">
</div>
<div class="form-group">
<textarea class="form-control input-lg" rows="4" id="skills" name="skills"
placeholder="Enter Skills"></textarea>
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" id="designation"
name="designation" placeholder="Designation">
</div>

<div class="form-group">
<label style="color: red;">File Format PDF Only!</label>
<input type="file" name="resume" class="btn btn-flat btn-danger" required>
46
</div>
</div>
</form>

</div>
</div>
</section>

</div>
<!-- /.content-wrapper -->

<footer class="main-footer" style="margin-left: 0px;">


<div class="text-center">
<strong>Copyright &copy; 2022 <a href="learningfromscratch.online">Placement
Portal</a>.</strong> All rights
reserved.
</div>
</footer>

<!-- /.control-sidebar -->


<!-- Add the sidebar's background. This div must be placed
immediately after the control sidebar -->
<div class="control-sidebar-bg"></div>

</div>
<!-- ./wrapper -->

<!-- jQuery 3 -->


<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<!-- Bootstrap 3.3.7 -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/
bootstrap.min.js"></script>
<!-- AdminLTE App -->
<script src="js/adminlte.min.js"></script>

<script type="text/javascript">
function validatePhone(event) {

//event.keycode will return unicode for characters and numbers like a, b, c, 5 etc.
//event.which will return key for mouse events and other events like ctrl alt etc.
var key = window.event ? event.keyCode : event.which;

if (event.keyCode == 8 || event.keyCode == 46 || event.keyCode == 37 || event.keyCode ==


39) {
// 8 means Backspace
//46 means Delete
// 37 means left arrow
// 39 means right arrow
47
return true;
} else if (key < 48 || key > 57) {
// 48-57 is 0-9 numbers on your keyboard.
return false;
} else return true;
}
</script>

<script type="text/javascript">
$('#dob').on('change', function() {
var today = new Date();
var birthDate = new Date($(this).val());
var age = today.getFullYear() - birthDate.getFullYear();
var m = today.getMonth() - birthDate.getMonth();

if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {


age--;
}

$('#age').val(age);
});
</script>
<script>
$("#registerCandidates").on("submit", function(e) {
e.preventDefault();
if ($('#password').val() != $('#cpassword').val()) {
$('#passwordError').show();
} else {
$(this).unbind('submit').submit();
}
});
</script>
</body>

</html>

6.1.4 Code for Register- Company


<?php
session_start();

if (isset($_SESSION['id_user']) || isset($_SESSION['id_company'])) {
header("Location: index.php");
exit();
}

require_once("db.php");
?>
<!DOCTYPE html>
<html>

48
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Placement Portal</title>
<!-- Tell the browser to be responsive to screen width -->
<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
name="viewport">
<!-- Bootstrap 3.3.7 -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/
bootstrap.min.css">
<!-- Font Awesome -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">
<!-- Ionicons -->
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/ionicons/2.0.1/css/ionicons.min.css">
<!-- Theme style -->
<link rel="stylesheet" href="css/AdminLTE.min.css">
<link rel="stylesheet" href="css/_all-skins.min.css">
<!-- Custom -->
<link rel="stylesheet" href="css/custom.css">
<!-- HTML5 Shim and Respond.js 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="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->

<!-- Google Font -->


<link rel="stylesheet" href="https://fonts.googleapis.com/css?
family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic">
</head>

<body class="hold-transition skin-green sidebar-mini">

<?php
include 'uploads/register_page_header.php';
?>
<div class="wrapper">

<!-- Content Wrapper. Contains page content -->


<div class="content-wrapper" style="margin-left: 0px;">

<section class="content-header">
<div class="container">
<div class="row latest-job margin-top-50 margin-bottom-20 bg-white">
<h3 class="text-center margin-bottom-20">Placement Cell Profile</h3>
<form method="post" id="registerCompanies" action="addcompany.php"
49
enctype="multipart/form-data">
<div class="col-md-6 latest-job ">
<div class="form-group">
<input class="form-control input-lg" type="text" name="name" placeholder="Full
Name" required>
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" name="companyname"
placeholder="Designation">
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" name="website"
placeholder="Website">
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" name="email" placeholder="Email"
required>
</div>
<div class="form-group">
<textarea class="form-control input-lg" rows="4" name="aboutme"
placeholder="Roles & Responsibility"></textarea>
</div>
<div class="form-group checkbox">
<label><input type="checkbox" required> I accept terms & conditions</label>
</div>
<div class="form-group">
<button type="submit" class="btn btn-flat btn-success">Register</button>
</div>
<?php
//If Company already registered with this email then show error message.
if (isset($_SESSION['registerError'])) {
?>
<div>
<p class="text-center" style="color: red;">Email Already Exists! Choose A Different
Email!</p>
</div>
<?php
unset($_SESSION['registerError']);
}
?>
<?php
if (isset($_SESSION['uploadError'])) {
?>
<div>
<p class="text-center" style="color: red;"><?php echo $_SESSION['uploadError']; ?
></p>
</div>
<?php
unset($_SESSION['uploadError']);
}
50
?>
</div>
<div class="col-md-6 latest-job ">
<div class="form-group">
<input class="form-control input-lg" type="password" name="password"
placeholder="Password" required>
</div>
<div class="form-group">
<input class="form-control input-lg" type="password" name="cpassword"
placeholder="Confirm Password" required>
</div>
<div id="passwordError" class="btn btn-flat btn-danger hide-me">
Password Mismatch!!
</div>
<div class="form-group">
<input class="form-control input-lg" type="text" name="contactno"
placeholder="Phone Number" minlength="10" maxlength="10" autocomplete="off"
onkeypress="return validatePhone(event);" required>
</div>
<div class="form-group">
<select class="form-control input-lg" id="country" name="country">
<option selected="" value="">Select Country</option>
<?php
$sql = "SELECT * FROM countries";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "<option value='" . $row['name'] . "' data-id='" . $row['id'] . "'>" .
$row['name'] . "</option>";
}
}
?>

</select>
</div>
<div id="stateDiv" class="form-group" style="display: none;">
<select class="form-control input-lg" id="state" name="state">
<option value="" selected="">Select State</option>
</select>
</div>
<div id="cityDiv" class="form-group" style="display: none;">
<select class="form-control input-lg" id="city" name="city">
<option selected="">Select City</option>
</select>
</div>
<div class="form-group">
<label>Upload your profile picture</label>
<input type="file" name="image" class="form-control input-lg">
</div>
51
</div>
</form>

</div>
</div>
</section>

</div>
<!-- /.content-wrapper -->

<footer class="main-footer" style="margin-left: 0px;">


<div class="text-center">
<strong>Copyright &copy; 2022 <a href="learningfromscratch.online">Placement
Portal</a>.</strong> All rights
reserved.
</div>
</footer>

<!-- /.control-sidebar -->


<!-- Add the sidebar's background. This div must be placed
immediately after the control sidebar -->
<div class="control-sidebar-bg"></div>

</div>
<!-- ./wrapper -->

<!-- jQuery 3 -->


<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<!-- Bootstrap 3.3.7 -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/
bootstrap.min.js"></script>
<!-- AdminLTE App -->
<script src="js/adminlte.min.js"></script>

<script type="text/javascript">
function validatePhone(event) {

//event.keycode will return unicode for characters and numbers like a, b, c, 5 etc.
//event.which will return key for mouse events and other events like ctrl alt etc.
var key = window.event ? event.keyCode : event.which;

if (event.keyCode == 8 || event.keyCode == 46 || event.keyCode == 37 || event.keyCode ==


39) {
// 8 means Backspace
//46 means Delete
// 37 means left arrow
// 39 means right arrow
return true;
52
} else if (key < 48 || key > 57) {
// 48-57 is 0-9 numbers on your keyboard.
return false;
} else return true;
}
</script>

<script>
$("#country").on("change", function() {
var id = $(this).find(':selected').attr("data-id");
$("#state").find('option:not(:first)').remove();
if (id != '') {
$.post("state.php", {
id: id
}).done(function(data) {
$("#state").append(data);
});
$('#stateDiv').show();
} else {
$('#stateDiv').hide();
$('#cityDiv').hide();
}
});
</script>

<script>
$("#state").on("change", function() {
var id = $(this).find(':selected').attr("data-id");
$("#city").find('option:not(:first)').remove();
if (id != '') {
$.post("city.php", {
id: id
}).done(function(data) {
$("#city").append(data);
});
$('#cityDiv').show();
} else {
$('#cityDiv').hide();
}
});
</script>
<script>
$("#registerCompanies").on("submit", function(e) {
e.preventDefault();
if ($('#password').val() != $('#cpassword').val()) {
$('#passwordError').show();
} else {
$(this).unbind('submit').submit();
}
});
53
</script>
</body>

</html>

6.1.5 Code for Contact


<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">

<meta content="width=device-width, initial-scale=1.0" name="viewport">

<title>Placement Portal</title>
<meta content="" name="description">
<meta content="" name="keywords">
<!-- Favicons -->
<link href="img/logo1.png" rel="icon">
<link href="assets/img/apple-touch-icon.png" rel="apple-touch-icon">
<!-- Google Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?
family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&fa
mily=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family
=Source+Sans+Pro:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600;1,700&display=swap"
rel="stylesheet">

<!-- Vendor CSS Files -->


<link href="assets/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<link href="assets/vendor/bootstrap-icons/bootstrap-icons.css" rel="stylesheet">
<link href="assets/vendor/aos/aos.css" rel="stylesheet">
<link href="assets/vendor/glightbox/css/glightbox.min.css" rel="stylesheet">
<link href="assets/vendor/swiper/swiper-bundle.min.css" rel="stylesheet">

<!-- Variables CSS Files. Uncomment your preferred color scheme -->
<link href="assets/css/variables.css" rel="stylesheet">

<!-- Template Main CSS File -->


<link href="assets/css/main.css" rel="stylesheet">

<!-- custom css -->

<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/ionicons/2.0.1/css/ionicons.min.css">
<link rel="stylesheet" href="css/AdminLTE.min.css">
<link rel="stylesheet" href="css/_all-skins.min.css">
<link rel="stylesheet" href="assets/css/chat.css">
54
</head>

<body>

<!-- <header> -->

<?php

include 'php/header.php'

?>

<!-- </header> -->


<!-- ======= Contact Section ======= -->
<section id="contact" class="contact">
<div class="container">

<div class="section-header">
<h2><strong>Contact Us</strong></h2>
<p>School of Computer Science and Engineering, AKGEC, Ghaziabad.</p>
</div>

</div>

<div class="map">
<iframe src="https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!
1d14001.868028856697!2d77.5020041!3d28.6756736!3m2!1i1024!2i768!4f13.1!3m3!1m2!
1s0x390cf30885b1e2a5%3A0x9983675e24c6638b!2sAKGEC%3A%20Ajay%20Kumar
%20Garg%20Engineering%20College%2C%20Ghaziabad!5e0!3m2!1sen!2sin!
4v1685082693002!5m2!1sen!2sin" frameborder="0" allowfullscreen></iframe>
</div><!-- End Google Maps -->

<div class="container">

<div class="row gy-5 gx-lg-5">

<div class="col-lg-4">

<div class="info">
<h3>Get in touch</h3>
<p>PlACEMENT CELL</p>

<div class="info-item d-flex">


<i class="bi bi-geo-alt flex-shrink-0"></i>
<div>
<h4>Location:</h4>
55
<p>AKGEC, 27th Km Milestone, Delhi-Meerut Expressway, P.O.
Adhyatmik Nagar, Ghaziabad - 201009.</p>
</div>
</div><!-- End Info Item -->

<div class="info-item d-flex">


<i class="bi bi-envelope flex-shrink-0"></i>
<div>
<h4>Email:</h4>
<p>tpo@akgec.ac.in</p>
</div>
</div><!-- End Info Item -->

<div class="info-item d-flex">


<i class="bi bi-phone flex-shrink-0"></i>
<div>
<h4>Call:</h4>
<p>8744052891-93</p>
</div>
</div><!-- End Info Item -->

</div>

</div>

<div class="col-lg-8">
<form action="forms/contact.php" method="post" role="form" class="php-email-
form">
<div class="row">
<div class="col-md-6 form-group">
<input type="text" name="name" class="form-control" id="name"
placeholder="Your Name" required>
</div>
<div class="col-md-6 form-group mt-3 mt-md-0">
<input type="email" class="form-control" name="email" id="email"
placeholder="Your Email" required>
</div>
</div>
<div class="form-group mt-3">
<input type="text" class="form-control" name="subject" id="subject"
placeholder="Subject" required>
</div>
<div class="form-group mt-3">
<textarea class="form-control" name="message" placeholder="Message"
required></textarea>
</div>
<div class="my-3">
<div class="loading">Loading</div>
<div class="error-message"></div>
<div class="sent-message">Your message has been sent. Thank you!</div>
56
</div>
<div class="text-center"><button type="submit">Send Message</button></div>
</form>
</div><!-- End Contact Form -->

</div>

</div>
</section><!-- End Contact Section -->

<!-- footer starts -->

<?php

include 'php/footer.php';
?>
<!-- footer ends -->

</body>

</html>

6.1.6 Code for Check Login


<?php

//To Handle Session Variables on This Page


session_start();

//Including Database Connection From db.php file to avoid rewriting in all files
require_once("db.php");

//If user Actually clicked login button


if(isset($_POST)) {

//Escape Special Characters in String


$email = mysqli_real_escape_string($conn, $_POST['email']);
$password = mysqli_real_escape_string($conn, $_POST['password']);

//Encrypt Password
$password = base64_encode(strrev(md5($password)));

//sql query to check user login


$sql = "SELECT id_user, firstname, lastname, email, active FROM users WHERE
email='$email' AND password='$password'";
$result = $conn->query($sql);

//if user table has this this login details


57
if($result->num_rows > 0) {
//output data
while($row = $result->fetch_assoc()) {

if($row['active'] == '0') {
$_SESSION['loginActiveError'] = "Your Account Is Not Active.
Check Your Email.";
header("Location: login-candidates.php");
exit();
} else if($row['active'] == '1') {

//Set some session variables for easy reference


$_SESSION['name'] = $row['firstname'] . " " . $row['lastname'];
$_SESSION['id_user'] = $row['id_user'];

if(isset($_SESSION['callFrom'])) {
$location = $_SESSION['callFrom'];
unset($_SESSION['callFrom']);

header("Location: " . $location);


exit();
} else {
header("Location: user/index.php");
exit();
}
} else if($row['active'] == '2') {

$_SESSION['loginActiveError'] = "Your Account Is Deactivated.


Contact Admin To Reactivate.";
header("Location: login-candidates.php");
exit();
}

//Redirect them to user dashboard once logged in successfully

}
} else {

//if no matching record found in user table then redirect them back to login page
$_SESSION['loginError'] = $conn->error;
header("Location: login-candidates.php");
exit();
}

//Close database connection. Not compulsory but good practice.


$conn->close();

} else {
//redirect them back to login page if they didn't click login button
header("Location: login-candidates.php");
58
exit();
}

6.1.7 Code for Check Company Login


<?php

//To Handle Session Variables on This Page


session_start();

//Including Database Connection From db.php file to avoid rewriting in all files
require_once("db.php");

//If user Actually clicked login button


if (isset($_POST)) {

//Escape Special Characters in String


$email = mysqli_real_escape_string($conn, $_POST['email']);
$password = mysqli_real_escape_string($conn, $_POST['password']);

//Encrypt Password
$password = base64_encode(strrev(md5($password)));

//sql query to check company login


$sql = "SELECT id_company, companyname, email, active FROM company WHERE
email='$email' AND password='$password' ";
$result = $conn->query($sql);
//
//if company table has this this login details
if ($result->num_rows > 0) {
//output data
while ($row = $result->fetch_assoc()) {

if ($row['active'] == '2') {
$_SESSION['companyLoginError'] = "Your Account Is Still
Pending Approval.";
header("Location: login-company.php");
exit();
} else if ($row['active'] == '0') {
$_SESSION['companyLoginError'] = "Your Account Is Rejected.
Please Contact For More Info.";
header("Location: login-company.php");
exit();
} else if ($row['active'] == '1') {
// active 1 means admin has approved account.
//Set some session variables for easy reference
$_SESSION['name'] = $row['companyname'];
$_SESSION['id_company'] = $row['id_company'];

59
//Redirect them to company dashboard once logged in successfully
header("Location: company/index.php");
exit();
} else if ($row['active'] == '3') {
$_SESSION['companyLoginError'] = "Your Account Is
Deactivated. Contact Admin For Reactivation.";
header("Location: login-company.php");
exit();
}
}
} else {
//if no matching record found in user table then redirect them back to login page
$_SESSION['loginError'] = $conn->error;
header("Location: login-company.php");
exit();
}

//Close database connection. Not compulsory but good practice.


$conn->close();
} else {
//redirect them back to login page if they didn't click login button
header("Location: login-company.php");
exit();
}

60
6.2 Screenshots and examples to showcase the project
(Screenshots of Placement Management System Website)

Figure 6.1.Home page of Placement Management System Website

Figure 6.2. Login Selection Page of PMS Website

61
Figure 6.3. Login Page for students on PMS Website.

Figure 6.4. Login Page for Companies on PMS Website.

62
Figure 6.5. Dashboard of Student on PMS Website.

Figure 6.6. Dashboard of Company on PMS Website.

63
Figure 6.7 .Register Student page of PMS Website.

Figure 6.8.Register Company Page of PMS Website

64
CHAPTER 7
FUTURE SCOPE
7.1 Possible enhancements or features to add to the
Website

• In future there is a chance to conduct MR after HR in such cases we can


change the application according to the requirements.

• There is a chance to generate graphs on placement procedure on the


bases of database.

• In future there is a scope for staff/coordinators to change their


passwords. In future we can add an alert domain for the sake of students.

• In future we can add a Feedback from student to faculty.

• In future we can add Company information through company page


links.

• In future we can add Chatbot for clarifying our doubts.

• In the future new functionality can be added to the system.


Automatically email will be generated and can be sent to the students if
their job status gets changed.

• While filling in their details documents upload option can be added so


verification can be done side by side.

• Filtration of jobs can be added to the system. These changes can be


done in future scope according to the user's requirements.

65
CHAPTER 8

CONCLUSION

From a proper analysis of positive points and constraints on the


component, it can be safely concluded that the product is a highly
efficient GUI based component. This application is working properly and
meeting to all user requirements. This component can be easily plugged
in many other systems.

Now a days manual process of searching a job of one’s choice as well as


searching the appropriate candidate for a specific job has become a huge
task and so realizing the need for easy management of this process, the
site has been developed. It is very easy to update and maintain
information through this site. The main features of this site include
flexibility, ease of manipulation of information, easy access searching,
storage, reduction of manual work in an efficient manner, a quick,
convenient, reliable, timely and effective way to reach recruiting, search
and employment professionals worldwide and it is also very economical.
The project could very well be enhanced further as per the requirements.

In the existing system most of the work will be done manually, as it takes
more time for any changes in the system. The major problem with this
existing system is notification method available is not available for
giving information about student expect the notice board or circulars.
The proposed system is online training and placement management
system gives the automation in all the process of campus recruitment,
searching student details individually. This system in future could be
joined to SMS server so that it can notify the message to students via
SMS for upcoming companies.

66
REFERENCES

1. shiqiuHuang,Rzhang,zhengwei Qi: Static program analysis assisted


dynamic taint tracking for software vulnerability discovery.

2. AlmahdiAlszzhareef, Ahmed Alkilany "Toward a Student Information


System for Sebha University, Libya",Fifth international conference on
Innovative Computing Technology

3. Prabhu T Kannan, Srividya K Bansal,"Unimate: A Student


Information System",2013 International Conference Communications
and Informatics on Advances in Computing,

4. www.php.net

5. SlideShare: https//www.slideshare.com

6. wikipedia: https//www.wikipedia.com

7. Sql: https//www.mysql.com

8. www.guru99.com

9. IEEE, IEEE Std 830-1998 IEEE Recommended Practice for Software


Requirements

10. Specifications. IEEE Computer Society, 1998.

11. Ian Sommerville, Software Engineering, 10th Edition, (Pearson,


2017)

12. Santhosh Kumar H,” Online Training and Placement Management


system” ,International Journal of Engineering Research Technology
(IJERT),ICACT - 2016 Conference Proceedings.

13. Rajnesh Tripathi, Raghvendra Singh, Jaweria Usmani, ”Campus


Recruitment and Placement Sys- tem”, International Conference on
67
Recent Innovations in Science and Engineering(Icrise-18), April, 2018.

14. https://srs.blogspot.com : I had referred to this website to get an idea


about the topics.

15. http://www.nirmauni.ac.in

16. Laracasts https://laracasts.com/

17.www.javatpoint.com

18. www.geeksforgeeks.org

19. www.stackoverflow.com

20. www.tutoralspoint.com

68
69
70
71
72

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy