You are on page 1of 38

Kurdish Regional Government

Ministry of Higher Education


University of Suleimani
Faculty of Physical and Basic Education
Computer Science Department

Faculty absence management


system
Submitted to the scientific council of the computer department at the Faculty of
Physical and basic Education School of Basic Education, University of Suleimani
in partial fulfillment for the requirements of the degree of bachelor in Computer.

Prepared by:
Ali Sdiq Kakarash
Nabel Hamasalah Aziz
Mlko Fatih Mhamadamin

Supervised by
MSc. Lecture: Wria Muhamed
‫حكومةتى هةريَمي كوردستان‬

‫سةروَكايةتى ئةجنومةنى وةزيران‬

‫وةزارةتي خويَندنى باالَو تويَذينةوةى زانستى‬

‫فاكةلَتى وةرزش وثةروةردةى بنةِرةتى‬

‫سكولَى ثةروةردةى بنةرِةت‬

‫فؤرمى ثيَشكةشكردنى تويَذينةوةى دةرضوون‬


‫تويَذينةوةى هةرسىَ خويَندكار ( على صديق كاكةرِةش‪,‬نةبيل حةمةصاحل عزيز‪,‬ملكؤ فاتيح حممد امني)‬

‫بةناونيشاني‬

‫‪Faculty absence management‬‬


‫‪system‬‬

‫دةخةينة بةردةست ئةجنوومةنى بةش‪،‬كة تيايدا هةموو ثيَداويستى يةكانى تويَذينةوةى‬

‫زانستيمان تةواو كردووة‬


‫بة ثيَى ئةو ثيَشنيارةى ئةم تويَذينةوةية ثيَشكةش بة ليذنةى هةلَسةنطاندن‬

‫دةكةين‬

‫سةرثةرشتيار‬
‫برِيارى ليذنةى طفتوطؤى ثرؤذةى دةرضوون‬

‫ئيَمة ئةندامانى ليذنةى طفتوطؤ و هةلَسةنطاندنى ثرؤذةى دةرضوونى هةرسىَ خويَندكارى قؤناغى ضوارةمى بةشى كؤمثيوتةر‬

‫ئةم تويَذينةوةيةمان خويَندةوة لةطةل هةرسىَ خويَندكار طفتوطؤمان دةربارةى ناوةرؤك و اليةنةكانى ترى كردو‬

‫برِيارماندا بة (‪ ) ...........................................‬وةك بةشيَك لة ثيَداويستى برِوانامةى بةكالؤريؤس‪.‬‬

‫سةرؤكى ليذنة‬ ‫ئةندام‬ ‫ئةندام‬ ‫سةرثةرشتيار‬

‫‪2018 /‬‬ ‫‪/‬‬ ‫‪2018‬‬ ‫‪/‬‬ ‫‪/‬‬ ‫‪2018‬‬ ‫‪/‬‬ ‫‪/‬‬ ‫‪2018‬‬ ‫‪/‬‬ ‫‪/‬‬

‫سةرؤكى بةشى كؤمثيوتةر‬

‫م‪.‬ى شيَركؤ حسن عبدالرمحن‬


ACKNOWLEDGEMENTS

In The Name of Allah, Most Gracious, Most Merciful


We would like to express our admiration to (MSc. Wria) for guiding us through each and every
step of the process with knowledge and support. Thank you for your advice, guidance and
assistance, without your precious support this work will not have been completed. Our thankful
to the almighty God who had given us the power, good sense and confidence to complete our
project successfully. In completing this graduate project, we have been fortunate to have help,
support and encouragement. We sincerely acknowledge and thank our family members and
friends who gave moral support and confidence for us.

