0% found this document useful (0 votes)
27 views65 pages

A Project Report

The document presents a project report on 'The College Department Management System (CDMS)', designed to automate academic and administrative tasks within a college, enhancing efficiency and communication among students, parents, faculty, and administrators. It outlines the project's objectives, methodology, system design, and includes acknowledgments, declarations, and a literature survey. The CDMS integrates various modules to streamline processes such as enrollment, attendance, grading, and parent engagement, ultimately aiming to reduce manual errors and improve overall management.

Uploaded by

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

A Project Report

The document presents a project report on 'The College Department Management System (CDMS)', designed to automate academic and administrative tasks within a college, enhancing efficiency and communication among students, parents, faculty, and administrators. It outlines the project's objectives, methodology, system design, and includes acknowledgments, declarations, and a literature survey. The CDMS integrates various modules to streamline processes such as enrollment, attendance, grading, and parent engagement, ultimately aiming to reduce manual errors and improve overall management.

Uploaded by

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

A PROJECT REPORT ON

“The College Department Management System (CDMS)”

2024-2025

This project work is submitted in a partial fullfilment of requirement for the


award of diploma in

Computer Technology

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION, MUMBAI

-: SUBMITTED BY :-

Miss.Ekta S. Meshram Miss.Bushra R. Khan


Miss Shivani S. Wasnik Miss.Swejal S. Gedam
Miss.Saloni K. Meshram

Under the guidance of

PROF. S. I. BANSOD

(Lecturer in Computer Technology Dept.)

GOVERNMENT POLYTECHNIC, BRAMHAPURI


DIST. CHANDRAPUR
DEPARTMENT OF COMPUTER TECHNOLOGY
GOVERNMENT POLYTECHNIC, BRAMHAPURI
DIST. CHANDRAPUR

SUBMISSION
We are the undersigned solemnly declare that the report of the project work
entitled “The College Department Management System(CDMS) ” is based on
our work carried out during the course of our study under the guidance of PROF
S. I. BANSOD (Lecturer in CM Dept.) We assert that the statements made and
conclusions drawn are an outcome of our project work.

We further certify that,

• The work contained in the project report is original and has


been done by us under the guidance of guide.
• The work has not been submitted to any other institute for any
other degree / diploma certificate.

Student Name Enrollment Number Sign


Ekta S. Meshram
Shivani S. Wasnik
Saloni K. Meshram
Bushra R. Khan
Swejal S. Gedam

Date:- / / Place: - Bramhapuri


GOVERNMENT POLYTECHNIC, BRAMHAPURI
DIST. CHANDRAPUR
DEPARTMENT OF COMPUTER TECHNOLOGY

CERTIFICATE

This is to certify that the following student of this institute have carried the project work on “The
College Department Management System(CDMS)” under my guidance in “Diploma in
Computer Technology/ Engineering” during the academic session 2024-25. This work has been
in partial fulfilment requirement for the Award of Diploma in Computer Engineering from
Maharashtra State Board of Technical Education, Mumbai.

Student Name Enrollment Number Sign


Ekta S. Meshram
Shivani S. Wasnik
Saloni K. Meshram
Bushra R. Khan
Swejal S. Gedam

Under the guidance of


PROF. S. I. BANSOD
(Lecturer in Computer Technology Dept.)

Prof. S. K. KHARKATE Dr. R. L. WANKHADE

(HOD of CM Dept.) (Principal)


Government Polytechnic Bramhapuri Government Polytechnic Bramhapuri
GOVERNMENT POLYTECHNIC, BRAMHAPURI
DIST. CHANDRAPUR
DEPARTMENT OF COMPUTER TECHNOLOGY

Examiner’s Certificate

This is to certify that the following students of final year students of Computer
Technology of Government Polytechnic, Bramhapuri were examined by me for
the project work entitled, “The College Department Management
System(CDMS)” for academic year 2024-2025 and the project is approved.

Student Name Enrollment Number Sign


Ekta S. Meshram
Shivani S. Wasnik
Saloni K. Meshram
Bushra R. Khan
Swejal S. Gedam

Date:- / /
Place: - Bramhapuri Sign and Name of Examiner
DECLARATION BY THE STUDENTS

We the undersigned solemnly declare that the report of the project work entitled
“The College Department Management System(CDMS)” is based on my own
work carried out during the course of my study under the supervision of Prof. S.
I. BANSOD. We assert that the statements made and conclusions drawn are an
outcome of my project work.

I further certify that:

• The work contained in the project report is original and has been done
by me under the general supervision of my guide.

• The work has not been submitted to any other institute for any other
degree/diploma/certificate in this university or any other university of
INDIA or abroad.

• I have followed the guidelines provided by the MSBTE in writing the project
work.

• Whenever I have used materials (data, theoretical analysis, and text)


from other sources.

Student Name Enrollment Number Sign


Ekta S. Meshram
Shivani S. Wasnik
Saloni K. Meshram
Bushra R. Khan
Swejal S. Gedam
Acknowledgement
We take this opportunity to express my profound gratitude and the whole hearted
thanks to my project guide PROF. S. I. BANSOD for her kind, disciplined and
invaluable guidance which inspired us to solve all the difficulties that come across
during competition of the project.

Also we express our special thanks to PROF. S. K. KHARKATE Head of CM Dept


and PROF. S. I. BANSOD lecturer in CM Dept. for her kind support, valuable
suggestions and allowing us to use all facility that are available in the department during
this project.

Our sincere thanks are due to DR. R. L. WANKHADE Principal of institute for
extending the all possible help and allowing us to use all resources available in the
institute.

We would like to thanks all the faculty members of CM and IF Department for
their support and suggestion for the successful completion of this project work.

We would also like to thanks all the non-teaching staff (Technical and Non-
Technical) of CM and IF Department.

SUBMITTED BY

Student Name Enrollment Number Sign


Ekta S. Meshram
Shivani S. Wasnik
Saloni K. Meshram
Bushra R. Khan
Swejal S. Gedam
INDEX

Topic Name :-

LIST OF FIGURES
ABSTRACT

CHAPTER 1
INTRODUCTION AND PROBLEM DEFINATION
1.1 INTRODUCTION
1.2 PROBLEM DEFINATION

CHAPTER 2
LITREATURE SURVEY
2.1 LITREATURE SURVEY

CHAPTER 3
PROPOSED METHODOLOGY
3.1 PROPOSED METHODOLOGY

CHAPTER 4
SYSTEM DESIGN
4.1 SYSTEM FLOW CHART DIAGRAM
4.2 DATA FLOW DIAGRAM
4.3 E – R DIAGRAM

CHAPTER 5
SOFTWARE AND HARDWARE REQUIREMENT
5.1 SOFTWARE AND HARDWARE REQUIREMENT

CHAPTER 6
IMPLIMENTATION DETAILS
6.1 CODING
6.2 MODULES
6.3 SNAPSHOTS
CHAPTER 7
ADVANTAGES AND DISADVANTAGES
7.1 ADVANTAGES AND DISADVANTAGES
CHAPTER 8
FUTURE SCOPE
8.1 FUTURE SCOPE
CHAPTER 9
CONCLUSION
9.1CONCLUSION
CHAPTER 10
REFERENCES
10.1REFERENCE
LIST OF FIGURES

SR. NO. FIGURES NAME


1. FLOW CHART

2. USE CASE DIAGRAM

3. E-R DIAGRAM
ABSTRACT

The College Department Management System (CDMS) is a comprehensive application designed to


automate academic, administrative, and extracurricular activities within a college. The system
centralizes student enrollment, attendance, grading, fee payment, and parent communication. By
streamlining these tasks, the CDMS improves efficiency, reduces manual errors, and enhances
communication between students, parents, faculty, and administrators.
CHAPTER-1

(INTRODUCTION AND PROBLEM DEFINITION)


1.1 INTRODUCTION

The College Department Management System (CDMS) is a comprehensive solution designed to


address the growing need for efficiency and automation in managing academic and administrative
processes within educational institutions. In today’s fast-paced environment, colleges often struggle
with manual systems that result in inefficiencies, delays in processing student data, errors in record-
keeping, and miscommunication between various departments. These challenges affect not only
academic management but also critical areas such as extracurricular activities and parent engagement.

The CDMS offers a centralized platform that Integrates these functions into one cohesive system,
eliminating the need for multiple standalone applications and reducing manual intervention. It
streamlines everyday operations by automating routine tasks, thereby improving accuracy and reducing
the workload on administrative staff and faculty. Additionally, the system provides real-time access to
information, enabling better decision-making, efficient management of student records, and enhanced
communication between students, parents, faculty, and administrators.

A primary challenge for colleges is maintaining accurate and up-to-date information on student
enrollment, attendance, grading, and fee payments. The CDMS addresses this by offering a dedicated
Student Module, which automates these core tasks. It manages the entire student lifecycle, from
enrollment to graduation, ensuring efficient handling of academic records, attendance, and grades.

