1.1 Statement of The Problems
1.1 Statement of The Problems
1.1 Statement of The Problems
1. INTRODUCTION
1.1 Statement of the problems:
In many institution this is very difficult to maintain student data. Due to this reason this is
very difficult to check information about any students.
Using manual system to manage students which are records all information and in the
book or paper was causing the job of the teachers becomes more and troublesome. The
data have a possibility missing or destroy when it happen any accident. While now already
have the college use the computer to manage the student information.
Generally a Student Information System is about maintaining the student records which is
used by the college management to search any details of students. It helps to find students
easily.
We have developed Student Information System to provide student details in quite and
easy manner to the particular department. So, we called it a student information system
which is via the student and faculty. By using this technology we can fill the student details
through online compare to the existing system.
1
1.3 Scope of the project:
2
CHAPTER 2
LITERATURE SURVEY:
1. The system has come up with many functionalities for educational institutions to track the
student progress and managing attendance. It helps both student and guardian to keep track
of student progress without visiting to the college. It also notifies student and guardian
during the time of important events which are happening in institution. One more feature
is guardian get alerted whenever student get failed in the exam or student not able to meet
the expected attendance average. Student Information Report System (SIRS) is
application software and which has intention to begin a conductive and direct interchanging
the statistics in a secure platform to coalesce with students, faculties, parents and the
college/school administration. The student information has the particulars (like register
number sem, date-of-birth, sex, parent phone number, address, parent name, etc.) invade
to the system by the faculties. All these particulars is stored in the database. SIRS
application is trouble free to use in schools, colleges, universities, and any other
educational institutions. It can be customized as per the need. It can be used in private and
government educational institutions also. SIRS application is an internet based application
we can login to the system from anywhere irrespective of geographical area it will give
seamless navigation.
2. The project provides the particulars to carry out the performance, management and
decision-making functions of enterprises or organizations. Enormous grow of students is
caused to expand the functionality in the respective educational institutions. As student
added to the educational system it is difficult to manage and track student details. To
overcome difficulties we come up with this new approach student information management
system with additional features. This new approach will provide fast processing, efficient
student tracking, and produces desired result. This approach will allow students to save
their personal details. It is more secure, reliable and easy to use.
3. Attendance is part of any system to keep track of the particular person. It is mandatory
process in educational system which directly reflects the student progress. In educational
institutes attendance management is normally a manual process. There is enormous grow
in the software industry which has privileged colleges to maintain the attendance system
by using gadgets which is the best way. As we are using the smart phones we not require
maintaining attendance register. It can be easily done in mobile application. Faculty will
be going to take the attendance when class gets started. They will initially login to the
system through mobile application. Once attendance has been taken successfully for the
3
class it will sent to sever through GPRS. The faculties can also do the necessary functions
like registering new students, deleting the information about a particular student,
modifying the information regarding the student etc. The main intention of this process is
to reduce the risk of manual efforts. It also reduces the time consumption. Also we want to
give importance to reduce the paper wastage that daily happens.
4. The model utilizes computer aided system. The model plays main role in an institution or
in the college management. Initially, the system has developed with four layers based on
the hierarchy such as Web display layer where application is deployed and displayed for
end users. Business logic layer responsible for handling the functionality of the product.
Data access layer is responsible for viewing the data. Database layer responsible for storing
the student data. In Database layer ER diagram has been designed to provide data
normalization. The process provides complete information about student, faculties and
educational institution. Third thing in this project is to allowing user based on their
categories.
5. The project provides end user to seamless navigation to the application and ease of access.
The model provides information management storing of student academic reports. This
model consists of various functionalities like information about the courses available in the
college starting from first grade to graduation. It also enables students to enroll to particular
course through online, online fees payment, examination results, and also get notified when
important events occur. All data stored and retrieved through the application is secure. So
to achieve this we have developed a powerful web based secured interface application
which supports all type of request which are coming from the students also which gathers
and corrects all student information. To achieve this we have used similarity (Euclidean
distance) algorithm. The results showed that the new information gathered by the SDS has
the ability to fill the requirement and done the error correction in the traditional model.
6. The project will explains how it is playing an important role in the education domain. This
system is provides seamless access through the web based application to access and
manage different department or all over the organization. This system is used to mainly
monitor the attendance for the university. Students are provided access to login to
application and view the progress report and attendance report. This system is developed
for an engineering college it will provide end users to maintain their data with minimum
effort. Initially faculties/students get registered with the system once they finish
registration process they can access the system as well as they are able to do the changes
in the data. As per the requirement users has been granted with certain level permission to
manage and track the student information. Either student or faculty can upload and copy
4
the statistics from the database. Since it is a web based application which is accessible from
any part of the world it has certain features like accessibility, easy to use. IOT, easy to
manage etc. It is developed to suite the current environment which is rapidly growing in
the student domain.
5
CHAPTER -3
3. SOFTWARE REQUIREMENT ANALYSIS
3.1 DEFINE THE MODULES AND THEIR FUNCTIONALITIES
1. Admin module
Admin-Administrator is one who manages the Student Information System.
Admin can view all the registered Student details and Faculty details.
Admin acts as mediator between Student and management.
Whenever management wants to pass any information to students admin will
passes a messages to their contacts.
Admin can edit /update the student and faculty details.
Admin can view the faculty details who are registered.
Admin can add and view Student marks.
2. Faculty module
Faculty can view the student details.
Faculty will update the Student results Subject wise.
If they want any information he/she will pass the information through
messages.
Faculty can also edit/delete the Student details.
Faculty can add and view results of students.
3. Student Module
Student should register their details through online.
Student can have their own username and passwords to login into website.
Student can change their passwords.
Student can view their own details only.
6
3.2.1 FUNCTIONAL REQUIREMENTS
The system can be accesses as anywhere and anytime.
It will be ensure that the information may not be scattered
The administrator will be given more powers (edit / update / delete)
than other users.
Students can view their details
Faculty can view and update the details of students.
Network Connectivity
PHP 5.0
APACHE HTTP Server
Front End: PHP,HTML,CSS,JAVA SCRIPT
Database : MYSQL server
Microsoft Windows or Linux
8
CHAPTER 4
4. SYSTEM DESIGN
The overall system design objective is to provide an efficient, modular design that will reduce
the system’s complexity, facilitate change and result in an easy implementation. This will be
accomplished by designing strongly cohesion system with minimal coupling. In addition, this
document will provide interface design models that are consistent user friendly and will
provide straight forward transition through the various system functions.
4.1 SYSTEM ARCHTECTURE
The SIS is a system which contain major part which include: student Detail, Student
image and their results. The user selects one of the available options as an input to the
system. According to the input by the user the system acts and the rest of the functions
are performed accordingly. The administrator can operate on any student details. But the
normal student or users can only access their details of all the functionalities.
.Faculty
. Student
Admin
•Login
•View
•update
Faculty •Enter details
•Logout
Database
Student
•Login
•View
•Change
password
•Logout
Unified Modelling Language (UML) is a general purpose modelling language. The main
aim of UML is define a standard way to visualize the way a system has been designed. It is
quite similar to blueprints used in other fields of engineering.
9
UML is not a programming language, it is rather a visual language. We use UML diagrams
to portray the behaviour and structure of a system. UML helps software engineers,
businessmen and system architects with modelling, design and analysis. The Object
Management Group (OMG) adopted Unified Modelling Language as a standard in 1997. It’s
been managed by OMG ever since. International Organization for Standardization (ISO)
published UML as an approved standard in 2005. UML has been revised over the years and
is reviewed periodically.
A use case illustrates a unit of functionality provided by the system. The main purpose of
the use-case diagram is to help development teams visualize the functional requirements of
a system, including the relationship of "actors" (human beings who will interact with the
system) to essential processes, as well as the relationships among different use cases. Use-
case diagrams generally show groups of use cases — either all use cases for the complete
system, or a breakout of a particular group of use cases with related functionality.
System
Login
Branch
Student
Admin View
Update info
Delete/Edit
Logout
10
4.3.1.2 Use-case for student
System
Register
Login
View details
Student
Change password
Logout
System
Register
Login
Branch
Faculty
Student details
View
Update info
Logout
The class diagram shows how the different entities (people, things, and data) relate to each
other; in other words, it shows the static structures of the system. A class diagram can be
used to display logical classes, which are typically the kinds of things the business people in
an organization talk about — rock bands, CDs, radio play; or loans, home mortgages, car
loans, and interest rates. Class diagrams can also be used to show implementation classes,
which are the things that programmers typically deal with.
admin
+username: string
student register +pwd: string
+id: string +create()
+name: string +edit()
+pwd: string +delete()
+branch: string +view()
+view()
login
+username: string
+pwd: string
+view()
faculty
+username: string
+pwd: string
+view()
Sequence diagrams show a detailed flow for a specific use case or even just part of a
specific use case. They are almost self explanatory; they show the calls between the
different objects in their sequence and can show, at a detailed level, different calls to
different objects.
A sequence diagram has two dimensions: The vertical dimension shows the sequence of
messages/calls in the time order that they occur; the horizontal dimension shows the object
instances to which the messages are sent.
12
Admin Login Update information search view logout
1 : login()
2 : enter details()
3 : wrong details()
4 : search details()
5 : view details()
6 : logout()
7 : logout success()
1 : register()
2 : login()
3 : validate()
4 : view details()
5 : response()
6 : change pwd()
7 : submit()
8 : confirmation()
9 : logout()
10 : sucess()
4.5 ER Diagram:
14
1. One to One
2. One to Many
3. Many to One
Different books and design tools use different formats, symbols, and notations to describe
database design.
Relations are the bonds between entities. They tell about certain rules that apply if you want
to insert, update or delete occurrences (rows) from what later becomes a table. Relations also
tell us much about the logic connections between entities. In the physical design of the
database, relationships become constraints that govern how you are allowed to manipulate
data in different tables. The relationships are there to enforce referential integrity.. In my
diagrams, capitalized words (such as Student) identify entities.
Fig- ER diagram
4.6 DATABASE DESIGN
The database design involves the creating of tables where each table deals a particular set of
information and each table contains columns where each column is a field name the data is
inserted into the column. The database used in the making of this student web portal is oracle
MySQL. There are a total of 2 tables for semester marks and 1 table each for faculty, and
student details in the database. The web portal takes information by accessing the database
the database is provided with commit, roll back and run options to make changes in the data.
15
There are primary key fields that uniquely identify a record in a table. There are also fields
that contain primary key from another table called foreign keys.
16
CHAPTER – 5
5. IMPLEMENTATION
Implementation is one of the most important tasks in project is the phase in which one has to
be cautions because all the efforts undertaken during the project will be very interactive.
Implementation is the most crucial stage in achieving successful system and giving the users
confidence that the new system is workable and effective. Each program is tested individually
at the time of development using the sample data and has verified that these programs link
together in the way specified in the program specification. The computer system and its
environment are tested to the satisfaction of the user.
Implementation is one of the most important tasks in project is the phase in which one has to
be cautions because all the efforts undertaken during the project will be very interactive.
Implementation is the most crucial stage in achieving successful system and giving the users
confidence that the new system is workable and effective. Each program is tested individually
at the time of development using the sample data and has verified that these programs link
together in the way specified in the program specification. The computer system and its
environment are tested to the satisfaction of the user.
HTML:
- HTML stands for Hypertext Markup Language, and it is the most widely used
language to write Web Pages.
- Hypertext refers to the way in which Web pages (HTML documents) are linked
together. Thus, the link available on a webpage is called Hypertext.
17
- As its name suggests, HTML is a Markup Language which means you use HTML
to simply "mark-up" a text document with tags that tell a Web browser how to
structure it to display.
- Originally, HTML was developed with the intent of defining the structure of
documents like headings, paragraphs, lists, and so forth to facilitate the sharing of
scientific information between researchers.
- Now, HTML is being widely used to format web pages with the help of different tags
available in HTML language.
JAVASCIPRT:
JavaScript is a dynamic computer programming language. It is lightweight and most
commonly used as a part of web pages, whose implementations allow client-side script
18
to interact with the user and make dynamic pages. It is an interpreted programming
language with object-oriented capabilities.
JavaScript was first known as LiveScript, but Netscape changed its name to JavaScript,
possibly because of the excitement being generated by Java. JavaScript made its first
appearance in Netscape 2.0 in 1995 with the name LiveScript. The general-purpose core
of the language has been embedded in Netscape, Internet Explorer, and other web
browsers.
JavaScript is a lightweight, interpreted programming language.
Designed for creating network-centric applications.
Complementary to and integrated with Java.
Complementary to and integrated with HTML.
Open and cross-platform
1. Client-Side JavaScript
Client-side JavaScript is the most common form of the language. The script should be
included in or referenced by an HTML document for the code to be interpreted by the
browser.
It means that a web page need not be a static HTML, but can include programs that
interact with the user, control the browser, and dynamically create HTML content.
The JavaScript client-side mechanism provides many advantages over traditional CGI
server-side scripts. For example, you might use JavaScript to check if the user has entered
a valid e-mail address in a form field.
The JavaScript code is executed when the user submits the form, and only if all the entries
are valid, they would be submitted to the Web Server.
JavaScript can be used to trap user-initiated events such as button clicks, link navigation,
and other actions that the user initiates explicitly or implicitly.
2. Advantages of JavaScript
The merits of using JavaScript are −
Less server interaction − You can validate user input before sending the page off to
the server. This saves server traffic, which means less load on your server.
Immediate feedback to the visitors − They don't have to wait for a page reload to
see if they have forgotten to enter something.
Increased interactivity − You can create interfaces that react when the user hovers
over them with a mouse or activates them via the keyboard.
19
Richer interfaces − You can use JavaScript to include such items as drag-and-drop
components and sliders to give a Rich Interface to your site visitors.
CSS:
Cascading Style Sheets (CSS) is a style sheet language used for describing
the presentation of a document written in a markup language like HTML.[1] CSS is a
cornerstone technology of the World Wide Web, alongside HTML and JavaScript.[2]
Separation of formatting and content also makes it feasible to present the same markup
page in different styles for different rendering methods, such as on-screen, in print, by
voice (via speech-based browser or screen reader), and on Braille-based tactile devices.
CSS also has rules for alternate formatting if the content is accessed on a mobile device.[4]
The name cascading comes from the specified priority scheme to determine which style
rule applies if more than one rule matches a particular element. This cascading priority
scheme is predictable.
Cascading Style Sheets, fondly referred to as CSS, is a simple design language intended
to simplify the process of making web pages presentable.
CSS handles the look and feel part of a web page. Using CSS, you can control the color
of the text, the style of fonts, the spacing between paragraphs, how columns are sized and
laid out, what background images or colors are used, layout designs, variations in display
for different devices and screen sizes as well as a variety of other effects.
CSS is easy to learn and understand but it provides powerful control over the presentation
of an HTML document. Most commonly, CSS is combined with the markup languages
HTML or XHTML.
3. Advantages of CSS
CSS saves time − You can write CSS once and then reuse same sheet in multiple
HTML pages. You can define a style for each HTML element and apply it to as many
Web pages as you want.
20
Pages load faster − If you are using CSS, you do not need to write HTML tag
attributes every time. Just write one CSS rule of a tag and apply it to all the
occurrences of that tag. So less code means faster download times.
Easy maintenance − To make a global change, simply change the style, and all
elements in all the web pages will be updated automatically.
Superior styles to HTML − CSS has a much wider array of attributes than HTML,
so you can give a far better look to your HTML page in comparison to HTML
attributes.
Multiple Device Compatibility − Style sheets allow content to be optimized for more
than one type of device. By using the same HTML document, different versions of a
website can be presented for handheld devices such as PDAs and cell phones or for
printing.
Global web standards − Now HTML attributes are being deprecated and it is being
recommended to use CSS. So its a good idea to start using CSS in all the HTML pages
to make them compatible to future browsers.
PHP:
PHP started out as a small open source project that evolved as more and more people
found out how useful it was. Rasmus Lerdorf unleashed the first version of PHP way back
in 1994.
PHP is a recursive acronym for "PHP: Hypertext Preprocessor".
PHP is a server side scripting language that is embedded in HTML. It is used to
manage dynamic content, databases, session tracking, even build entire e-commerce
sites.
It is integrated with a number of popular databases, including MySQL, PostgreSQL,
Oracle, Sybase, Informix, and Microsoft SQL Server.
PHP is pleasingly zippy in its execution, especially when compiled as an Apache
module on the Unix side. The MySQL server, once started, executes even very
complex queries with huge result sets in record-setting time.
PHP supports a large number of major protocols such as POP3, IMAP, and LDAP.
PHP4 added support for Java and distributed object architectures (COM and
CORBA), making n-tier development a possibility for the first time.
PHP is forgiving: PHP language tries to be as forgiving as possible.
PHP Syntax is C-Like.
21
4. Common uses of PHP
PHP performs system functions, i.e. from files on a system it can create, open, read,
write, and close them.
PHP can handle forms, i.e. gather data from files, save data to a file, through email
you can send data, return data to the user.
You add, delete, modify elements within your database through PHP.
Access cookies variables and set cookies.
Using PHP, you can restrict users to access some pages of your website.
It can encrypt data.
5. Characteristics of PHP
Five important characteristics make PHP's practical nature possible −
Simplicity
Efficiency
Security
Flexibility
Familiarity
22
MYSQL:
MySQL is free and open-source software under the terms of the GNU General Public
License, and is also available under a variety of proprietary licenses. MySQL was owned
and sponsored by the Swedish company MySQL AB, which was bought by Sun
Microsystems (now Oracle Corporation). In 2010, when Oracle acquired Sun,
Widenius forked the open-source MySQL project to create Maria DB.
MySQL is a component of the LAMP web application software stack (and others), which
is an acronym for Linux, Apache, MySQL, Perl/PHP/Python. MySQL is used by many
database-driven web applications, including Drupal, Joomla, phpDB, and WordPress.
MySQL is also used by many popular websites, including Google.
A database is a separate application that stores a collection of data. Each database has one
or more distinct APIs for creating, accessing, managing, searching and replicating the
data it holds.
Other kinds of data stores can also be used, such as files on the file system or large hash
tables in memory but data fetching and writing would not be so fast and easy with those
type of systems.
Nowadays, we use relational database management systems (RDBMS) to store and
manage huge volume of data. This is called relational database because all the data is
stored into different tables and relations are established using primary keys or other keys
known as Foreign Keys.
A Relational DataBase Management System (RDBMS) is a software that −
Enables you to implement a database with tables, columns and indexes.
Guarantees the Referential Integrity between rows of various tables.
Updates the indexes automatically.
Interprets an SQL query and combines information from various tables.
RDBMS Terminology
Before we proceed to explain the MySQL database system, let us revise a few definitions
related to the database.
Database − A database is a collection of tables, with related data.
Table − A table is a matrix with data. A table in a database looks like a simple
spreadsheet.
Column − One column (data element) contains data of one and the same kind, for
example the column postcode.
23
Row − A row (= tuple, entry or record) is a group of related data, for example the data
of one subscription.
Redundancy − Storing data twice, redundantly to make the system faster.
Primary Key − A primary key is unique. A key value can not occur twice in one
table. With a key, you can only find one row.
Foreign Key − A foreign key is the linking pin between two tables.
Compound Key − A compound key (composite key) is a key that consists of multiple
columns, because one column is not sufficiently unique.
Index − An index in a database resembles an index at the back of a book.
Referential Integrity − Referential Integrity makes sure that a foreign key value
always points to an existing row.
MySQL Database
MySQL is a fast, easy-to-use RDBMS being used for many small and big businesses.
MySQL is developed, marketed and supported by MySQL AB, which is a Swedish
company. MySQL is becoming so popular because of many good reasons −
MySQL is released under an open-source license. So you have nothing to pay to use
it.
MySQL is a very powerful program in its own right. It handles a large subset of the
functionality of the most expensive and powerful database packages.
MySQL uses a standard form of the well-known SQL data language.
MySQL works on many operating systems and with many languages including PHP,
PERL, C, C++, JAVA, etc.
MySQL works very quickly and works well even with large data sets.
MySQL is very friendly to PHP, the most appreciated language for web development.
MySQL supports large databases, up to 50 million rows or more in a table. The default
file size limit for a table is 4GB, but you can increase this (if your operating system
can handle it) to a theoretical limit of 8 million terabytes (TB).
MySQL is customizable. The open-source GPL license allows programmers to
modify the MySQL software to fit their own specific environments.
Apache
The Apache HTTP Server is a web server software notable for playing a key role in the
initial growth of the World Wide Web. In 2009 it became the first web server software to
24
surpass the 100 million web site milestone. Apache is developed and maintained by an open
community of developers under the auspices of the Apache Software Foundation. Since
April 1996 Apache has been the most popular HTTP server software in use. As of November
2010 Apache served over 59.36% of all websites and over 66.56% of the first one million
busiest websites.
XAMPP
XAMPP is a small and light Apache distribution containing the most common web
development technologies in a single package. Its contents, small size, and portability make
it the ideal tool for students developing and testing applications in PHP and MySQL.
XAMPP is available as a free download in two specific packages: full and lite. While the
full package download provides a wide array of development tools, XAMPP Lite contains
the necessary technologies that meet the Ontario Skills Competition standards. The light
version is a small package containing Apache HTTP Server, PHP, MySQL, phpMyAdmin,
Openssl, and SQLite.
25
Fig - XAMPP splash screen.
In order to stop all Apache processes we do not close the running terminal application, but
instead run another batch file in the xampp lite directory called apache_stop.bat.
26
Fig - PhpMyAdmin start page
The first step with phpMyAdmin running is creating a new database. We create a new
database by directly executing SQL statements as shown below. The successful execution
of the sql query creates a database ‘student’ with two tables in it. The tables are admin_login
and student_information. We also inserted values in the admin table. The screenshot below
shows the successful execution of the query thus creation of a database named student.
27
Fig - Creation of database in mysql using PhpMyadmin
Thus we have learned to create a database in MYSQL by executing sql statements. After
creating the database and tables we are now ready to use them in our website “Student
Information System”.
<?php
session_start();
include("../dbConfig.php");
//error_reporting(0);
$username = $_SESSION['username'];
if(isset($_GET['activity']))
{
$activity=$_GET['activity'];
if($_REQUEST['activity'] == 'logout'){
$username = null;
$username ="";
unset($username);
28
$_SESSION['username'] = null;
$_SESSION['username'] ="";
unset($_SESSION['username']);
session_destroy();
}
if(empty($username)){
header("location: ../home.php?activity=adminLogin");
}
}
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div class="container">
<div class="header">
<?php include("../header.php"); ?>
</div>
<div class="userContainer">
<div class="title">Admin Page</div>
<div class="logout"><a
href="adminPage.php?activity=logout">Logout</a></div>
<div class="userAction">
<ul>
29
<li><a
href="adminPage.php?activity=adminDashboard">Dashboard</a></li>
<li><a
href="adminPage.php?activity=viewProfile">View Profile</a></li>
<li><a
href="adminPage.php?activity=editProfile">Edit Profile</a></li>
<li><a
href="adminPage.php?activity=viewUsers">View Users</a></li>
<div class="dropdown">
<button class="dropbtn">Branches</button>
<div class="dropdown-content">
<ahref="adminPage.php?activity=faculties_entry"> Branch
Entry</a>
<ahref="adminPage.php?activity=view_faculties"> View
Branches</a>
</div>
</div>
<div class="dropdown">
<button class="dropbtn">Subjects</button>
<div class="dropdown-content">
<a href="adminPage.php?activity=subject_entry"> Subject Entry</a>
<a href="adminPage.php?activity=view_subjects"> View
Subjects</a>
</div>
</div>
<div class="dropdown">
<button class="dropbtn">Marks</button>
<div class="dropdown-content">
<a href="adminPage.php?activity=score_entry"> Marks Entry</a>
<a href="adminPage.php?activity=view_scores"> View Marks</a>
</div>
</div>
30
<li><a href="adminPage.php?activity=test_score"
title="Shift+Ctrl+T"> Test Score</a></li>
</ul>
</div>
<div class="userContent">
<?php
//ACTIVITY PERFORM...
if(isset($_GET['activity']))
{
$activity=$_GET['activity'];
$activity = $_REQUEST['activity'];
switch ($activity)
{
case 'adminDashboard':
include("adminDashboard.php");
break;
case 'viewProfile':
include("viewProfile.php");
break;
case 'editProfile':
include("editProfile.php");
break;
case 'viewUsers':
include("viewUsers.php");
break;
case 'deleteMember':
31
include("viewUsers.php");
break;
case 'studentDetails':
include("studentDetails.php");
break;
case 'viewUserProfile':
include("viewUserProfile.php");
break;
case 'subject_entry':
include("Subject_Entry.php");
break;
case 'faculties_entry':
include("Faculties_Entry.php");
break;
case 'score_entry':
include("Score_Entry.php");
break;
case 'test_score':
include("test_Scores .php");
break;
case 'view_subjects':
include("View_Subjects.php");
break;
case 'view_scores':
32
include("View_Scores.php");
break;
case 'view_faculties':
include("View_Faculties.php");
break;
default:
include("adminDashboard.php");
break;
}
}
?>
if($query1){
//$errorMsg = "Updation is successfully done.";
header("location: adminPage.php?activity=viewProfile");
}
//include("editProfile.php");
}
?>
<?php
if(isset($errorMsg)){
?>
<div class="errorMsg"><?php echo $errorMsg; ?></div>
<?php
}
?>
</div>
</div>
</div>
</body>
</html>
33
5.3 CODE SNIPPETS
Index.php
<?php
header("location: controller/home.php?activity=dashboard");
?>
Home.php
<?php
session_start();
include("dbConfig.php");
error_reporting(0);
?>
<!DOCTYPE html>
<html>
<head>
<title>Online Student Information System</title>
<link rel="stylesheet" type="text/css" href="../css/home.css">
<link rel="stylesheet" type="text/css" href="../css/title.css">
</head>
<body>
<div class="container">
<div class="header">
<?php include("header.php"); ?>
</div>
<div class="navigation">
<?php include("navigation.php"); ?>
</div>
<div class="content">
<?php
//ACTIVITY PERFORM...
34
$activity = $_REQUEST['activity'];
switch ($activity) {
case 'search':
include("search.php");
break;
case 'adminLogin':
include("adminLogin.php ");
break;
case 'studentLogin':
include("studentLogin.php");
break;
case 'facultyLogin':
include("facultyLogin.php");
break;
case 'register':
include("register.php");
break;
case 'dashboard':
include("dashboard.php");
break;
case 'forgetpwd':
include("forgetpwd.php");
break;
default:
# code...
35
break;
}
?>
<?php
//ADMIN LOGIN...
if(isset($_REQUEST['adminLoginBtn'])){
$username= $_REQUEST['username'];
$pwd= $_REQUEST['pwd'];
$query = mysql_query("SELECT
id,username,pwd FROM admin WHERE username = '$username'");
$result = mysql_fetch_assoc($query);
$_SESSION['username'] =
$result['username'];
$_SESSION['uid'] =
$result['id'];
header("location:
admin/adminPage.php?activity=adminDashboard");
}
else{
include("adminLogin.php");
$errorMsg = "Invalid
User....";
}
36
}
else{
include("adminLogin.php");
$errorMsg = "Enter in empty field...";
}
?>
<?php
//STUDENT LOGIN...
if(isset($_REQUEST['studentLoginBtn'])){
$username= $_REQUEST['username'];
$pwd= $_REQUEST['pwd'];
$query = mysql_query("SELECT
id,username,pwd FROM members WHERE position = 'Student' && username = '$username'
&& pwd = '$pwd'");
$result = mysql_fetch_assoc($query);
if($username == $result['username']
&& $pwd == $result['pwd']){
$_SESSION['username'] =
$username;
$_SESSION['uid'] =
$result['id'];
header("location:
members/userPage.php?activity=viewProfile");
37
}
else{
include("studentLogin.php");
$errorMsg = "Invalid
User....";
}
}
else{
include("studentLogin.php");
$errorMsg = "Enter in empty field...";
}
?>
<?php
//FACULTY LOGIN...
if(isset($_REQUEST['facultyLoginBtn'])){
$username= $_REQUEST['username'];
$pwd= $_REQUEST['pwd'];
$query = mysql_query("SELECT
id,username,pwd FROM members WHERE position = 'Faculty' && username = '$username'
&& pwd = '$pwd'");
$result = mysql_fetch_assoc($query);
if($username == $result['username']
&& $pwd == $result['pwd']){
38
$_SESSION['username'] =
$username;
$_SESSION['uid'] =
$result['id'];
header("location:
members/userPage.php?activity=viewProfile");
}
else{
include("facultyLogin.php");
$errorMsg = "Invalid
User....";
}
}
else{
include("facultyLogin.php");
$errorMsg = "Enter in empty field...";
}
?>
<?php
//ADD MEMBER...
if(isset($_REQUEST['addMemberBtn'])){
$memberId = $_REQUEST['memberId'];
$firstName = $_REQUEST['firstName'];
39
$lastName = $_REQUEST['lastName'];
$username = $_REQUEST['username'];
$pwd = $_REQUEST['pwd'];
$fathername = $_REQUEST['fathername'];
$branch = $_REQUEST['branch'];
$year = $_REQUEST['year'];
$sex = $_REQUEST['sex'];
$dob = $_REQUEST['dob'];
$address = $_REQUEST['address'];
$position = $_REQUEST['position'];
$mobile = $_REQUEST['mobile'];
$email = $_REQUEST['email'];
$fnm = $_FILES['fnm'];
$actualFileName = $fnm['name'];
$tmpName = $fnm['tmp_name'];
//$type = $fnm['type'];
//$size = $fnm['size'];
//$error = $fnm['error'];
$targetLocation = "members/pic/$actualFileName";
if($usernameExists['username'] != $username){
$mobileExists = mysql_fetch_assoc(mysql_query("SELECT
mobile FROM members WHERE mobile = '$mobile'"));
40
if($mobileExists['mobile'] != $mobile){
$emailExists = mysql_fetch_assoc(mysql_query("SELECT
email FROM members WHERE email = '$email'"));
if($emailExists['email'] != $email){
move_uploaded_file($tmpName, $targetLocation);
if(!empty($res)){
$errorMsg = "Member Sucessfully Added.";
}
$query = "Select id From members";
$returnD = mysql_query($query);
$result = mysql_fetch_assoc($returnD);
$maxRows = $result['id'];
}
else{
$errorMsg = "Email ID already exists. ";
}
}
else{
$errorMsg = "Mobile number already exists. ";
}
}
else{
41
$errorMsg = "Username already exists.Choose another.";
}
}
else{
$errorMsg = "Please! Enter in Empty Field.";
}
include("register.php");
}
?>
<?php
//FORGET PASSWORD...
if(isset($_REQUEST['pwdSaveBtn'])){
$request = $_REQUEST['request'];
if($request == "admin"){
$regEmail = $_REQUEST['regEmail'];
if($regEmail == $result['email']){
$newP = $_REQUEST['newP'];
$confirmP =
$_REQUEST['confirmP'];
if($newP == $confirmP){
42
$query =
mysql_query("UPDATE admin SET pwd = '$newP' WHERE email = '$regEmail'");
if(!empty($query)){
header("location:
home.php?activity=adminLogin");
//$errorMsg =
"Password successfully changed.";
}
}
else{
//header("location:
index.php?activity=forgetpwd");
$errorMsg = "Password must
be same.";
}
}
else{
//header("location:
index.php?activity=forgetpwd");
$errorMsg = "Please ! Enter
authorised's user email.";
}
}
else if($request == "user"){
$regEmail = $_REQUEST['regEmail'];
$query = mysql_query("SELECT
email,position FROM members WHERE email = '$regEmail'");
$result = mysql_fetch_assoc($query);
if($regEmail == $result['email']){
$newP = $_REQUEST['newP'];
43
$confirmP =
$_REQUEST['confirmP'];
if($newP == $confirmP){
$query =
mysql_query("UPDATE members SET pwd = '$newP' WHERE email = '$regEmail'");
if(!empty($query)){
if($result['position']
== 'Student')
header("location: home.php?activity=studentLogin");
else
if($result['position'] == 'Faculty')
header("location: home.php?activity=facultyLogin");
//$errorMsg =
"Password successfully changed.";
}
}
else{
//header("location:
index.php?activity=forgetpwd");
$errorMsg = "Password must
be same.";
}
}
else{
//header("location:
index.php?activity=forgetpwd");
$errorMsg = "Please ! Enter
authorised's user email.";
}
44
}
include("forgetpwd.php");
}
?>
<?php
if(isset($errorMsg)){
?>
<div class="errorMsg"><?php echo $errorMsg; ?></div>
<?php
}
?>
</div>
<div class="footer">
<?php include("footer.php"); ?>
</div>
</div>
</body>
</html>
DbConfig.php
<?php
$serverName = "localhost";
$userName = "root";
$password = "";
$databaseName = "studentinfrm";
<?php
?>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="../css/inputs.css">
<link rel="stylesheet" type="text/css" href="../css/form.css">
<link rel="stylesheet" type="text/css" href="../css/title.css">
</head>
<body>
<div class="title">Admin/Student/Faculty Login</div>
<div class="loginContainer">
<form class="loginForm">
<div class="formInput">
<input type="text" name="username" required autofocus
placeholder="Username" >
</div>
<div class="formInput">
<input type="password" name="pwd" required autofocus
placeholder="password" >
</div>
<input type="submit" name="adminLoginBtn" value="Log
In" class="btnLogin">
<br >
<a class="forgetPwd"
href="home.php?activity=forgetpwd">Forget Password?</a>
46
</form>
</div>
</body>
</html>
<?php
include("dbConfig.php");
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="../css/title.css">
<link rel="stylesheet" type="text/css" href="../css/register.css">
</head>
<body>
<div class="title">Register</div>
<div class="addMemberForm">
<form action="home.php" method="POST" enctype="multipart/form-
data" class="addform">
47
<div class="inputs">
<input type="text" name="memberId" required autofocus
placeholder="ID">
</div>
<div class="inputs">
<input type="text" name="firstName" required autofocus
placeholder="First-Name" pattern="[A-Za-z]{1,}" title="First name must contain atleast 3
letters.">
</div>
<div class="inputs">
<input type="text" name="lastName" required autofocus
placeholder="Last-Name" pattern="[A-Za-z]{3,}" title="Last name must contain atleast 3
letters.">
</div>
<div class="inputs">
<input type="text" name="username" required autofocus
placeholder="Username" pattern="[A-Za-z0-9]{4,}" title="Username must be greater than
5 characters.">
</div>
<div class="inputs">
<input type="password" name="pwd" required autofocus
placeholder="Password">
</div>
<div class="inputs">
<div class="addMemberFormList">
<select name="position" required autofocus>
<option value="">Select</option>
<option value="Student">Student</option>
<option value="Faculty">Faculty</option>
</select>
48
</div>
</div>
<div class="inputs">
<input type="text" name="fathername" required autofocus
placeholder="Father-Name" pattern="[A-Za-z]{3,}" title="Father name must contain atleast
3 letters.">
</div>
<div class="inputs">
<div class="addMemberFormList">
<select name="branch" required autofocus>
<option value="">Branch</option>
<option value="CSE">CSE</option>
<option value="ECE">ECE</option>
<option value="EEE">EEE</option>
<option value="MECH">MECH</option>
</select>
</div>
</div>
<div class="inputs">
<div class="addMemberFormList">
<select name="year" required autofocus>
<option value="">Year</option>
<option value="FIRST">FIRST</option>
<option
value="SECOND">SECOND</option>
<option value="THIRD">THIRD</option>
<option
value="FOURTH">FOURTH</option>
</select>
</div>
</div>
<div class="inputs">
<div class="addMemberFormList">
<select name="sex" required autofocus>
<option value="gender">Gender</option>
49
<option value="MALE">MALE</option>
<option
value="FEMALE">FEMALE</option>
</select>
</div>
</div>
<div class="inputs">
<input type="text" name="dob" required autofocus
placeholder="bday">
</div>
<div class="inputs">
<input type="text" name="address" required autofocus
placeholder="address" pattern="[A-Za-z0-9]{0,}" title="Username must be any
characters,symbols.">
</div>
<div class="inputs">
<input type="text" name="mobile" required autofocus
placeholder="Mobile" pattern="[0-9]{10}">
</div>
<div class="inputs">
<input type="email" name="email" required autofocus
placeholder="Email" title="example.example1@gmail.com">
</div>
<div class="inputs">
<label>Upload Photo : </label><input type="file"
name="fnm" value="Upload Photo">
</div>
Marks.php
<?php
$msg="";
$opr="";
if(isset($_GET['opr']))
$opr=$_GET['opr'];
if(isset($_GET['rs_id']))
$id=$_GET['rs_id'];
if($opr=="del")
{
$del_sql=mysql_query("DELETE FROM stu_score_tbl WHERE stu_id=$id");
if($del_sql)
$msg="1 Record Deleted... !";
else
$msg="Could not Delete :".mysql_error();
}
?>
<?php
?>
51
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="css/style_view.css" />
<title>Untitled Document</title>
</head>
<body>
<div id="style_div" >
<div class="title">External Marks for all Students</div>
<form method="post">
<table width="755">
<tr>
<td><a href="?activity=score_entry"><input type="button" title="Add new Scores"
name="butAdd" value="Add New" id="button-search" /></a></td>
<td><input type="text" name="txtsearch" title="Enter name for search "
class="search" required autofocus placeholder="Search" autocomplete="off"/></td>
<td style="float:right"><input type="submit" name="btnsearch" value="Search"
id="button-search" title="Search product" /></td>
</tr>
</table>
</form>
</div>
<br />
<div id="content-input">
<table border="1" width="1300px" align="center" cellpadding="3" class="mytable"
cellspacing="0">
<tr>
<th rowspan="2">No</th>
<th rowspan="2">Students Name </th>
<th rowspan="2">Date of Birth </th>
<th colspan="3">SPM</th>
<th colspan="3">DWDM</th>
<th colspan="3">IRS</th>
52
<th colspan="3">LP</th>
<th colspan="3">DP</th>
<th colspan="3">CC</th>
<th>notes</th>
<th colspan="2" rowspan="2" >Operation</th>
</tr>
<tr>
<th>Mid</th>
<th>Fin</th>
<th> Total</th>
<th>Mid</th>
<th>Fin</th>
<th> Total</th>
<th>Mid</th>
<th>Fin</th>
<th> Total</th>
<th>Mid</th>
<th>Fin</th>
<th> Total</th>
<th>Mid</th>
<th>Fin</th>
<th> Total</th>
<th>Mid</th>
<th>Fin</th>
<th> Total</th>
</tr>
<?php
$key="";
53
if(isset($_POST['searchtxt']))
$key=$_POST['searchtxt'];
if($key !="")
$sql_sel=mysql_query("SElECT * FROM sub_tbl WHERE f_name like '%$key%'
");
else
$sql_sel=mysql_query("SELECT * FROM stu_score_tbl GROUP BY stu_id");
$i=0;
while($row=mysql_fetch_array($sql_sel)){
$num=$row['stu_id'];
$i++;
$color=($i%2==0)?"lightblue":"white";
54
$sql_net=mysql_query("SELECT * FROM stu_score_tbl WHERE
stu_id=".$row['stu_id']." AND sub_id=4");
$fec_netw=mysql_fetch_array($sql_net);
<?php
}
?>
</table>
</div>
</body>
</html>
5.4 TABLES
1. Admin Table
56
Password – Stores password of administration
firstName – Stores first name of administration
lastName – Stores last name of administration
mobile – Stores the mobile number for administration
email – stores email id of administration.
2. Members Table – both Faculty as well as Student
Sno Name Datatype
1 Id Int(3)
2 firstName Varchar(20)
3 lastName Varchar(20)
4 Username Varchar(20)
5 Password Varchar(50)
6 Fathername Varchar(20)
7 Branch Varchar(20)
8 Year Varchar(20)
9 Sex Varchar(20)
10 Dob Int(30)
11 Address Varchar(20)
12 Position Varchar(10)
13 Mobile int(10)
14 Email Varchar(50)
15 Pic Varchar(50)
Id – Stores id of members
firstName - Stores the first name in members
lastName - Stores the last name of members
username - Stores the user name of members
pwd - Stores the password of members
fathername - Stores the father name of members
branch – Stores the branch of members
year - Stores the btech or degree year of members
sex - Stores male/female of members
dob - Stores date of birth of members
address - Stores the address of members
57
position - Stores position where faculty or students uses in members
mobile - Stores the mobile number of members
email - Stores mail id of members
pic - Stores image in members
3. Branch table:
Sno Name Datatypes
1 Branch_id Int(10)
2 Branch_name Varchar(10)
3 Note Varchar(20)
4. Subject table:
Sno Name Datatypes
1 Sub_id Int(10)
2 Branch_id Int(10)
3 Teacher_id Int(3)
4 Semester Int(2)
5 Sub_name Varchar(20)
6 Note Varchar(20)
5. Marks Table:
58
2 Stu_id Int(3)
3 Branch_id Int(10)
4 Sub_id Int(10)
5 midterm Float(5)
6 Final Float(5)
7 Note Varchar(10)
59
CHAPTER -6
6. TESTING
6.1 INTRODUCTION TO TESTING
Testing is the process where the test data is prepared and is used for testing the modules
individually and later the validation given for the fields. The purpose of testing is to
discover errors. Testing is the process of trying to discover every conceivable fault
or weakness in a work product. It provides a way to check the functionality of
components, sub-assemblies, assemblies and/or a finished product.
It is the process of exercising software with the intent of ensuring that the software system
meets its requirements and user expectations and does not fail in an unacceptable manner.
There are various types of test. Each test type addresses a specific testing requirement.
Testing Objectives
The main objective of testing is to uncover a host of errors, systematically and
with minimum effort and time. Stating formally, we can say,
- Testing is a process of executing a program with the intent of finding an error.
- A successful test is one that uncovers a yet undiscovered error.
- A good test case is one that has a high probability of finding an error if it exists.
- The tests are inadequate to detect possibly present errors.
TESTING STRATEGIES
A strategy for software testing integrates software test case design methods into
well-planned series of steps that result in the successful construction of software.
Black Box Testing
Black Box Testing method considers a module as a single unit and checks the unit at
interface and communication with other modules rather getting into details at the
statement level. Here the module will be treated as a black box that will take some input
and generate output. Output for a given set of input combinations is forwarded to other
modules.
White Box Testing
White Box Testing mainly focuses on the internal performance of the product. Here a part
will be taken at a time and tested thoroughly at a statement level to find the maximum
possible errors.
60
Grey Box Testing
Grey Box Testing is the process in which the combination of black box and white box
tonics are used.
61
Faculty or The Faculty and The registered Successful
1
Student Student need to details of
registration register to login Faculty and
details into their Students are
account if already stored and
registered should retrieved from
be able to login database and
the non-
registered
once need to
register
Student Entering details of Enter correct Successful
2
registration student and its details and
unsucessful matched registered
registration failed details should
not match with
same id
62
4 On click of Logout Display the exit and Successful
button Go back to login page
63
CHAPTER 7
7. SCREEN SHOTS
7.1 WELCOME SCREEN
64
7.4 SCREEN 3: This is admin page in that he/she can check total no of students and
no of faculty who are registered.
7.5 SCREEN 4: This is admin page he can view or delete the student details.
65
7.6 SCREEN 5: Admin can register marks for students.
7.7 SCREEN 6: This admin page he can check the student marks and update/delete.
66
7.8 SCREEN 7:This Faculty Page and they can view their profile
7.9 SCREEN 8: Faculty can add marks for students for their respective subject.
67
7.10 SCREEN 9: Faculty can also view their overall student marks
7.11 SCREEN 10: This is Student page, student can check his profile whenever he/she
require. And can update their details.
68
7.12 SCREEN 11: This is admin page, in that we are having total no of students, if
we click on name of student we will be getting the total information of that
student.
69
7.13 SCREEN 12: This is the student marks list.
70
CONCLUSIONS
The application provide appropriate information to users according to the choosen service. The
project is designed keeping in view the day to day problem faced by a college. Deployment of our
application will certainly help the college to reduce unnecessary wastage of time in personally
going to each department for some information. Awareness and right information about any
college is essential for both the development of student as well as faculty. Thus the information is
used for user friendly approach.
71
FUTURE ENHANCEMENTS
It may help collecting perfect management in details. In a very short time, the collection will be
obvious, simple and sensible. It will help a person to know the management of passed year
perfectly and vividly. It also helps in current all works relative to College. It will be also reduced
the cost of collecting the management & collection procedure will go on smoothly. The present
project has been developed to meet the aspirations indicated in the modern age. An attempt has
been made through this project to do all work ease & fast. It provide current add, Update,
MoveNext, MovePrevious, MoveLast, Find & Delete all facilities to accomplish the desired
objectives. The facility Include in this project and the suggested activities have been organized to
impart knowledge & develop skill & attitude in the College official works.
In future the students can also be able to download or upload notes. The whole project will be
made available as an android app for more ease of use and mobility.
Exciting new enhancements to the database include adding password protection to the system.
Teachers will be given individual passwords that will allow them access to certain parts of the
database, thus allowing them to view the records of students in their classes, and let them enter the
grades of the students directly into the database. Students will also be given individual passwords
that will allow them to check their academic standing and allow them to register for classes through
the database system. This will replace the paper and pencil registration method currently in place.
Furthermore, the queries are already made for future reports that will identify all of the students
registered for a certain class in all of the academic departments. Additional pages will be added
to the switchboard to allow easy access of this information to the end users.
72
BIBLIOGRAPHY
Books-
Dekkers, R. (2014), Applied Systems Theory, Springer
Kendall and Kendall . (2011). SYSTEMS ANALYSIS and DESIGN. (8th Ed.). Pearson
Education, Inc
Klir, G.(1991). Facets of Systems Science (IFSR International Series on Systems
Science and Engineering). Springer
WWW.Google.com
www.wikipedia.com
www.w3schools.com
Head first PHP and MYSQL by Beighley and Michael Morrison( D’Reilly ).
Journals/Periodicals-
73
6. N. M. Z. Hashim and S. N. K. S. Mohamed (2013), Development of Student
Information System
9. SLACK, Frances and ROWLEY, J. Kiosk 21: a new role for information kiosk?
11. Yee Loong and Bruce Lui(2012), SFU SIS Enrollment System
74
REFERENCES
[1]. Isbudeen Noor Mohamed, Ahmad Tasnim Siddiqui, Syed Ajaz, S. Mohamed Idhris, “Student
Information Report System with SMS (SIRS)”, in proc. 2016 International Conference on
Computer Communication and Informatics (ICCCI -2016), Jan. 07 – 09, 2016, Coimbatore,
INDIA.
[3]. Liangqiu MENG, “College Student Management System Design Using Computer Aided
System” in proc. 2015 International Conference on Intelligent Transportation, Big Data & Smart
City, pp.212-215.
[4]. Almahdi Alshareef, 1Ahmed Alkilany “Toward A Student Information System For Sebha
University, Libya”, Fifth international conference on Innovative Computing Technology,
2015,pp.34-39.
[5]. Lalit Mohan Joshi, “A Research Paper on College Management System”, International Journal
of Computer Applications (0975-8887) Volume 122 – No.11, July 2015, pp.32-44.
75