Abstract
Over the years the manual attendance management has been carried across most of
educational institutions. To overcome the problems of manual attendance, we have developed
“Faculty Absence Management System”. Absence Management System is based on web
server, which can be implemented on any computer. In This application, node js is server side
language, MySQL is used for database and HTML, CSS, JavaScript, JQuery and Ajax are
used as front-end tools. The system communicates with database residing on a remote server.
It calculates automatically, the Absence percentage of students without any manual paper-
based work. The system facilitates the end users with interactive design and automated
processing of attendance management.
LIST OF FIGURE
Figure 1: URL Example. .......................................................................................................... 12
Figure 2: Login Form ............................................................................................................... 21
Figure 3: Dashboard Page ........................................................................................................ 22
Figure 4: Department Page ...................................................................................................... 23
Figure 5: Add Department ....................................................................................................... 23
Figure 6: Update Department................................................................................................... 24
Figure 7: Student Page ............................................................................................................. 24
Figure 8:Registration Student .................................................................................................. 25
Figure 9: Update Student ......................................................................................................... 25
Figure 10: User Page ................................................................................................................ 26
Figure 11: Registration User .................................................................................................... 27
Figure 12: Update User ............................................................................................................ 28
Figure 13: Group page ............................................................................................................. 29
Figure 14: Update User ............................................................................................................ 29
Figure 15: Subject Page ........................................................................................................... 30
Figure 16: Registration Subject ............................................................................................... 30
Figure 17: Update Subject ....................................................................................................... 31
Figure 18: Absent page ............................................................................................................ 31
Figure 19: Staff page ................................................................................................................ 32
Figure 20: Update Absent ........................................................................................................ 32
Figure 21: Techer Page 1 ......................................................................................................... 33
Figure 22: Teacher Page 2 ....................................................................................................... 34
Figure 23: Report Page ............................................................................................................ 35
Figure 24: 404 Page ................................................................................................................. 36
TABLE OF CONTENTS
Faculty absence management system ............................................................................ 1
Faculty absence management system ............................................................................ 2
CHAPTER ONE: INTRODUCTION .................................................................................... 8
1-1. Overview ........................................................................................................................ 8
1-2. The Project problem ..................................................................................................... 9
1-3. The aim of the project................................................................................................... 9
1-4. Project objectives .......................................................................................................... 9
1-5. Limitation .................................................................................................................... 10
1-6. Researches organize: .................................................................................................. 10
CHAPTER TWO ................................................................................................................... 11
LITERATURE REVIEW AND BACKGROUNDS ........................................................... 11
2.1. Literature review ............................................................................................................ 11
2-1. The project ................................................................................................................... 11
2-2. WEBSITE .................................................................................................................... 11
2-2-1. website ................................................................................................................... 11
2-2-2. WEBPAGES: ......................................................................................................... 12
2-2-3. comparison between website and web page?......................................................... 12
2-3.Node.js: ......................................................................................................................... 13
2-3-1 Node.js’s Express:................................................................................................... 14
2-3-2. node.js routing: ...................................................................................................... 14
2-4. JQuery: ........................................................................................................................ 15
2-5. Java script: .................................................................................................................. 15
2-6. Ajax: ............................................................................................................................. 17
2-7. DATABASE ................................................................................................................. 18
2-7-1. Definition ............................................................................................................... 18
2-7-2: MySQL .................................................................................................................. 20
CHAPTER 3 ........................................................................................................................... 21
DESIGN AND EXECUTION ............................................................................................... 21
3-1. Introduction ................................................................................................................. 21
3-2. System Analysis ........................................................................................................... 21
3-3. Pages ............................................................................................................................. 21
CHAPTER 4 ........................................................................................................................... 37
CONCLUSION AND FUTURE WORKS ........................................................................... 37
4-1. Conclusion ................................................................................................................... 37
4-2. Future Work ................................................................................................................ 37
Bibliography ................................................................................................................ 38
LIST OF ABBRIVATIONS

 HTML Hyper Text Markup Language


 CSS Cascading Style Sheets
 AJAX Asynchronous JavaScript and XML
 URL Uniform Resource Locator
 HTTP Hypertext Transfer Protocol
 OS Operating System
 I/O Input Output
 API Application Programming Interface
 DNA Deoxyribonucleic Acid
 XML Extensible Markup Language
 IBM International Business Machines
 PHP Hypertext Preprocessor
 SQL Structured Query Language
 DBMS Database Management System
 ASP Active Server Pages
CHAPTER ONE: INTRODUCTION
1-1. Overview