The system also enhances parent engagement through the Parent Module, which provides real-time
access to a child’s academic progress, attendance records, and important announcements. This
transparency fosters stronger relationships between parents, students, and the institution, ensuring
parents remain informed and involved in their child’s academic journey.

Furthermore, the Faculty Module allows faculty members to manage academic tasks such as teaching,
tracking attendance, evaluating students, and providing feedback. The Admin Module oversees the
management of users, resources, data, and system settings, ensuring smooth operation and overall
efficiency of the CDMS.

Overall, the CDMS is designed to simplify the complex workflows involved in running a college. By
integrating multiple modules into one system, it reduces manual work, improves accuracy, and
enhances communication, ultimately providing a user-friendly and efficient platform for
administrators, faculty, students, and parents.

Modules:

Student Module: Handles enrollment, attendance, and academic records.

Parent Module: Provides parents with access to their child’s academic progress and attendance.

Admin Module: Manages users, resources, data, and system settings to ensure smooth operation.
Faculty Module: Facilitates academic tasks such as teaching, attendance tracking, student evaluation,
and feedback.
1.2 PROBLEM DEFINITION

In colleges, managing academic and administrative tasks such as student enrollment, attendance
tracking, grading, and fee collection is often done manually, leading to inefficiencies, errors, and
delays. Handling these processes without a centralized system results in data redundancy and poor
communication between students, parents, faculty, and administrators.

Parents also face challenges in staying updated on their child’s academic progress and attendance, as
there is no real-time connection between them and the institution.

To address these issues, a comprehensive College Department Management System (CDMS) is


needed. The CDMS will automate student data management, improve communication with parents.
By integrating these modules, the CDMS will reduce errors, save time, and provide a more efficient
and user-friendly platform for all stakeholders.
CHAPTER-2

(LITERATURE SURVEY)
2.1 LITERATURE SURVEY

➢ Prosanta Kumar Chaki & Shikha Anirban’s developed, “Algorithm For Effective Seating
Plan For Exam System” Volume 4 Issue 14 May 2017.

In this research, we are going to offer a model and some algorithm to solve exam seating
problem. Our proposed system is applicable for I shape seat allocation system. The system needs
two types of data as input, Room information and Exam information. The total number of students
must have to be less than or equal to the total seats. For offering optimum seating solution we
followed some steps.

➢ A.H.Nandhu Kishore, A.Sasireka , K. Vijay, Designed and Developed Enhanced Exam


Hall Seating Arrangement Automation System on 2021.

The classifier algorithm is used for efficient generation of seating arrangement and Advanced
Encryption System (AES) algorithm is used for password verification of registered users for
ensuring high-level security. The software application will notify the students and staff about the
respective exam hall through their email id. Thus, it reduces the searching time of the examination
hall not only for the students but also for the staff member.

➢ Dayanand G Savakar, Ravi Hosur, DzAutomation of Examination Systemdz, International


Journal of Science and Research, Volume 4 Issue 11 November 2015.

This application is an automated system for the entire institute that deals with candidate seat
allotment and faculty room allocation for exams at university level to manage the semester
examination process using the cloud computing technology. Here the computerized system
allocates the set of students to a particular block and supervisor to their block and also allows the
supervisor to exchange their duties, generate report cards to specific date, session, block and
generate the report for the students that were absent for particular examination.
CHAPTER-3

(PROPOSED METHODOLOGHY)
3.1 PROPOSED METHODOLOGY

Our proposed system developed for a digital platform accessible to both administrators
and examinees, where seating arrangements can be managed efficiently. This platform should
allow administrators to input examination details, such as the number of examinees, seating
preferences, and any special accommodations required.

MySQL enhances PHP's interaction with MySQL databases, offering better security and
advanced operations. It's used in the seating arrangement system to store and manage examination
schedules, seating arrangements, and student data securely. PDO provides a consistent approach
to database access in PHP, enabling seamless integration with various database systems. It adds
flexibility to the seating arrangement system, allowing it to support multiple database platforms
beyond MySQL, ensuring compatibility and portability. Composer simplifies dependency
management in PHP projects, making it easy to integrate third-party libraries and frameworks. In
the seating arrangement system, Composer handles dependencies on external components like
authentication, authorization, and UI features, streamlining development and ensuring efficient
maintenance.
CHAPTER-4

(SYSTEM DESIGNED)
4.1 SYSTEM FLOW CHART DIAGRAM
4.3 E – R DIAGRAM

LEVEL 1:-
In Level 1, we break down the College Management System into individual processes and
show the data flowing between the system and the users. The processes involve core functions
of the system, such as student management, attendance tracking, and library management.

Processes:

1. Student Enrollments
2. Attendance Tracking
3. Grades Recording
4. Course Management
5. Manage Attendance
Entity Relationship(ER)Diagram:

Fig 4.3
CHAPTER-5
(HARDWARE AND SOFTWARE
REQUIREMENT)
➢ SOFTWARE REQUIREMENT:

Operating System - Windows 10 /11 XAMMP


Web Server
Microsoft Excel (For exporting the data in Excel)

➢ HARDWARE REQUIREMENT:

Processor: Intel Core I3 Ram :


4gb
Hdd : 1tb
Monitor : 15” Color Monitor
CHAPTER-6
(IMPLEMENTATION DETAILS)
6.1 MODULES

• Admin Module:-
o Admins manage student registrations, faculty data, and course details.They oversee
the entire system's data and user access.Admins can generate reports and monitor
department activities.This reduces manual work and improves operational
efficiency.

• Teacher Module:
o Teachers can take attendance and manage student records efficiently.
o They can upload grades, assignments, and exam results.
o The module enables easy communication with students and parents.
o This streamlines academic tracking and improves teacher workflow.

o Parent Module:-
o Parents can view their child’s grades and attendance instantly.
o They receive real-time updates on academic performance.
o Important notices from departments are shared with parents.
o This helps parents stay involved and support their child better.

• Student Module:-
o Students can access course details, grades, and enrollment status.
o They receive department notices, exam schedules, and assignments.
o They can view attendance records and academic performance.
o This module ensures students stay informed and organized.
.
6.2 CODING

Index.php
<?php </head>
include '../Includes/dbcon.php';
include '../Includes/session.php'; <body id="page-top">
$query = "SELECT <div id="wrapper">
tblclass.className,tblclassarms.classArmNam <!-- Sidebar -->
e <?php include "Includes/sidebar.php";?>
FROM tblclassteacher <!-- Sidebar -->
INNER JOIN tblclass ON tblclass.Id = <div id="content-wrapper" class="d-flex
tblclassteacher.classId flex-column">
INNER JOIN tblclassarms ON <div id="content">
tblclassarms.Id = tblclassteacher.classArmId <!-- TopBar -->
Where tblclassteacher.Id = <?php include "Includes/topbar.php";?>
'$_SESSION[userId]'"; <!-- Topbar -->
<!-- Container Fluid-->
$rs = $conn->query($query); <div class="container-fluid"
$num = $rs->num_rows; id="container-wrapper">
$rrw = $rs->fetch_assoc(); <div class="d-sm-flex align-items-
center justify-content-between mb-4">
<h1 class="h3 mb-0 text-gray-
?> 800">Class Teacher Dashboard (<?php echo
$rrw['className'].' -
<!DOCTYPE html> '.$rrw['classArmName'];?>)</h1>
<html lang="en"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a
<head> href="./">Home</a></li>
<meta charset="utf-8"> <li class="breadcrumb-item active"
<meta http-equiv="X-UA-Compatible" aria-current="page">Dashboard</li>
content="IE=edge"> </ol>
</div>

<div class="row mb-3">


<meta name="viewport" <!-- New User Card Example -->
content="width=device-width, initial-scale=1, <?php
shrink-to-fit=no"> $query1=mysqli_query($conn,"SELECT *
<meta name="description" content=""> from tblstudents where classId =
<meta name="author" content=""> '$_SESSION[classId]' and classArmId =
<link href="img/logo/attnlg.jpg" rel="icon"> '$_SESSION[classArmId]'");
<title>Dashboard</title> $students = mysqli_num_rows($query1);
<link href="../vendor/fontawesome- ?>
free/css/all.min.css" rel="stylesheet" <div class="col-xl-3 col-md-6 mb-4">
type="text/css"> <div class="card h-100">
<link <div class="card-body">
href="../vendor/bootstrap/css/bootstrap.min.cs <div class="row no-gutters align-
s" rel="stylesheet" type="text/css"> items-center">
<link href="css/ruang-admin.min.css" <div class="col mr-2">
rel="stylesheet"> <div class="text-xs font-weight-