Recently, online system has become one of the most famous systems in the World of
technology because most of the business transformed to online. Most of the university even
school has online system for students, courses and teachers. The online school management
system makes easy for students, teachers to check the timetables from home. Furthermore, they
can check their works from home.
The main of the project is to build an online system from scratch for university of Suleiman/
College of Basic education, Computer Department to manage the department including
students, lecturers and subjects.
Totally, this project consists of three main different parts. the first part is for administration,
second one is for lecturers and third part of the website is for students.
Administrator is the managers who can insert new information to the website. Another
advantage of this project is the website can have more than one administrator. The duty of the
administrators is inserting the courses, lecturer names, students and chooses the courses for the
lecturers.
Second part is for lecturer, who can choose the absent students. Each lecture can have more
than one subject.
Third part of this project is for students. In the website, there are the list of students for each
stages even for each groups, the lecturer can see the list of students when he/she choose the
stage and subjects.
1-2. The Project problem

Till now, according to our information in our college, we have not any website that has
specialized with absent system. However, for Kurdistan’s university, it is necessity for lecturers
and staff university. So, we are trying to make the system to know about absents system for
university of Suleiman / college of basic education. We hope, this project will be a good
beginning for making a new website among Kurdistan’s universities for absent system.

1-3. The aim of the project

The main purpose in this research is making a website in absent systems for university of
Sulaimani/ College of Basic education that the lecturers can register their information and have
a special account. Also, they see the subjects with different departments, furthermore, they can
do the absent systems. The head of departments can insert, modify or delete the lecturers and
subjects. Another benefit of the system is to know about the rates of the student absents.

1-4. Project objectives

The project objectives can be summarized with the following sub objects:
 This project is easy in use that the lecturer can have account which created by the head
of departments.
 We use Node.js for designing this website and use MySQL for making the database,
that it gives the strength to the project according to security.
 There is full security for the website which no lecturer can insert to another subjects
except the her/his own subjects.
 Showing the properties of Node.js with the most modern tools which help us to develop
this application.
1-5. Limitation

The Limitation of this project classified as: -


In this project (Node.js) is used, the possible opportunity for (Node.js) is different types of
tools including sublime, a possible opportunity for the database is MySQL. Also, (Bootstrap
and CSS) are used for giving a good design to in front of the website. Node.js is based on the
JavaScript which can have the most modern design for the website, also, it has the security
login page for the website.
In this website there three different characteristics including students, lecturers and subject.
There is the list of students which available for each level and departments,
The lecturer can see the list of student for his/her own subjects.
The subject is available for each stage for each department including the scores and units of
the subject.

1-6. Researches organize:

In chapter one, first overview of this research is written, the overview is covered the short
description of this research. Then problem statement has explained, as well as aim and objects
are clarified, such as this project is built by usingNode.js. Also, limitation of the project is
written, finally, research outline.
In chapter two, the background information and literature review about this project is written.
In the literature review some previous works have been discussed, also, in the background
information, the necessity of the project has been explained.
In chapter three, the design and implementation of the project is explained. The design of this
projects include design of whole system, also database and diagrams as well as the
methodology, the implementation of whole website has been discussed. The main two parts
including admin part and general user part have been explained in detail. The implementation
is explained with different types of page figures.
In chapter four, both future works and conclusion are illustrated. Future work includes all future
works that we want to add for this project. Also the main conclusion which we got from this
project has been discussed.
CHAPTER TWO
LITERATURE REVIEW AND BACKGROUNDS
2.1. Literature review

2-1. The project

The project (1) is about the state’s School management System to computerize the school; this
system uses oracle 10g express and visual basic 6.0). The Front end used Visual Basic. The
Back End used is Oracle Server. In this project there are several modules such as Data Entry
module, Data Records module. These modules are further divided in to sub modules. That is
Class Setup, Student Setup, Teacher Setup Employee Attendance, Subject Setup, Examination
Setup and Exam Details are in Data Entry module. Student Details, Teacher Records, Student
Attendance, Employee Attendance, Fees Records are in the Data Records module. On the other
hand, (2) there is another project which give an idea of computerizing colleges Administration,
including their department information and especially students mark. In first chapter we give
an introduction to the System, objective and aim of our research and giving a brief detail about
the model that we use for the project, In second chapter we mentioned necessary definition and
concepts, also used technologies. The Third chapter is the core of the project which is practical
part. We show all necessary parts and steps for using the system . In last chapter from our work
we give suggestions and conclusion.

2-2. WEBSITE

2-2-1. website
A website is a collection of web pages (documents that are accessed through the Internet),
such as the one you're looking at now. A web page is what you see on the screen when you
type in a web address, click on a link, or put a query in a search engine. A web page can
contain any type of information, and can include text, color, graphics, animation and sound.
(3)
2-2-2. WEBPAGES:

A web page or web page is a document commonly written in HyperText Markup Language
(HTML) that is accessible through the Internet or other network using an Internet browser. A
web page is accessed by entering a URL address and may contain text, graphics, and
hyperlinks to other web pages and files. The page you are reading now is an example of a
web page. (4)

2-2-3. comparison between website and web page?

A website refers to a central location that contains more than one web page. For example,
Computer Hope is considered a website, which includes thousands of different web pages,
including this web page you are reading now.

Figure 1: URL Example.


In the above URL example, the website is computerhope.com and the web page is "url.htm"
and is always the last part of the URL. (4)
2-3.Node.js:

As an asynchronous event driven JavaScript runtime, Node is designed to build scalable


network applications. In the following "hello world" example, many connections can be
handled concurrently. Upon each connection the callback is fired, but if there is no work to be
done, Node will sleep.

This is in contrast to today's more common concurrency model where OS threads are
employed. Thread-based networking is relatively inefficient and very difficult to use.
Furthermore, users of Node are free from worries of dead-locking the process, since there are
no locks. Almost no function in Node directly performs I/O, so the process never blocks.
Because nothing blocks, scalable systems are very reasonable to develop in Node.

If some of this language is unfamiliar, there is a full article on Blocking vs Non-Blocking.

Node is similar in design to, and influenced by, systems like Ruby's Event Machine or
Python's Twisted. Node takes the event model a bit further. It presents an event loop as a
runtime construct instead of as a library. In other systems there is always a blocking call to start
the event-loop. Typically behavior is defined through callbacks at the beginning of a script and
at the end starts a server through a blocking call like EventMachine::run(). In Node there is no
such start-the-event-loop call. Node simply enters the event loop after executing the input
script. Node exits the event loop when there are no more callbacks to perform. This behavior
is like browser JavaScript — the event loop is hidden from the user.

HTTP is a first class citizen in Node, designed with streaming and low latency in mind. This
makes Node well suited for the foundation of a web library or framework.

Just because Node is designed without threads, doesn't mean you cannot take advantage of
multiple cores in your environment. Child processes can be spawned by using
our child_process.fork() API, and are designed to be easy to communicate with. Built upon that
same interface is the cluster module, which allows you to share sockets between processes to
enable load balancing over your cores (5).

2-3-1 Node.js’s Express:


Express is a framework that sits on top of Node.js’s web server functionality to simplify
its APIs and add helpful new features. It makes it easier to organize your application’s
functionality with middleware and routing; it adds helpful utilities to Node.js’s HTTP objects;
it facilitates the rendering of dynamic HTML views; it defines an easily implemented
extensibility standard.

In broad strokes, Express adds two big features to the Node.js HTTP server:

■ It adds a number of helpful conveniences to Node.js’s HTTP server, abstracting away a lot
of its complexity. For example, sending a single JPEG file is fairly complex in raw Node.js
(especially if you have performance in mind); Express reduces it to one line.

■ It lets you refactor one monolithic request handler function into many smaller request
handlers that handle only specific bits and pieces. This is more maintainable and more modular
(6).

2-3-2. node.js routing:

Routing refers to how an application’s endpoints (URIs) respond to client requests. For an
introduction to routing.

You define routing using methods of the Express app object that correspond to HTTP methods;
for example, app.get() to handle GET requests and app.post to handle POST requests. For
a full list, You can also use app.all() to handle all HTTP methods and app.use() to specify
middleware as the callback function.