18
bold text-uppercase mb-1">Students</div> text-primary"></i>
<div class="h5 mb-0 mr-3 font- </div>
weight-bold text-gray-800"><?php echo </div>
$students;?></div> </div>
<div class="mt-2 mb-0 text- </div>
muted text-xs"> </div>
<!-- <span class="text-success <!-- Earnings (Annual) Card Example -
mr-2"><i class="fas fa-arrow-up"></i> ->
20.4%</span> <?php
<span>Since last $query1=mysqli_query($conn,"SELECT *
month</span> --> from tblclassarms");
</div> $classArms = mysqli_num_rows($query1);
</div> ?>
<div class="col-auto"> <div class="col-xl-3 col-md-6 mb-4">
<i class="fas fa-users fa-2x text- <div class="card h-100">
info"></i> <div class="card-body">
</div> <div class="row no-gutters align-
</div> items-center">
</div> <div class="col mr-2">
</div> <div class="text-xs font-weight-
</div> bold text-uppercase mb-1">Class Arms</div>
<!-- Earnings (Monthly) Card Example <div class="h5 mb-0 font-
--> weight-bold text-gray-800"><?php echo
<?php $classArms;?></div>
$query1=mysqli_query($conn,"SELECT * <div class="mt-2 mb-0 text-
from tblclass"); muted text-xs">
$class = mysqli_num_rows($query1); <!-- <span class="text-success
?> mr-2"><i class="fas fa-arrow-up"></i>
<div class="col-xl-3 col-md-6 mb-4"> 12%</span>
<div class="card h-100"> <span>Since last years</span>
<div class="card-body"> -->
<div class="row align-items- </div>
center"> </div>
<div class="col mr-2"> <div class="col-auto">
<div class="text-xs font-weight- <i class="fas fa-code-branch fa-
bold text-uppercase mb-1">Classes</div> 2x text-success"></i>
<div class="h5 mb-0 font- </div>
weight-bold text-gray-800"><?php echo </div>
$class;?></div> </div>
<div class="mt-2 mb-0 text- </div>
muted text-xs"> </div>
<!-- <span class="text-success
mr-2"><i class="fa fa-arrow-up"></i> <!-- Pending Requests Card Example -
3.48%</span> ->
<span>Since last <?php
month</span> --> $query1=mysqli_query($conn,"SELECT *
</div> from tblattendance where classId =
</div> '$_SESSION[classId]' and classArmId =
<div class="col-auto"> '$_SESSION[classArmId]'");
<i class="fas fa-chalkboard fa-2x $totAttendance = mysqli_num_rows($query1);

19
?> <!-- Footer -->
<div class="col-xl-3 col-md-6 mb-4"> </div>
<div class="card h-100"> </div>
<div class="card-body">
<div class="row no-gutters align- <!-- Scroll to top -->
items-center"> <a class="scroll-to-top rounded"
<div class="col mr-2"> href="#page-top">
<div class="text-xs font-weight- <i class="fas fa-angle-up"></i>
bold text-uppercase mb-1">Total Student </a>
Attendance</div>
<div class="h5 mb-0 font- <script
weight-bold text-gray-800"><?php echo src="../vendor/jquery/jquery.min.js"></script>
$totAttendance;?></div> <script
<div class="mt-2 mb-0 text- src="../vendor/bootstrap/js/bootstrap.bundle.m
muted text-xs"> in.js"></script>
<!-- <span class="text-danger <script src="../vendor/jquery-
mr-2"><i class="fas fa-arrow-down"></i> easing/jquery.easing.min.js"></script>
1.10%</span> <script src="js/ruang-
<span>Since yesterday</span> admin.min.js"></script>
--> <script
</div> src="../vendor/chart.js/Chart.min.js"></script>
</div> <script src="js/demo/chart-area-
<div class="col-auto"> demo.js"></script>
<i class="fas fa-calendar fa-2x </body>
text-warning"></i> </html>
</div> TakeAtendance.php
</div>
</div> <?php
</div> error_reporting(0);
</div> include '../Includes/dbcon.php';
include '../Includes/session.php';
<!--Row-->
$query = "SELECT
<!-- <div class="row"> tblclass.className,tblclassarms.classArmNam
<div class="col-lg-12 text-center"> e
<p>Do you like this template ? you FROM tblclassteacher
can download from <a INNER JOIN tblclass ON tblclass.Id =
href="https://github.com/indrijunanda/RuangA tblclassteacher.classId
dmin" INNER JOIN tblclassarms ON
class="btn btn-primary btn-sm" tblclassarms.Id = tblclassteacher.classArmId
target="_blank"><i class="fab fa-fw fa- Where tblclassteacher.Id =
github"></i>&nbsp;GitHub</a></p> '$_SESSION[userId]'";
</div> $rs = $conn->query($query);
</div> --> $num = $rs->num_rows;
$rrw = $rs->fetch_assoc();
</div>
<!---Container Fluid-->
</div> //session and Term
<!-- Footer --> $querey=mysqli_query($conn,"select *
<?php include 'includes/footer.php';?> from tblsessionterm where isActive ='1'");

20
$rwws=mysqli_fetch_array($querey); if no record has a status of 1
$sessionTermId = $rwws['Id']; $qurty=mysqli_query($conn,"select * from
tblattendance where classId =
$dateTaken = date("Y-m-d"); '$_SESSION[classId]' and classArmId =
'$_SESSION[classArmId]' and
$qurty=mysqli_query($conn,"select * dateTimeTaken='$dateTaken' and status =
from tblattendance where classId = '1'");
'$_SESSION[classId]' and classArmId = $count = mysqli_num_rows($qurty);
'$_SESSION[classArmId]' and
dateTimeTaken='$dateTaken'"); if($count > 0){
$count = mysqli_num_rows($qurty);
$statusMsg = "<div class='alert alert-
if($count == 0){ //if Record does not danger' style='margin-
exsit, insert the new record right:700px;'>Attendance has been taken for
today!</div>";
//insert the students record into the
attendance table on page load }
$qus=mysqli_query($conn,"select *
from tblstudents where classId = else //update the status to 1 for the
'$_SESSION[classId]' and classArmId = checkboxes checked
'$_SESSION[classArmId]'"); {
while ($ros = $qus->fetch_assoc())
{ for($i = 0; $i < $N; $i++)
$qquery=mysqli_query($conn,"insert {
into $admissionNo[$i]; //admission
tblattendance(admissionNo,classId,classArmId Number
,sessionTermId,status,dateTimeTaken)
if(isset($check[$i])) //the checked
value('$ros[admissionNumber]','$_SESSION[c checkboxes
lassId]','$_SESSION[classArmId]','$sessionTe {
rmId','0','$dateTaken')");
$qquery=mysqli_query($conn,"update
} tblattendance set status='1' where
} admissionNo = '$check[$i]'");

if ($qquery) {

$statusMsg = "<div
class='alert alert-success' style='margin-
right:700px;'>Attendance Taken
if(isset($_POST['save'])){ Successfully!</div>";
}
$admissionNo=$_POST['admissionNo']; else
{
$check=$_POST['check']; $statusMsg = "<div
$N = count($admissionNo); class='alert alert-danger' style='margin-
$status = ""; right:700px;'>An error Occurred!</div>";
}

//check if the attendance has not been taken i.e }

21
} ActiveXObject("Microsoft.XMLHTTP");
} }
xmlhttp.onreadystatechange = function()
{
if (this.readyState == 4 && this.status
} == 200) {

document.getElementById("txtHint").innerHT
?> ML = this.responseText;
}
<!DOCTYPE html> };
<html lang="en">
xmlhttp.open("GET","ajaxClassArms2.php?ci
<head> d="+str,true);
<meta charset="utf-8"> xmlhttp.send();
<meta http-equiv="X-UA-Compatible" }
content="IE=edge"> }
<meta name="viewport" </script>
content="width=device-width, initial-scale=1, </head>
shrink-to-fit=no">
<meta name="description" content=""> <body id="page-top">
<meta name="author" content=""> <div id="wrapper">
<link href="img/logo/attnlg.jpg" rel="icon"> <!-- Sidebar -->
<title>Dashboard</title> <?php include "Includes/sidebar.php";?>
<link href="../vendor/fontawesome- <!-- Sidebar -->
free/css/all.min.css" rel="stylesheet" <div id="content-wrapper" class="d-flex
type="text/css"> flex-column">
<link <div id="content">
href="../vendor/bootstrap/css/bootstrap.min.cs <!-- TopBar -->
s" rel="stylesheet" type="text/css"> <?php include "Includes/topbar.php";?>
<link href="css/ruang-admin.min.css" <!-- Topbar -->
rel="stylesheet">
<!-- Container Fluid-->
<div class="container-fluid"
id="container-wrapper">
<script> <div class="d-sm-flex align-items-
function classArmDropdown(str) { center justify-content-between mb-4">
if (str == "") { <h1 class="h3 mb-0 text-gray-
800">Take Attendance (Today's Date : <?php
document.getElementById("txtHint").innerHT echo $todaysDate = date("m-d-Y");?>)</h1>
ML = ""; <ol class="breadcrumb">
return; <li class="breadcrumb-item"><a
} else { href="./">Home</a></li>
if (window.XMLHttpRequest) { <li class="breadcrumb-item active"
// code for IE7+, Firefox, Chrome, aria-current="page">All Student in Class</li>
Opera, Safari </ol>
xmlhttp = new XMLHttpRequest(); </div>
} else {
// code for IE6, IE5 <div class="row">
xmlhttp = new <div class="col-lg-12">

22
<!-- Form Basic --> INNER JOIN tblclass ON
tblclass.Id = tblstudents.classId
INNER JOIN tblclassarms ON
<!-- Input Group --> tblclassarms.Id = tblstudents.classArmId
<form method="post"> where tblstudents.classId =
<div class="row"> '$_SESSION[classId]' and
<div class="col-lg-12"> tblstudents.classArmId =
<div class="card mb-4"> '$_SESSION[classArmId]'";
<div class="card-header py-3 d-flex $rs = $conn->query($query);
flex-row align-items-center justify-content- $num = $rs->num_rows;
between"> $sn=0;
<h6 class="m-0 font-weight-bold $status="";
text-primary">All Student in (<?php echo if($num > 0)
$rrw['className'].' - {
'.$rrw['classArmName'];?>) Class</h6> while ($rows = $rs-
<h6 class="m-0 font-weight-bold >fetch_assoc())
text-danger">Note: <i>Click on the {
checkboxes besides each student to take $sn = $sn + 1;
attendance!</i></h6> echo"
</div> <tr>
<div class="table-responsive p-3"> <td>".$sn."</td>
<?php echo $statusMsg; ?>
<table class="table align-items- <td>".$rows['firstName']."</td>
center table-flush table-hover">
<thead class="thead-light"> <td>".$rows['lastName']."</td>
<tr>
<th>#</th> <td>".$rows['otherName']."</td>
<th>First Name</th>
<th>Last Name</th> <td>".$rows['admissionNumber']."</td>
<th>Other Name</th>
<th>Admission No</th> <td>".$rows['className']."</td>
<th>Class</th>
<th>Class Arm</th> <td>".$rows['classArmName']."</td>
<th>Check</th> <td><input
</tr> name='check[]' type='checkbox'
</thead> value=".$rows['admissionNumber']."
class='form-control'></td>
<tbody> </tr>";
echo "<input
<?php name='admissionNo[]'
$query = "SELECT value=".$rows['admissionNumber']."
tblstudents.Id,tblstudents.admissionNumber,tb type='hidden' class='form-control'>";
lclass.className,tblclass.Id As }
classId,tblclassarms.classArmName,tblclassar }
ms.Id AS classArmId,tblstudents.firstName, else
{
tblstudents.lastName,tblstudents.otherName,tb echo
lstudents.admissionNumber,tblstudents.dateCr "<div class='alert alert-
eated danger' role='alert'>
FROM tblstudents No Record Found!

23
</div>";
} <script
src="../vendor/jquery/jquery.min.js"></script>
?> <script
</tbody> src="../vendor/bootstrap/js/bootstrap.bundle.m
</table> in.js"></script>
<br> <script src="../vendor/jquery-
<button type="submit" easing/jquery.easing.min.js"></script>
name="save" class="btn btn-primary">Take <script src="js/ruang-
Attendance</button> admin.min.js"></script>
</form> <!-- Page level plugins -->
</div> <script
</div> src="../vendor/datatables/jquery.dataTables.mi
</div> n.js"></script>
</div> <script
</div> src="../vendor/datatables/dataTables.bootstrap
<!--Row--> 4.min.js"></script>

<!-- Documentation Link --> <!-- Page level custom scripts -->
<!-- <div class="row"> <script>
<div class="col-lg-12 text-center"> $(document).ready(function () {
<p>For more documentations you can $('#dataTable').DataTable(); // ID From
visit<a dataTable
href="https://getbootstrap.com/docs/4.3/comp $('#dataTableHover').DataTable(); // ID
onents/forms/" From dataTable with Hover
target="_blank"> });
bootstrap forms </script>
documentations.</a> and <a </body>
</html>
href="https://getbootstrap.com/docs/4.3/comp ViewAtendance.php
onents/input-group/"
target="_blank">bootstrap input <?php
groups documentations</a></p> error_reporting(0);
</div> include '../Includes/dbcon.php';
</div> --> include '../Includes/session.php';

</div>
<!---Container Fluid-->
</div> ?>
<!-- Footer -->
<?php include "Includes/footer.php";?> <!DOCTYPE html>
<!-- Footer --> <html lang="en">
</div>
</div> <head>
<meta charset="utf-8">
<!-- Scroll to top --> <meta http-equiv="X-UA-Compatible"
<a class="scroll-to-top rounded" content="IE=edge">
href="#page-top"> <meta name="viewport"
<i class="fas fa-angle-up"></i> content="width=device-width, initial-scale=1,
</a> shrink-to-fit=no">

24
<meta name="description" content=""> text-primary">View Class Attendance</h6>
<meta name="author" content=""> <?php echo $statusMsg; ?>
<link href="img/logo/attnlg.jpg" rel="icon"> </div>
<title>Dashboard</title> <div class="card-body">
<link href="../vendor/fontawesome- <form method="post">
free/css/all.min.css" rel="stylesheet" <div class="form-group row mb-
type="text/css"> 3">
<link <div class="col-xl-6">
href="../vendor/bootstrap/css/bootstrap.min.cs <label class="form-control-
s" rel="stylesheet" type="text/css"> label">Select Date<span class="text-danger
<link href="css/ruang-admin.min.css" ml-2">*</span></label>
rel="stylesheet"> <input type="date"
</head> class="form-control" name="dateTaken"
id="exampleInputFirstName"
<body id="page-top"> placeholder="Class Arm Name">
<div id="wrapper"> </div>
<!-- Sidebar --> <!-- <div class="col-xl-6">
<?php include "Includes/sidebar.php";?> <label class="form-control-
<!-- Sidebar --> label">Class Arm Name<span class="text-
<div id="content-wrapper" class="d-flex danger ml-2">*</span></label>
flex-column"> <input type="text" class="form-
<div id="content"> control" name="classArmName"
<!-- TopBar --> value="<?php echo
<?php include "Includes/topbar.php";?> $row['classArmName'];?>"
<!-- Topbar --> id="exampleInputFirstName"
placeholder="Class Arm Name">
<!-- Container Fluid--> </div> -->
<div class="container-fluid" </div>
id="container-wrapper"> <button type="submit"
<div class="d-sm-flex align-items- name="view" class="btn btn-primary">View
center justify-content-between mb-4"> Attendance</button>
<h1 class="h3 mb-0 text-gray- </form>
800">View Class Attendance</h1> </div>
<ol class="breadcrumb"> </div>
<li class="breadcrumb-item"><a
href="./">Home</a></li> <!-- Input Group -->
<li class="breadcrumb-item active" <div class="row">
aria-current="page">View Class <div class="col-lg-12">
Attendance</li> <div class="card mb-4">
</ol> <div class="card-header py-3 d-flex
</div> flex-row align-items-center justify-content-
between">
<div class="row"> <h6 class="m-0 font-weight-bold
<div class="col-lg-12"> text-primary">Class Attendance</h6>
<!-- Form Basic --> </div>
<div class="card mb-4"> <div class="table-responsive p-3">
<div class="card-header py-3 d-flex <table class="table align-items-
flex-row align-items-center justify-content- center table-flush table-hover"
between"> id="dataTableHover">
<h6 class="m-0 font-weight-bold <thead class="thead-light">

25
<tr> and tblattendance.classId =
<th>#</th> '$_SESSION[classId]' and
<th>First Name</th> tblattendance.classArmId =
<th>Last Name</th> '$_SESSION[classArmId]'";
<th>Other Name</th> $rs = $conn->query($query);
<th>Admission No</th> $num = $rs->num_rows;
<th>Class</th> $sn=0;
<th>Class Arm</th> $status="";
<th>Session</th> if($num > 0)
<th>Term</th> {
<th>Status</th> while ($rows = $rs-
<th>Date</th> >fetch_assoc())
</tr> {
</thead> if($rows['status'] ==
'1'){$status = "Present";
<tbody> $colour="#00FF00";}else{$status =
"Absent";$colour="#FF0000";}
<?php $sn = $sn + 1;
echo"
if(isset($_POST['view'])){ <tr>
<td>".$sn."</td>
$dateTaken =
$_POST['dateTaken']; <td>".$rows['firstName']."</td>

$query = "SELECT <td>".$rows['lastName']."</td>


tblattendance.Id,tblattendance.status,tblattenda
nce.dateTimeTaken,tblclass.className, <td>".$rows['otherName']."</td>

tblclassarms.classArmName,tblsessionterm.se <td>".$rows['admissionNumber']."</td>
ssionName,tblsessionterm.termId,tblterm.term
Name, <td>".$rows['className']."</td>

tblstudents.firstName,tblstudents.lastName,tbl <td>".$rows['classArmName']."</td>
students.otherName,tblstudents.admissionNu
mber <td>".$rows['sessionName']."</td>
FROM tblattendance
INNER JOIN tblclass ON <td>".$rows['termName']."</td>
tblclass.Id = tblattendance.classId <td style='background-
INNER JOIN tblclassarms ON color:".$colour."'>".$status."</td>
tblclassarms.Id = tblattendance.classArmId
INNER JOIN tblsessionterm ON <td>".$rows['dateTimeTaken']."</td>
tblsessionterm.Id = </tr>";
tblattendance.sessionTermId }
INNER JOIN tblterm ON }
tblterm.Id = tblsessionterm.termId else
INNER JOIN tblstudents ON {
tblstudents.admissionNumber = echo
tblattendance.admissionNo "<div class='alert alert-
where danger' role='alert'>
tblattendance.dateTimeTaken = '$dateTaken' No Record Found!

26
</div>"; in.js"></script>
} <script src="../vendor/jquery-
} easing/jquery.easing.min.js"></script>
?> <script src="js/ruang-
</tbody> admin.min.js"></script>
</table> <!-- Page level plugins -->
</div> <script
</div> src="../vendor/datatables/jquery.dataTables.mi
</div> n.js"></script>
</div> <script
</div> src="../vendor/datatables/dataTables.bootstrap
<!--Row--> 4.min.js"></script>

<!-- Documentation Link --> <!-- Page level custom scripts -->
<!-- <div class="row"> <script>
<div class="col-lg-12 text-center"> $(document).ready(function () {
<p>For more documentations you can $('#dataTable').DataTable(); // ID From
visit<a dataTable
href="https://getbootstrap.com/docs/4.3/comp $('#dataTableHover').DataTable(); // ID
onents/forms/" From dataTable with Hover
target="_blank"> });
bootstrap forms </script>
documentations.</a> and <a </body>

href="https://getbootstrap.com/docs/4.3/comp </html>
onents/input-group/" Createclss.php
target="_blank">bootstrap input
groups documentations</a></p> <?php
</div> error_reporting(0);
</div> --> include '../Includes/dbcon.php';
include '../Includes/session.php';
</div>
<!---Container Fluid--> //------------------------SAVE-----------------------
</div> ---------------------------
<!-- Footer -->
<?php include "Includes/footer.php";?> if(isset($_POST['save'])){
<!-- Footer -->
</div> $className=$_POST['className'];
</div>
$query=mysqli_query($conn,"select * from
<!-- Scroll to top --> tblclass where className ='$className'");
<a class="scroll-to-top rounded" $ret=mysqli_fetch_array($query);
href="#page-top">
<i class="fas fa-angle-up"></i> if($ret > 0){
</a>
$statusMsg = "<div class='alert alert-
<script danger' style='margin-right:700px;'>This Class
src="../vendor/jquery/jquery.min.js"></script> Already Exists!</div>";
<script }
src="../vendor/bootstrap/js/bootstrap.bundle.m else{

27
$query=mysqli_query($conn,"insert into if ($query) {
tblclass(className) value('$className')");
echo "<script type =
if ($query) { \"text/javascript\">
window.location =
$statusMsg = "<div class='alert alert- (\"createClass.php\")
success' style='margin-right:700px;'>Created </script>";
Successfully!</div>"; }
} else
else {
{ $statusMsg = "<div class='alert
$statusMsg = "<div class='alert alert- alert-danger' style='margin-right:700px;'>An
danger' style='margin-right:700px;'>An error error Occurred!</div>";
Occurred!</div>"; }
} }
} }
}

//---------------------------------------EDIT--------- //--------------------------------DELETE-----------
---------------------------------------------------- -------------------------------------------------------

if (isset($_GET['Id']) &&
isset($_GET['action']) && $_GET['action'] ==
"delete")
{
$Id= $_GET['Id'];
//--------------------EDIT----------------------------
-------------------------------- $query = mysqli_query($conn,"DELETE
FROM tblclass WHERE Id='$Id'");
if (isset($_GET['Id']) &&
isset($_GET['action']) && $_GET['action'] == if ($query == TRUE) {
"edit")
{ echo "<script type =
$Id= $_GET['Id']; \"text/javascript\">
window.location =
$query=mysqli_query($conn,"select * (\"createClass.php\")
from tblclass where Id ='$Id'"); </script>";
$row=mysqli_fetch_array($query); }
else{
//------------UPDATE-------------------------
---- $statusMsg = "<div class='alert alert-
danger' style='margin-right:700px;'>An error
if(isset($_POST['update'])){ Occurred!</div>";
}
$className=$_POST['className'];
}
$query=mysqli_query($conn,"update
tblclass set className='$className' where
Id='$Id'"); ?>

28
</div>
<!DOCTYPE html>
<html lang="en"> <div class="row">
<div class="col-lg-12">
<head> <!-- Form Basic -->
<meta charset="utf-8"> <div class="card mb-4">
<meta http-equiv="X-UA-Compatible" <div class="card-header py-3 d-flex
content="IE=edge"> flex-row align-items-center justify-content-
<meta name="viewport" between">
content="width=device-width, initial-scale=1, <h6 class="m-0 font-weight-bold
shrink-to-fit=no"> text-primary">Create Class</h6>
<meta name="description" content=""> <?php echo $statusMsg; ?>
<meta name="author" content=""> </div>
<link href="img/logo/attnlg.jpg" rel="icon"> <div class="card-body">
<?php include 'includes/title.php';?> <form method="post">
<link href="../vendor/fontawesome- <div class="form-group row mb-
free/css/all.min.css" rel="stylesheet" 3">
type="text/css"> <div class="col-xl-6">
<link <label class="form-control-
href="../vendor/bootstrap/css/bootstrap.min.cs label">Class Name<span class="text-danger
s" rel="stylesheet" type="text/css"> ml-2">*</span></label>
<link href="css/ruang-admin.min.css" <input type="text" class="form-
rel="stylesheet"> control" name="className" value="<?php
</head> echo $row['className'];?>"
id="exampleInputFirstName"
<body id="page-top"> placeholder="Class Name">
<div id="wrapper"> </div>
<!-- Sidebar --> </div>
<?php include "Includes/sidebar.php";?> <?php
<!-- Sidebar --> if (isset($Id))
<div id="content-wrapper" class="d-flex {
flex-column"> ?>
<div id="content"> <button type="submit"
<!-- TopBar --> name="update" class="btn btn-
<?php include "Includes/topbar.php";?> warning">Update</button>
<!-- Topbar -->
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&
<!-- Container Fluid--> nbsp;&nbsp;&nbsp;&nbsp;
<div class="container-fluid" <?php
id="container-wrapper"> } else {
<div class="d-sm-flex align-items- ?>
center justify-content-between mb-4"> <button type="submit"
<h1 class="h3 mb-0 text-gray- name="save" class="btn btn-
800">Create Class</h1> primary">Save</button>
<ol class="breadcrumb"> <?php
<li class="breadcrumb-item"><a }
href="./">Home</a></li> ?>
<li class="breadcrumb-item active" </form>
aria-current="page">Create Class</li> </div>
</ol> </div>

29
}
<!-- Input Group --> }
<div class="row"> else
<div class="col-lg-12"> {
<div class="card mb-4"> echo
<div class="card-header py-3 d-flex "<div class='alert alert-
flex-row align-items-center justify-content- danger' role='alert'>
between"> No Record Found!
<h6 class="m-0 font-weight-bold </div>";
text-primary">All Classes</h6> }
</div>
<div class="table-responsive p-3"> ?>
<table class="table align-items- </tbody>
center table-flush table-hover" </table>
id="dataTableHover"> </div>
<thead class="thead-light"> </div>
<tr> </div>
<th>#</th> </div>
<th>Class Name</th> </div>
<th>Edit</th> <!--Row-->
<th>Delete</th>
</tr> <!-- Documentation Link -->
</thead> <!-- <div class="row">
<div class="col-lg-12 text-center">
<tbody> <p>For more documentations you can
visit<a
<?php href="https://getbootstrap.com/docs/4.3/comp
$query = "SELECT * FROM onents/forms/"
tblclass"; target="_blank">
$rs = $conn->query($query); bootstrap forms
$num = $rs->num_rows; documentations.</a> and <a
$sn=0;
if($num > 0) href="https://getbootstrap.com/docs/4.3/comp
{ onents/input-group/"
while ($rows = $rs- target="_blank">bootstrap input
>fetch_assoc()) groups documentations</a></p>
{ </div>
$sn = $sn + 1; </div> -->
echo"
<tr> </div>
<td>".$sn."</td> <!---Container Fluid-->
</div>
<td>".$rows['className']."</td> <!-- Footer -->
<td><a <?php include "Includes/footer.php";?>
href='?action=edit&Id=".$rows['Id']."'><i <!-- Footer -->
class='fas fa-fw fa-edit'></i>Edit</a></td> </div>
<td><a </div>
href='?action=delete&Id=".$rows['Id']."'><i
class='fas fa-fw fa-trash'></i>Delete</a></td> <!-- Scroll to top -->
</tr>"; <a class="scroll-to-top rounded"

30
href="#page-top"> $admissionNumber=$_POST['admissionNum
<i class="fas fa-angle-up"></i> ber'];
</a> $classId=$_POST['classId'];
$classArmId=$_POST['classArmId'];
<script $dateCreated = date("Y-m-d");
src="../vendor/jquery/jquery.min.js"></script>
<script $query=mysqli_query($conn,"select * from
src="../vendor/bootstrap/js/bootstrap.bundle.m tblstudents where admissionNumber
in.js"></script> ='$admissionNumber'");
<script src="../vendor/jquery- $ret=mysqli_fetch_array($query);
easing/jquery.easing.min.js"></script>
<script src="js/ruang- if($ret > 0){
admin.min.js"></script>
<!-- Page level plugins --> $statusMsg = "<div class='alert alert-
<script danger' style='margin-right:700px;'>This
src="../vendor/datatables/jquery.dataTables.mi Email Address Already Exists!</div>";
n.js"></script> }
<script else{
src="../vendor/datatables/dataTables.bootstrap
4.min.js"></script> $query=mysqli_query($conn,"insert into
tblstudents(firstName,lastName,otherName,ad
<!-- Page level custom scripts --> missionNumber,password,classId,classArmId,
<script> dateCreated)
$(document).ready(function () {
$('#dataTable').DataTable(); // ID From value('$firstName','$lastName','$otherName','$
dataTable admissionNumber','12345','$classId','$classAr
$('#dataTableHover').DataTable(); // ID mId','$dateCreated')");
From dataTable with Hover
}); if ($query) {
</script>
</body> $statusMsg = "<div class='alert alert-
success' style='margin-right:700px;'>Created
</html> Successfully!</div>";
CreateStudent.php
}
<?php else
error_reporting(0); {
include '../Includes/dbcon.php'; $statusMsg = "<div class='alert alert-
include '../Includes/session.php'; danger' style='margin-right:700px;'>An error
Occurred!</div>";
//------------------------SAVE----------------------- }
--------------------------- }
}
if(isset($_POST['save'])){
//---------------------------------------EDIT---------
$firstName=$_POST['firstName']; ----------------------------------------------------
$lastName=$_POST['lastName'];
$otherName=$_POST['otherName'];

31
alert-danger' style='margin-right:700px;'>An
error Occurred!</div>";
//--------------------EDIT---------------------------- }
-------------------------------- }
}
if (isset($_GET['Id']) &&
isset($_GET['action']) && $_GET['action'] ==
"edit") //--------------------------------DELETE-----------
{ -------------------------------------------------------
$Id= $_GET['Id'];
if (isset($_GET['Id']) &&
$query=mysqli_query($conn,"select * isset($_GET['action']) && $_GET['action'] ==
from tblstudents where Id ='$Id'"); "delete")
$row=mysqli_fetch_array($query); {
$Id= $_GET['Id'];
//------------UPDATE------------------------- $classArmId= $_GET['classArmId'];
----
$query = mysqli_query($conn,"DELETE
if(isset($_POST['update'])){ FROM tblstudents WHERE Id='$Id'");

$firstName=$_POST['firstName']; if ($query == TRUE) {


$lastName=$_POST['lastName'];
$otherName=$_POST['otherName']; echo "<script type =
\"text/javascript\">
window.location =
$admissionNumber=$_POST['admissionNum (\"createStudents.php\")
ber']; </script>";
$classId=$_POST['classId']; }
$classArmId=$_POST['classArmId']; else{
$dateCreated = date("Y-m-d");
$statusMsg = "<div class='alert alert-
$query=mysqli_query($conn,"update danger' style='margin-right:700px;'>An error
tblstudents set firstName='$firstName', Occurred!</div>";
lastName='$lastName', }
otherName='$otherName',
admissionNumber='$admissionNumber',passw }
ord='12345',
classId='$classId',classArmId='$classArmId'
where Id='$Id'"); ?>
if ($query) {
<!DOCTYPE html>
echo "<script type = <html lang="en">
\"text/javascript\">
window.location = <head>
(\"createStudents.php\") <meta charset="utf-8">
</script>"; <meta http-equiv="X-UA-Compatible"
} content="IE=edge">
else <meta name="viewport"
{ content="width=device-width, initial-scale=1,
$statusMsg = "<div class='alert shrink-to-fit=no">

32
<meta name="description" content=""> <body id="page-top">
<meta name="author" content=""> <div id="wrapper">
<link href="img/logo/attnlg.jpg" rel="icon"> <!-- Sidebar -->
<?php include 'includes/title.php';?> <?php include "Includes/sidebar.php";?>
<link href="../vendor/fontawesome- <!-- Sidebar -->
free/css/all.min.css" rel="stylesheet" <div id="content-wrapper" class="d-flex
type="text/css"> flex-column">
<link <div id="content">
href="../vendor/bootstrap/css/bootstrap.min.cs <!-- TopBar -->
s" rel="stylesheet" type="text/css"> <?php include "Includes/topbar.php";?>
<link href="css/ruang-admin.min.css" <!-- Topbar -->
rel="stylesheet">
<!-- Container Fluid-->
<div class="container-fluid"
id="container-wrapper">
<script> <div class="d-sm-flex align-items-
function classArmDropdown(str) { center justify-content-between mb-4">
if (str == "") { <h1 class="h3 mb-0 text-gray-
800">Create Students</h1>
document.getElementById("txtHint").innerHT <ol class="breadcrumb">
ML = ""; <li class="breadcrumb-item"><a
return; href="./">Home</a></li>
} else { <li class="breadcrumb-item active"
if (window.XMLHttpRequest) { aria-current="page">Create Students</li>
// code for IE7+, Firefox, Chrome, </ol>
Opera, Safari </div>
xmlhttp = new XMLHttpRequest();
} else { <div class="row">
// code for IE6, IE5 <div class="col-lg-12">
xmlhttp = new <!-- Form Basic -->
ActiveXObject("Microsoft.XMLHTTP"); <div class="card mb-4">
} <div class="card-header py-3 d-flex
xmlhttp.onreadystatechange = function() flex-row align-items-center justify-content-
{ between">
if (this.readyState == 4 && this.status <h6 class="m-0 font-weight-bold
== 200) { text-primary">Create Students</h6>
<?php echo $statusMsg; ?>
document.getElementById("txtHint").innerHT </div>
ML = this.responseText; <div class="card-body">
} <form method="post">
}; <div class="form-group row mb-
3">
xmlhttp.open("GET","ajaxClassArms2.php?ci <div class="col-xl-6">
d="+str,true); <label class="form-control-
xmlhttp.send(); label">Firstname<span class="text-danger ml-
} 2">*</span></label>
} <input type="text"
</script> class="form-control" name="firstName"
</head> value="<?php echo $row['firstName'];?>"
id="exampleInputFirstName" >

33
</div> echo'<option value="">--
<div class="col-xl-6"> Select Class--</option>';
<label class="form-control- while ($rows = $result-
label">Lastname<span class="text-danger ml- >fetch_assoc()){
2">*</span></label> echo'<option
<input type="text" class="form- value="'.$rows['Id'].'"
control" name="lastName" value="<?php echo >'.$rows['className'].'</option>';
$row['lastName'];?>" }
id="exampleInputFirstName" > echo '</select>';
</div> }
</div> ?>
<div class="form-group row mb- </div>
3"> <div class="col-xl-6">
<div class="col-xl-6"> <label class="form-control-
<label class="form-control- label">Class Arm<span class="text-danger
label">Other Name<span class="text-danger ml-2">*</span></label>
ml-2">*</span></label> <?php
<input type="text" echo"<div
class="form-control" name="otherName" id='txtHint'></div>";
value="<?php echo $row['otherName'];?>" ?>
id="exampleInputFirstName" > </div>
</div> </div>
<div class="col-xl-6"> <?php
<label class="form-control- if (isset($Id))
label">Admission Number<span class="text- {
danger ml-2">*</span></label> ?>
<input type="text" class="form- <button type="submit"
control" required name="admissionNumber" name="update" class="btn btn-
value="<?php echo warning">Update</button>
$row['admissionNumber'];?>"
id="exampleInputFirstName" > &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&
</div> nbsp;&nbsp;&nbsp;&nbsp;
</div> <?php
<div class="form-group row mb- } else {
3"> ?>
<div class="col-xl-6"> <button type="submit"
<label class="form-control- name="save" class="btn btn-
label">Select Class<span class="text-danger primary">Save</button>
ml-2">*</span></label> <?php
<?php }
$qry= "SELECT * FROM ?>
tblclass ORDER BY className ASC"; </form>
$result = $conn->query($qry); </div>
$num = $result->num_rows; </div>

if ($num > 0){ <!-- Input Group -->


echo ' <select required <div class="row">
name="classId" <div class="col-lg-12">
onchange="classArmDropdown(this.value)" <div class="card mb-4">
class="form-control mb-3">'; <div class="card-header py-3 d-flex

34
flex-row align-items-center justify-content- echo"
between"> <tr>
<h6 class="m-0 font-weight-bold <td>".$sn."</td>
text-primary">All Student</h6>
</div> <td>".$rows['firstName']."</td>
<div class="table-responsive p-3">
<table class="table align-items- <td>".$rows['lastName']."</td>
center table-flush table-hover"
id="dataTableHover"> <td>".$rows['otherName']."</td>
<thead class="thead-light">
<tr> <td>".$rows['admissionNumber']."</td>
<th>#</th>
<th>First Name</th> <td>".$rows['className']."</td>
<th>Last Name</th>
<th>Other Name</th> <td>".$rows['classArmName']."</td>
<th>Admission No</th>
<th>Class</th> <td>".$rows['dateCreated']."</td>
<th>Class Arm</th> <td><a
<th>Date Created</th> href='?action=edit&Id=".$rows['Id']."'><i
<th>Edit</th> class='fas fa-fw fa-edit'></i></a></td>
<th>Delete</th> <td><a
</tr> href='?action=delete&Id=".$rows['Id']."'><i
</thead> class='fas fa-fw fa-trash'></i></a></td>
</tr>";
<tbody> }
}
<?php else
$query = "SELECT {
tblstudents.Id,tblclass.className,tblclassarms. echo
classArmName,tblclassarms.Id AS "<div class='alert alert-
classArmId,tblstudents.firstName, danger' role='alert'>
No Record Found!
tblstudents.lastName,tblstudents.otherName,tb </div>";
lstudents.admissionNumber,tblstudents.dateCr }
eated
FROM tblstudents ?>
INNER JOIN tblclass ON </tbody>
tblclass.Id = tblstudents.classId </table>
INNER JOIN tblclassarms ON </div>
tblclassarms.Id = tblstudents.classArmId"; </div>
$rs = $conn->query($query); </div>
$num = $rs->num_rows; </div>
$sn=0; </div>
$status=""; <!--Row-->
if($num > 0)
{ <!-- Documentation Link -->
while ($rows = $rs- <!-- <div class="row">
>fetch_assoc()) <div class="col-lg-12 text-center">
{ <p>For more documentations you can
$sn = $sn + 1; visit<a

35
href="https://getbootstrap.com/docs/4.3/comp $('#dataTableHover').DataTable(); // ID
onents/forms/" From dataTable with Hover
target="_blank"> });
bootstrap forms </script>
documentations.</a> and <a </body>
</html>
href="https://getbootstrap.com/docs/4.3/comp Sidebar.php
onents/input-group/" <ul class="navbar-nav sidebar sidebar-light
target="_blank">bootstrap input accordion " id="accordionSidebar">
groups documentations</a></p> <a class="sidebar-brand d-flex align-
</div> items-center bg-gradient-primary justify-
</div> --> content-center" href="index.php">
<div class="sidebar-brand-icon" >
</div> <img src="img/logo/attnlg.jpg">
<!---Container Fluid--> </div>
</div> <div class="sidebar-brand-text mx-
<!-- Footer --> 3">AMS</div>
<?php include "Includes/footer.php";?> </a>
<!-- Footer --> <hr class="sidebar-divider my-0">
</div> <li class="nav-item active">
</div> <a class="nav-link" href="index.php">
<i class="fas fa-fw fa-tachometer-
<!-- Scroll to top --> alt"></i>
<a class="scroll-to-top rounded" <span>Dashboard</span></a>
href="#page-top"> </li>
<i class="fas fa-angle-up"></i> <hr class="sidebar-divider">
</a> <div class="sidebar-heading">
Class and Class Arms
<script </div>
src="../vendor/jquery/jquery.min.js"></script> <li class="nav-item">
<script <a class="nav-link collapsed" href="#"
src="../vendor/bootstrap/js/bootstrap.bundle.m data-toggle="collapse" data-
in.js"></script> target="#collapseBootstrap"
<script src="../vendor/jquery- aria-expanded="true" aria-
easing/jquery.easing.min.js"></script> controls="collapseBootstrap">
<script src="js/ruang- <i class="fas fa-chalkboard"></i>
admin.min.js"></script> <span>Manage Classes</span>
<!-- Page level plugins --> </a>
<script <div id="collapseBootstrap"
src="../vendor/datatables/jquery.dataTables.mi class="collapse" aria-
n.js"></script> labelledby="headingBootstrap" data-
<script parent="#accordionSidebar">
src="../vendor/datatables/dataTables.bootstrap <div class="bg-white py-2 collapse-
4.min.js"></script> inner rounded">
<h6 class="collapse-header">Manage
<!-- Page level custom scripts --> Classes</h6>
<script> <a class="collapse-item"
$(document).ready(function () { href="createClass.php">Create Class</a>
$('#dataTable').DataTable(); // ID From <!-- <a class="collapse-item"
dataTable href="#">Member List</a> -->

36
</div> <a class="collapse-item"
</div> href="createClassTeacher.php">Create Class
</li> Teachers</a>
<li class="nav-item"> <!-- <a class="collapse-item"
<a class="nav-link collapsed" href="#" href="assetsCategoryList.php">Assets
data-toggle="collapse" data- Category List</a>
target="#collapseBootstrapusers" <a class="collapse-item"
aria-expanded="true" aria- href="createAssets.php">Create Assets</a> --
controls="collapseBootstrapusers"> >
<i class="fas fa-code-branch"></i> </div>
<span>Manage Class Arms</span> </div>
</a> </li>
<div id="collapseBootstrapusers" <!-- <li class="nav-item">
class="collapse" aria- <a class="nav-link collapsed" href="#"
labelledby="headingBootstrap" data- data-toggle="collapse" data-
parent="#accordionSidebar"> target="#collapseBootstrapschemes"
<div class="bg-white py-2 collapse- aria-expanded="true" aria-
inner rounded"> controls="collapseBootstrapschemes">
<h6 class="collapse-header">Manage <i class="fas fa-home"></i>
Class Arms</h6> <span>Manage Schemes</span>
<a class="collapse-item" </a>
href="createClassArms.php">Create Class <div id="collapseBootstrapschemes"
Arms</a> class="collapse" aria-
<!-- <a class="collapse-item" labelledby="headingBootstrap" data-
href="usersList.php">User List</a> --> parent="#accordionSidebar">
</div> <div class="bg-white py-2 collapse-
</div> inner rounded">
</li> <h6 class="collapse-header">Manage
<hr class="sidebar-divider"> Schemes</h6>
<div class="sidebar-heading"> <a class="collapse-item"
Teachers href="createSchemes.php">Create
</div> Scheme</a>
<li class="nav-item"> <a class="collapse-item"
<a class="nav-link collapsed" href="#" href="schemeList.php">Scheme List</a>
data-toggle="collapse" data- </div>
target="#collapseBootstrapassests" </div>
aria-expanded="true" aria- </li> -->
controls="collapseBootstrapassests">
<i class="fas fa-chalkboard- <hr class="sidebar-divider">
teacher"></i> <div class="sidebar-heading">
<span>Manage Teachers</span> Students
</a> </div>
<div id="collapseBootstrapassests" </li>
class="collapse" aria- <li class="nav-item">
labelledby="headingBootstrap" data- <a class="nav-link collapsed" href="#"
parent="#accordionSidebar"> data-toggle="collapse" data-
<div class="bg-white py-2 collapse- target="#collapseBootstrap2"
inner rounded"> aria-expanded="true" aria-
<h6 class="collapse-header">Manage controls="collapseBootstrap2">
Class Teachers</h6> <i class="fas fa-user-graduate"></i>

37
<span>Manage Students</span> <!-- <li class="nav-item">
</a> <a class="nav-link" href="forms.html">
<div id="collapseBootstrap2" <i class="fab fa-fw fa-wpforms"></i>
class="collapse" aria- <span>Forms</span>
labelledby="headingBootstrap" data- </a>
parent="#accordionSidebar"> </li>
<div class="bg-white py-2 collapse- <li class="nav-item">
inner rounded"> <a class="nav-link collapsed" href="#"
<h6 class="collapse-header">Manage data-toggle="collapse" data-
Students</h6> target="#collapseTable" aria-expanded="true"
<a class="collapse-item" aria-controls="collapseTable">
href="createStudents.php">Create <i class="fas fa-fw fa-table"></i>
Students</a> <span>Tables</span>
<!-- <a class="collapse-item" </a>
href="#">Assets Type</a> --> <div id="collapseTable" class="collapse"
</div> aria-labelledby="headingTable" data-
</div> parent="#accordionSidebar">
</li> <div class="bg-white py-2 collapse-
inner rounded">
<hr class="sidebar-divider"> <h6 class="collapse-
<div class="sidebar-heading"> header">Tables</h6>
Session & Term <a class="collapse-item" href="simple-
</div> tables.html">Simple Tables</a>
</li> <a class="collapse-item"
<li class="nav-item"> href="datatables.html">DataTables</a>
<a class="nav-link collapsed" href="#" </div>
data-toggle="collapse" data- </div>
target="#collapseBootstrapcon" </li>
aria-expanded="true" aria- <li class="nav-item">
controls="collapseBootstrapcon"> <a class="nav-link" href="ui-
<i class="fa fa-calendar-alt"></i> colors.html">
<span>Manage Session & Term</span> <i class="fas fa-fw fa-palette"></i>
</a> <span>UI Colors</span>
<div id="collapseBootstrapcon" </a>
class="collapse" aria- </li>
labelledby="headingBootstrap" data- <hr class="sidebar-divider">
parent="#accordionSidebar"> <div class="sidebar-heading">
<div class="bg-white py-2 collapse- Examples
inner rounded"> </div>
<h6 class="collapse- <li class="nav-item">
header">Contribution</h6> <a class="nav-link collapsed" href="#"
<a class="collapse-item" data-toggle="collapse" data-
href="createSessionTerm.php">Create Session target="#collapsePage" aria-expanded="true"
and Term</a> aria-controls="collapsePage">
<!-- <a class="collapse-item" <i class="fas fa-fw fa-columns"></i>
href="addMemberToContLevel.php ">Add <span>Pages</span>
Member to Level</a> --> </a>
</div> <div id="collapsePage" class="collapse"
</div> aria-labelledby="headingPage" data-
</li> parent="#accordionSidebar">

38
<div class="bg-white py-2 collapse- expanded="false">
inner rounded"> <i class="fas fa-search fa-fw"></i>
<h6 class="collapse-header">Example </a>
Pages</h6> <div class="dropdown-menu
<a class="collapse-item" dropdown-menu-right p-3 shadow animated--
href="login.html">Login</a> grow-in"
<a class="collapse-item" aria-labelledby="searchDropdown">
href="register.html">Register</a> <form class="navbar-search">
<a class="collapse-item" <div class="input-group">
href="404.html">404 Page</a> <input type="text" class="form-
<a class="collapse-item" control bg-light border-1 small"
href="blank.html">Blank Page</a> placeholder="What do you want to look for?"
</div> aria-label="Search" aria-
</div> describedby="basic-addon2" style="border-
</li> color: #3f51b5;">
<li class="nav-item"> <div class="input-group-
<a class="nav-link" href="charts.html"> append">
<i class="fas fa-fw fa-chart-area"></i> <button class="btn btn-primary"
<span>Charts</span> type="button">
</a> <i class="fas fa-search fa-
</li> --> sm"></i>
<hr class="sidebar-divider"> </ul> </button>
Topbar.php </div>
</div>
<?php </form>
$query = "SELECT * FROM tbladmin </div>
WHERE Id = ".$_SESSION['userId'].""; </li>
$rs = $conn->query($query);
$num = $rs->num_rows; <div class="topbar-divider d-none d-
$rows = $rs->fetch_assoc(); sm-block"></div>
$fullName = $rows['firstName']." <li class="nav-item dropdown no-
".$rows['lastName']; arrow">
<a class="nav-link dropdown-toggle"
?> href="#" id="userDropdown" role="button"
<nav class="navbar navbar-expand navbar- data-toggle="dropdown"
light bg-gradient-primary topbar mb-4 static- aria-haspopup="true" aria-
top"> expanded="false">
<button id="sidebarToggleTop" <img class="img-profile rounded-
class="btn btn-link rounded-circle mr-3"> circle" src="img/user-icn.png" style="max-
<i class="fa fa-bars"></i> width: 60px">
</button> <span class="ml-2 d-none d-lg-
<div class="text-white big" inline text-white small"><b>Welcome <?php
style="margin-left:100px;"><b></b></div> echo $fullName;?></b></span>
<ul class="navbar-nav ml-auto"> </a>
<li class="nav-item dropdown no- <div class="dropdown-menu
arrow"> dropdown-menu-right shadow animated--
<a class="nav-link dropdown-toggle" grow-in" aria-labelledby="userDropdown">
href="#" id="searchDropdown" role="button" <!-- <a class="dropdown-item"
data-toggle="dropdown" href="#">
aria-haspopup="true" aria- <i class="fas fa-user fa-sm fa-fw

39
mr-2 text-gray-400"></i>
Profile
</a>
<a class="dropdown-item"
href="#">
<i class="fas fa-cogs fa-sm fa-fw
mr-2 text-gray-400"></i>
Settings
</a>
<a class="dropdown-item"
href="#">
<i class="fas fa-list fa-sm fa-fw
mr-2 text-gray-400"></i>
Activity Log
</a> -->
<div class="dropdown-
divider"></div>
<a class="dropdown-item"
href="logout.php">
<i class="fas fa-power-off fa-fw
mr-2 text-danger"></i>
Logout
</a>
</div>
</li>
</ul>
</nav>

40
6.3 SNAPSHOTS

➢ LOGIN FORM

This login form is made for security purpose. This includes administrator and user login. There will be
a username and password to login into the system to use all the facility.

41
➢ ADMINISTRATOR DASHBOARD

This form is showed when a authorized person enters his correct user name and password.
This form gives the option to fill the another information about Student Registration,
Attendance, Room Allotment, Show Seating and Log Out, etc…

42
43
➢ TEACHER’S DASHBOARD

This form is showed when a authorized person enters his correct user name and password. This form
gives the option to fill the another information about Student Registration, Attendance, Room
Allotment, Show Seating and Log Out, etc…

44
45
➢ PARENT’S DASHBOARD

This form is showed when a authorized person enters his correct user name and password. This form
gives the option to fill the another information about Student Registration, Attendance, Room
Allotment, Show Seating and Log Out, etc…

46
47
➢ STUDENT’S DASHBOARD

This form is showed when a authorized person enters his correct user name and password. This form
gives the option to fill the another information about Student Registration, Attendance, Room
Allotment, Show Seating and Log Out, etc…

48
49
CHAPTER-7

(ADVANTAGES AND DISADVANTAGES)

50
7.1 ADVANTAGES AND DISADVANTAGES

➢ ADVANTAGES

• Centralized Data Management

o All academic, administrative, and student-related data is stored and managed in one system,
reducing duplication and ensuring consistency.

• Improved Efficiency & Productivity

o Automates repetitive tasks like attendance, grading, and report generation, saving time and
reducing staff workload.

• Real-Time Information Access

o Students, faculty, and parents can access real-time updates on academic performance,
announcements, and attendance.

• Enhanced Communication

o Facilitates seamless communication between faculty, students, and parents through notifications,
messaging, and updates.

➢ DISADVANTAGES

• Initial Implementation Cost


o Requires investment in software, infrastructure, and training, which might be a constraint
for smaller institutions.

• Technical Skill Requirements


o Staff and faculty may require technical training to effectively use the system, especially
if they're unfamiliar with digital tools.

• Dependence on Internet and Devices


o System performance is reliant on stable internet connectivity and access to computers or
mobile devices
.
• Security Concerns
o Without proper encryption and access control, sensitive data (like student records and
exam results) can be vulnerable to breaches.

51
CHAPTER-8

(FUTURE SCOPE)

52
8.1 FUTURE SCOPE

➢ AI-Powered Insights and Analytics


The integration of artificial intelligence can help analyze student performance, predict
dropout risks, recommend personalized learning paths, and assist faculty with academic
planning based on data-driven insights.
➢ Mobile Application Integration
Developing a dedicated mobile app for students, faculty, and parents would enhance
accessibility, allowing real-time notifications, attendance tracking, grade viewing, and
communication on the go.
➢ Cloud-Based Infrastructure
Migrating CDMS to a cloud environment ensures scalability, data security, and access from
anywhere, making it ideal for institutions with multiple campuses or for remote learning
scenarios.
➢ Integration with Learning Management Systems (LMS)
CDMS can be integrated with LMS platforms like Moodle or Google Classroom to manage
assignments, course materials, online exams, and performance tracking in a seamless
environment.
➢ Biometric and RFID Integration
Incorporating biometric or RFID-based attendance systems will automate student and
faculty attendance marking, ensuring accuracy and eliminating proxy entries.
➢ Automated Fee and Scholarship Management
Enhancing the financial module to include automated fee collection, late fee calculation, and
scholarship tracking would make financial operations more efficient.

53
CHAPTER-9

(CONCLUSION)

54
9.1 CONCLUSION

The College Department Management System (CDMS) stands as a vital technological


advancement tailored to meet the dynamic needs of modern educational institutions. By
seamlessly integrating student, faculty, parent, and administrative functionalities into a
single, unified platform, CDMS not only streamlines operations but also ensures
transparency, accuracy, and real-time communication. It addresses the limitations of
traditional manual systems, reduces human error, and significantly eases the workload
of staff and faculty. Ultimately, the implementation of CDMS enhances the overall
efficiency, accountability, and academic engagement within colleges, contributing to a
more organized, responsive, and future-ready educational environment.

55
CHAPTER-10

(REFRENCES)

56
10.1 REFERENCE

REFERENCES:-

➢ https://www.irjmets.com/uploadedfiles/paper

➢ WWW.SCRUTINY ASSESSEMENT.COM

➢ WWW.MSSQL.COM/GUIDE.PDF

➢ XAMPP download | SourceForge.net

BIBLOGRAPHY:-

WE RECOMMENDED THE FOLLOWING BOOKS FOR THE NEW PROGRAMMER TO USE


DEVELOP HIS SKILLS.

➢ PHP

➢ HEAD FIRST SQL

57

You might also like