These routing methods specify a callback function (sometimes called “handler functions”) called
when the application receives a request to the specified route (endpoint) and HTTP method. In
other words, the application “listens” for requests that match the specified route(s) and
method(s), and when it detects a match, it calls the specified callback function.

In fact, the routing methods can have more than one callback function as arguments. With
multiple callback functions, it is important to provide next as an argument to the callback
function and then call next() within the body of the function to hand off control to the next
callback.
The following code is an example of a very basic route.

var express=require(‘express’)

var app=express();

app.get(‘/’,function(req,res){

res.send(‘hello word’)

}) (7).

2-4. JQuery:

jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML
document traversal and manipulation, event handling, animation, and Ajax much simpler with
an easy-to-use API that works across a multitude of browsers. If you're new to jQuery, we
recommend that you check out the jQuery Learning Center.

If you're updating to a newer version of jQuery, be sure to read the release notes published
on our blog. If you're coming from a version prior 1.9, you should check out the 1.9 Upgrade
Guides as well (8).

2-5. Java script:

JavaScript is a programming language commonly used in web development. It was originally


developed by Netscape as a means to add dynamic and interactive elements to websites. While
JavaScript is influenced by Java, the syntax is more similar to C and is based on ECMAScript,
a scripting language developed by Sun Microsystems .

JavaScript is a client-side scripting language, which means the source code is processed by the
client's web browser rather than on the web server. This means JavaScript functions can run
after a webpage has loaded without communicating with the server. For example, a JavaScript
function may check a web form before it is submitted to make sure all the required fields have
been filled out. The JavaScript code can produce an error message before any information is
actually transmitted to the server.
Like server-side scripting languages, such as PHP and ASP, JavaScript code can be inserted
anywhere within the HTML of a webpage. However, only the output of server-side code is
displayed in the HTML, while JavaScript code remains fully visible in the source of the
webpage. It can also be referenced in a separate .JS file, which may also be viewed in a
browser.

Below is an example of a basic JavaScript function that adds two numbers. The function is
called with the parameters 7 and 11. If the code below were included in the HTML of a
webpage, it would display the text "18" in an alert box.

<script>
function sum(a,b)
{
return a + b;
}
var total = sum(7,11);
alert(total);
</script>

JavaScript functions can be called within <script> tags or when specific events take place.
Examples include onClick, onMouseDown, onMouseUp, onKeyDown, onKeyUp, onFocus,
onBlur, onSubmit, and many others. While standard JavaScript is still used for performing
basic client-side functions, many web developers now prefer to use JavaScript libraries
like jQuery to add more advanced dynamic elements to websites (9).
2-6. Ajax:

Ajax is a combination of Web development technologies used for creating dynamic websites.
While the term "Ajax" is not written in all caps like most tech acronyms, the letters stand for
"Asynchronous JavaScript and XML." Therefore, websites that use Ajax
combine JavaScript and XML to display dynamic content.

The "asynchronous" part of Ajax refers to the way requests are made to the Web server. When
a script sends a request to the Web server, it may receive data, which can then be displayed on
the Web page. Since these events happen at slightly different times, they are considered to be
asynchronous. Most Ajax implementations use the XMLHttpRequest API, which includes a
list of server requests that can be called within JavaScript code. The data is usually sent back
to the browser in an XML format, since it is easy to parse. However, it is possible for the server
to send data as unformatted plain text as well.

What makes Ajax so powerful is that scripts can run on the client side, rather than on the server.
This means a JavaScript function can make a request to a server after a webpage has already
finished loading. The data received from the server can then be displayed on the page without
reloading the other content. If a server-side scripting language like PHP or ASP was used, the
entire page would need to be reloaded in order for the new content to be displayed.

While you may not realize it, you have probably seen Ajax at work on several different
websites. For example, search engines that provide a list of search suggestions as you type are
most likely using Ajax to display the suggestions. Image searches that produce
more thumbnails as you scroll through the results typically use Ajax to retrieve the continual
list of images. When you click "Older Posts" at the bottom of a Facebook page, Ajax is used
to display additional postings.

Ajax has helped make the Web more dynamic by enabling webpages to retrieve and load new
content without needing to reload the rest of the page. By using Ajax, Web developers can
create interactive websites that use resources efficiently and provide visitors with a responsive
interface (10).
2-7. DATABASE

2-7-1. Definition
A database is a set of data that has a regular structure and that is organized in such a way that
a computer can easily find the desired information.

Data is a collection of distinct pieces of information, particularly information that has


been formatted in some specific way for use in analysis or making decisions.

A database can generally be looked at as being a collection of records, each of which contains
one or more fields about some entity (i.e., object), such as a person, organization, city, product,
work of art, recipe, chemical, or sequence of DNA. For example, the fields for a database that
is about people who work for a specific company might include the name, employee
identification number, address, telephone number, date employment started, position and
salary for each worker.

Several basic types of database models have been developed,


including flat, hierarchical, network and relational. Such models describe not only the
structure of the conforming databases but also the operations that can be performed on them.
Typically, a database has a schema, which is a description of the model, including the types
of entities that are in it and the relationships among them.

Flat databases are the simplest type. They were long the dominant type, and they can still be
useful, particularly for very small scale and simple applications. An example is a single table
on paper or in a computer file that contains a list of companies with information about each
such as name, address, product category, contact name, etc. A flat database can also exist in
the form of a set of index cards, each containing the information for one of the entities.

The development and subsequent rapid advance of electronic computers in the second half of
the twentieth century led to the development of database models that are far more efficient for
dealing with large volumes of information than flat databases. The most notable is the relational
model, which was proposed by E. F. Codd in 1970. Codd, a researcher at IBM, criticized
existing data models for their inability to distinguish between the abstract descriptions of data
structures and descriptions of the physical access mechanisms.

A relational database is a way of organizing data such that it appears to the user to be stored in
a series of interrelated tables. Interest in this model was initially confined to academia, perhaps
because the theoretical basis is not easy to understand, and thus the first commercial products,
Oracle and DB2, did not appear until around 1980. Subsequently, relational databases became
the dominant type for high performance applications because of their efficiency, ease of use,
and ability to perform a variety of useful tasks that had not been originally envisioned.

A database management system (DBMS) is software that has been created to allow the
efficient use and management of databases, including ensuring that data is consistent and
correct and facilitating its updating. For small, single user databases, all functions are often
managed by a single program; for larger and multi-user databases, multiple programs are
usually involved and a client-server architecture is generally employed. The first DBMSs were
developed in the 1960s in an attempt to make more effective use of the new direct
access storage devices that were becoming available as supplements and eventual replacements
for punched cards and magnetic tape. The word database is commonly used in a broad sense
to refer not only just to structured data but also to the DBMS that is used with it.

Databases can be stand-alone programs, or they can be built into other programs, including
those that are considered part of the operating system. The typical computer contains numerous
databases of the latter type. They include the many plain text configuration files that allow
users to easily modify system behavior on Linux and other Unix-like operating systems, web
browsers contain simple databases listing the most recently visited web sites and user
preferences, and e-mail programs contain simple databases listing e-mail addresses, recent
communications and user preferences (11).
2-7-2: MySQL
MySQL is the world’s most popular open source database, enabling the cost-effective
delivery of reliable, high-performance and scalable Web-based and embedded database
applications. It is an integrated transaction safe, ACID-compliant database with full commit,
rollback, crash recovery, and row-level locking capabilities. MySQL delivers the ease of use,
scalability, and high performance, as well as a full suite of database drivers and visual tools to
help developers and DBAs build and manage their business-critical MySQL applications.
MySQL is developed, distributed, and supported by Oracle, and the latest information about
MySQL software can be found on the MySQL Web site. The MySQL database provides the
following features:

High Performance and Scalability to meet the demands of exponentially growing data loads
and users. Self-healing Replication Clusters to improve scalability, performance and
availability. Online Schema Change to meet changing business requirements.

Performance Schema for monitoring user- and application-level performance and resource
consumption.

SQL and NoSQL Access for performing complex queries and simple, fast Key Value
operations.

Platform Independence giving you the flexibility to develop and deploy on multiple operating
systems.

Big Data Interoperability using MySQL as the operational data store for Hadoop and
Cassandra.

To achieve the highest level of MySQL scalability, security, reliability and uptime, MySQL
Enterprise Edition includes the most comprehensive set of advanced features, management
tools and technical support, including MySQL Enterprise Monitor, MySQL Enterprise Backup,
as well as scalability, security, auditing and high availability features. MySQL Enterprise
Edition also includes 24x7 Oracle Premier Support and Oracle product certifications and
integrations (12).
CHAPTER 3
DESIGN AND EXECUTION
3-1. Introduction

After completion all requirements to make a database for recording absent students of
faculty of physical and basic education of Sulaimani university. The database is tested for
analyzing the system to make sure that the requirements are sufficient and correct according
requested functionality of making database.

3-2. System Analysis

This program is designed to record absent of university students online. It allows


academic staff such as super admin (head of faculty), admin (head of departments), users
(teachers), and staff (Register Team) to operate it according to their rolls and priority.

3-3. Pages

The Figure 3.1 shows the front-page database. Firstly, there are four rolls to entering the
web site database. But each rolls should be authorized to enter the system by specific
username and password.

Figure 2: Login Form


In figure 3 After entering the database there's a lot of information about the database, it also
contains many links for the other permitted pages to enter. In this page admin can see all
information about percentage of absent students

Figure 3: Dashboard Page


In figure 4 you can see all the department names and headers of the departments more over
adding, rename, or delete a department is also optional. Only the supper admin can enter
and see these commands.

Figure 4: Department Page

In figure 5 the supper admin can add a department with headers in this page which only allows
the supper admin to do it.

Figure 5: Add Department


In figure 6 the supper admin can add a department with headers in this page which only
allows the supper admin to do it.

Figure 6: Update Department

In figure 3.6, this is for showing the student's information. It contains the student's name, the
student's code, the student's phone number, the department in which the student accepted, and
the student's stage and the group. It's also under the control of admin of the department who
can delete a student.

Figure 7: Student Pag


In Figure 3.7, this page is for adding new students in which all the information about the
students were registered, such as the student's name, the code, the phone number, the
department, the group and the stage. Their code should not be repeated

Figure 8:Registration Student

In figure 3.8 the admin can edit the information of the students, which includes the student's
name, the phone number, the department, the stage and the group. It's also under the control
of the admin.

Figure 9: Update Student


Figure 3.9 includes all the users who can enter the database. Everyone has his/her own role
such as staff, user, admin and supper admin. This page is under the control of the admin. And
the admin of the department can add a new user to her/his department.

Figure 10: User Page


Figure 3.10 is for adding new permitted user to use the database. The admin determines to
add whom or to gives which role to them, as a role of a staff, a user, or an admin.

Figure 11: Registration User


In figure 3.11 is for editing the user's name and the password. All the permitted of this page
can change their own password, to change their password they must remember their old
password.

Figure 12: Update User


Figure 3.12 shows us all those groups that all the departments have, only the supper admin
have the ability and power to add, delete, rename or edit a group.

Figure 13: Group page

Figure 3.13 is specialized for the teacher's information. only the admin can see it. Here
the admin of the department can add a new teacher to her/his department, edit the private
information of the teacher, or delete a teacher.

Figure 14: Update Use


It's the most important page of the database. It includes the subjects of all the departments,
and includes the name of the teacher who teaches that subject. The admin controls this page
too. Each admen controls only her/his own department

Figure 15: Subject Page

In figure 3.15 is where the new subjects are inserted. All the information about the subject
are inserted like for what department, stage or group is it. And the teacher who teaches that
subject is shown.

Figure 16: Registration Subjec


In figure 3.16 the admin of the department has ability to change the name of subjects, the stages
of the subjects, units of the subjects, groups of the subjects and teachers of the subjects.

Figure 17: Update Subject

Figure 3.17 shows the student's absent. It shows the number of the absence students, and the
complete information about the absentee, such as the department, the stage, the subject and the
group, and also the date, and the hour of absent, the name of the teacher who absented the
student. deleting the absentees is also included in this page, but only super admin can delete it.

Figure 18: Absent page


After inserting the complete information about the student. in figure 3.18 the staff can get the
absentee instead of the teacher if there is an obstacle for the teacher to insert the absentees in
to the data base.

Figure 19: Staff pag

Figure 18 gives the supper admin a chance to edit the student's absence, in case of any
mistake or miscalculation. although supper admin get full information on the absentees
such as the teacher's name who absented the student, the date and hour of the absence, and
the absentee stage or group.

Figure 20: Update Absent


Figure 3.20 is special to the teacher. After entering and inserting the information about the
department, the stage and the group. If the subject is registered to that teacher, the group
will appear for the teacher, But if it didn't registered for him/her, he/she can't get the absence
of other groups. This is the only page that teachers see along with the students names which
is next figure.

Figure 21: Techer Page 1


In figure 3.21 after the teacher inserted his/her private information, if he/she has the lecture
of that group the names of the students will appear with green checkbox on the same row,
and if the teacher changes the checkbox from green to red then that student will be absented.
In that case the student's name, the department, the subject, the group and the numbers of
hours with the name of the teacher will be recorded.

Figure 22: Teacher Page 2


This page is special to the admin. There's enough information about the student's absence.
Which can be specified according to the date and student's absence. It includes the percentage
of every student's absence, the date of the absence, by whom or in which subject was the
student absented. It is possible to get the mentioned information from various ways such as
two different dates, department and absence percentage, specific group or a student code.

Figure 23: Report Page

.
A 404 page error or Not Found error is displayed when you go to a page that doesn’t exist
within an active
Website.

Figure 24: 404 Page


CHAPTER 4
CONCLUSION AND FUTURE WORKS
4-1. Conclusion

In this study the web site database has designed for recoding absence students in
university. It consisted of several parts such as departments, teachers, students, subjects,
groups, and reports. Fortunately, the database was responsive which can run for computer,
iPad, and mobile. One of the properties of this project there have permitted for any users who
is allowed previously. It can allow to record absent of students with all their information for
example name of absented students, their department, teacher of subject, subject, group,
absent hours, and the date of absent. This project has completed and ready without any error
and it can be used for any faculty as it was flexible and editable.

4-2. Future Work

The project is a part of great web site database which will developed in the future. In
this study the part of the project has taken and designed because of time restriction and several
functionality of the database. Further work will be done as follow:

1-Improvement the database layout and design style.


2-The database will support other language like Kurdish language.
Bibliography
1. Mazin, Shadi. School management System by using Oracle 1og Express and Visual basic
6.0. sulaimani : University of Sulaimani, 2013.
2. sivan, luqman and dlsoz. Faculty management System. Sulaimani : Uiniversity of
SUlaimani/ School of Basic Education, 2016-2017.
3. WhatIsAWebsite.html. WebHosting101. [Online] May 8, 2017.
http://www.freeservers.com.
4. webpage.htm. jargon/w. [Online] May 18, 2017. https://www.computerhope.com.
5. NodeJs. About. NodeJs. [Online] NodeJs. [Cited: 1 12, 2018.]
https://nodejs.org/en/about/.
6. M.Hahn, E. Express In Action. New York : s.n., 2016.
7. Express. Express. [Online] [Cited: 3 12, 2018.]
https://expressjs.com/en/guide/routing.html.
8. jquery. jquery. jquery. [Online] jquery. [Cited: 2 19, 2018.] https://jquery.com/.
9. script, Java. Java Script. [Online] Java script. [Cited: 2 13, 2018.]
https://techterms.com/definition/javascript.
10. Ajax. Ajax. Ajax. [Online] Ajax. [Cited: 2 12, 2018.]
https://techterms.com/definition/ajax.
11. Database. Database. [Online] Database. [Cited: 2 15, 2018.]
http://www.linfo.org/database.html.
12. Mysql. Mysql. Mysql. [Online] [Cited: 2 25, 2018.]
http://www.oracle.com/technetwork/database/mysql/index.html.
13. database. definition. [Online] May 18, 2017. https://techterms.com.

You might also like