Srms Project Report 2
Srms Project Report 2
Srms Project Report 2
BCA506P
Title of the Project
By
Indushree M S
Enrollment No:
R2015815
A Project Report
On
“Student Result Management System”
Submitted to the Bengaluru North University, Kolar
in partial fulfillment of the requirements
for the award of the degree
Bachelor of Computer Applications
year of Submission
2023
Submitted by
Indushree M S
Certificate of Completion
This is to certify that the project work entitled on Student Result Management
System is a bonafide work carried out by Mr./Miss./Mrs. Indushree M S bearing
Reg.No. R2015815 in partial fulfillment for the award of Bachelor of Computer
Applications of Bangalore North University, during the year 2022-2023. The
project report has been approved as it satisfies the academic requirements in respect
of Project Work prescribed for the said Degree.
DECLARATION
I Indushree MS, bearing University Register number R2015815, student of 6th semester BCA,
HKBK Degree College, Bangalore, hereby declare that the project work entitled Student Result
Management System submitted to the Bangalore North University during the academic year 2022-
2023, is a record of an original work done by me under the guidance of Dr.Safira Begum,
Department of Computer Applications, HKBK Degree College, Bangalore.
This project work is submitted in partial fulfillment of the requirements for the award of the degree
of Bachelor of Computer Application’s. The matter embodied in this project is genuine work done
by me and has not been submitted whether to this University or to any other University / Institute
for the fulfillment of the requirements of any course of study.
ACKNOWLEDGEMENT
I take this opportunity to express my deep gratitude to our Founder chairman Mr. C M Ibrahim
Sahib
We take this opportunity to express our sincere thanks and wholehearted gratitude to our beloved
Principal Dr. Ashok MV
We also thank this opportunity to express our gratitude to our respected HOD, Prof. Nasrulla
Khan K for his constant cooperation for developing this project.
The satisfaction and successful completion of any task would be incomplete without the mention
of people whose ceaseless cooperation made it possible, whose constant guidance and
encouragement crown all efforts with success.
I am grateful to my project guide Dr. Safira Begum for the guidance, inspiration and constructive
suggestions that helped me in the preparation of this project.
I would also like to extend our thanks to all the concerned staff members of department of
Computer science for their kind cooperation.
I would like to thank our parents and our friends for their encouragement in completing our project
in a successful manner.
INDEX
1. INTRODUCTION 1-4
1.3 ADVANTAGES 2
1.4 GOAL 3
4.1 INTRODUCTION 9
7.6 MySQL 19
7.7 BOOTSTRAP 21
9. CODING 36-59
13. BIBLIOGRAPHY 72
1. INTRODUCTION
The Student Result Management System is a web-based application designed to automate the
administration of semester results by tracking students grades. The system is intended to
replace manual work and optimize the result preparation preocess, providing an easy-to-
understand explaination of exam for both administrators and students. The concept to generate
the student result records and to add their records and update it. Here user can add Students
details safely and it's not time consuming and this system makes easy to store records of each
and every Student. It covers the full details of the students studies and includes the student's
register number, marks, subjects and rating.
Student Result declaration and Management are amongst the most important activities within
university or any educational instituions,since all other activities depend on it. Hence
implementing an information system can be declared a significance result.
1.2 OBJECTIVES
The main objective of the Student Result Management System is to manage the
details of Result, Progress, Student, Course and Exam.
• Objective of the Student Result Management System is to prepare command line
interface(CLI) software at college level to get the consolidated results/progress of the
students to facilitate the ease of administration in the college.
• The software is intended to allow the user to interact with the computer by entering the
roll number of the student and the computer displays the consolidated result of the
student.
• The system is intended for the students and the privileges that provided to students are
to execute his /her results by providing username and password for secure login and in
case of new student the registration is available.
1.3 ADVANTAGES
• With student result management system teachers can create result analysis reports.
• Increases the efficiency of the teachers and records marks and result on a single database.
• The students view results of tests and exams online and can search test and exam scores with
valid roll number/ID.
• The students download report of results in PDF format and View semester results for all
subjects from anywhere using smart devices.
1.4 GOAL
The student result management system (SRMS) is primarily focuses on delivering results to
students and instructors. It is easy for students to retrieve their results through the college
website.
and to manage all the information about result, activity, exam. The project is totally built at
administrative end and thus only the administrator is guaranteed the access.
1.5 MODULES
Student Result Management System project has two modules i.e. Admin and Student.
Admin Module
1. Admin dashboard.
2. Admin can add /update/Class and Subjects.
3. Admin can add/update/Activate/Inactive Subject combination with class.
4. Admin can register new student and also edit info of the student.
5. Admin can declare/edit result of a student.
6. Admin can add/delete the notice and also change own password
In this project user is those who have a locker in the bank. With the help of a locker,
the number users can see the details of lockers.
Student module
1.Student can search their result using valid roll ID.
2.Student can also view the notices.
2. EXISTING SYSTEM
Existing system refers to the system that is being followed till now the existing system requires
more computational time, more manual calculations. All the wanted information need to be
provided by the administration.
If the students want to know the results of the particular subject so they should wait for long
time because work done manually. The information about their courses, results and other
information accessing is not possible.
PROPOSED SYSTEM
we have successfully proposed the "STUDENT RESULT MANAGEMENT SYSTEM" for
replacing the manual work of the administration. By this application student can easily access
the modules like student results and other information required to student.
This application is flexible and can easily access by the student. So the time taken for getting
the information will be reduces.
4. REQUIREMENT ANALYSIS
4.1 INTRODUCTION
.2 FUNCTIONAL REQUIREMENT
A Functional Requirement (FR) is a description of the service that the software must offer. It
describes a software system or its component. A function is nothing but inputs to the software
system, its behavior, and outputs. It can be a calculation, data manipulation, business process,
user interaction, or any other specific functionality which defines what function a system is
likely to perform. Functional Requirements in Software Engineering are also called Functional
Specification.
Included are one or more example of all system features and enumeration its user.
The system shall incorporate mechanism to authenticate its user
The system shall verify and validate all users and should notify in case of error detection and
should help the user in error correction.
The system shall allow sharing of files in the system.
The system shall allow quick message to be exchanged without face to face interaction
Non-Functional Requirements are the constraints or the requirements imposed on the system.
They specify the quality attribute of the software. Non-Functional Requirements deal with issues
like scalability, maintainability, performance, portability, security, reliability and many more.
Non-Functional Requirements address vital issues of quality for software systems. If NFRs not
addressed property, the results can include:
5. SYSTEM ANALYSIS
The primary goal of system analysis is to improve the efficiency of the existing system. For
the study of specification of the requirement is very essential. For the development of the new
system, a preliminary survey of the existing system will be conducted. Investigation done
whether the up gradation of the system into an application program could solve the problem
and eradicate the inefficiency of the existing system.
The initial investigation points to the question whether the project is feasible. A feasibility is
conducted to identify the best system that meets the all the requirements. This includes an
identification description, an evaluation of the proposed systems and selection of the best
system for the job the requirements of the system are specified with a set of constraints such
as system objectives and the description of the outputs. It is their duty of the analyst to evaluate
the feasibility of the proposed system to generate the above results. Three key factors are to
be considered during the feasibility study.
An estimate should be made to determine how much effort and care will go into the developing
of the system including the training to given to the user. Usually, people are reluctant to
changes that come in their progression. The computer initialization will certainly affected the
turn over, transfer and employee job status. Hence an additional effort is to be made to train
and educate the users on the new way of the system
The main consideration is to be given to the study of available resources of the organization
where the software is to be implemented. Here the system analyst evaluates the technical
merits of the system giving emphasis on the performance, reliability, maintainability. By
taking the consideration before developing the proposed system, the resources availability of
the organization was studied. The organization was immense computer facilities equipped
with sophisticated machines and the software hence this technically feasible.
Economic feasibility is the most important and frequently used method for evaluating the
effectiveness of the proposed system. It is very essential because the main goal of the proposed
system is to have economically better result along with increased efficiency. Cost benefit
analysis is usually performed for this purpose. It is the comparative study of the cost verses
the benefit and savings that are expected from the proposed system. Since the organization is
well equipped with the required hard ware, the project was found to be economically.
6. SYSTEM REQUEIREMENTS
To be used efficiently, all computer software needs certain hardware components or other
software resources to be present on a computer. These prerequisites are known as (computer)
system requirements and are often used as a guideline as opposed to an absolute rule. Most
software defines two sets of system requirements minimum and recommended. With
increasing demand for higher processing power and resources in newer versions of software,
system requirements tend to increase over time. Industry analysts suggest that this trend plays
a bigger part in driving upgrades to existing computer systems than technological
advancements. A second meaning of the term of system requirements, is a generalization of
this first definition, giving the requirements to be met in the design of a system or sub-system.
Contents
Recommended system requirements
Hardware requirements
Architecture
Processing power
Memory
Secondary storage
Display adapter
Peripherals
RAM 4GB
JAVASCRIPT
JQUERY
BOOTSTRAP
PLATFORM Windows 10
SERVER XAMPP
7. OVERVIEW OF TECHNOLOGY
XAMPP is a light-weight easy to install bundle that will allow you to do local development
on websites in case you don’t have a server hosted already. Also, I am being base here, because
frankly I believe in open source .Also, I like to scratch and build upwards so that in the long
run it helps me to learn better rather than just following manuals and documentation. Since
this post is for absolute beginners, it’s good to start out with XAMPP which does the basic
task of setting out the environment for you so you can start building stuff right away.
Anyway, XAMPP consists of the three main things that you need to know when starting web
development. They are:
Apache Web Server
PHP
MySQL
Apache web server: It is a web server that allows you to host your websites or any other
content for that matter. Apache is available for UNIX as well as Windows. Some of the most
common server side languages supported by Apache are – PHP, Python and Perl it is free of
charge.
PHP: A server side programming language which is used to produce dynamic web pages.
PHP code can be embedded within HTML. It is also free and platform-independent which
means that it can be installed on any operating system.
MySQL: It is the world’s most popular open source database. It is a Relational Database
Management System (RDBMS) - data and its relationships are stored in the form of tables
that can be accessed by the use of MySQL queries in almost any format that the user wants.
HTML is written in the form of HTML elements consisting of tags enclosed in angle brackets
(like <html>). HTML tags most commonly come in pairs like <h1> and </h1>, although
some tags represent empty elements and so are unpaired, for example <img>. The first tag in
a pair is the start tag, and the second tag is the end tag (they are also called opening tags and
closing tags).
The purpose of a web browser is to read HTML documents and compose them into visible or
audible web pages. The Browser does not display HTML tags, but it uses the tags to interpret
the content of the page. HTML describes the structure of a website semantically along with
cues for presentation, mark-up language rather than a programming language.
HTML elements form the building blocks of all websites. HTML allows images and object to
be embedded and can be used to create interactive forms. It provides a means to create
structure document by denoting structural semantics for text such as headings, paragraphs,
lists, links, quotes and other items. It can embed scripts written in languages such as JavaScript
which affect the behavior of HTML web pages.
Cascading style sheets are create a uniform look across several pages of a web site. Instead of
defining the style of each table and each block of text within a HTML pages, commonly used
style need to defined only once in a CSS document. Once the style is defined in cascading
style sheet, it can be used by any page that references the CSS file. Plus, CSS makes it easy
to change styles across several pages at once. For example, a Web developer may want to
increase the default text size from 10px to 12px for fifty pages of a web site. If the all pages
reference the same style sheet, the text size only needs to be changed on the style sheet and
all the pages will show the larger text.
While CSS is great for creating text styles, it is helpful for formatting other aspects of Web
page layout as well. For example, CSS can be used to define the cell padding of images or
other objects. CSS gives Web developers more exact control over how Web pages will look
than HTML does. This is why most Web pages today incorporate cascading style sheets.
7.4 JAVASCRIPT
JavaScript is a programming language that can be included on web pages to make them more
interactive. You can use it to check or modify the contents of forms, change images, open new
windows and write dynamic page content. You can even use it with CSS to make DHTML
(Dynamic Hypertext Markup Language). This allows you to make parts of your web pages
appear or disappear or move around on the page. JavaScript only execute on the page(s) that
are on your browser window at any set time. When the user stops viewing that page, any
scripts that were running on it are immediately stopped. The only exceptions are cookies or
various client side storage APIs, which can be used by many pages to store and pass
information between them, even after the pages have been closed.
Before we go any further, let me say; JavaScript has nothing to do with Java. If we are honest,
JavaScript, originally nicknamed Livewire and then Live Script when it was created by
Netscape, should in fact be called ECMA Script as it was renamed when Netscape passed it
to the ECMA for standardization.
JavaScript is a client side, interpreted, object oriented, high level scripting language, while
Java is a client side, compiled, object oriented high level language.
PHP is a programming language that can do all sorts of things: evaluate form data sent from
a browser, build custom web content to serve the browser, talk to a database, and even send
and receive cookies (little packets of data that your browser uses to remember things, like if
you're logged in to your Web application.
Check out the code in the editor. Looks familiar, doesn't it? That's because a lot of it is regular
old HTML! The PHP code is written in the <?php and ?> .
7.6 MySQL
MySQL (pronounced My S-Q-L) is an open source relational database. It's free, and most web
hosting providers include it in their most basic packages. Both of these facts have helped to
cement its popularity among amateur and professional web designers alike.
If you only have time to learn about one database, MySQL is a safe bet. It's designed to be
easy to use, and its scalability and flexibility make it suitable for practically any application.
Its massive user base is partly thanks to its use in many popular web applications, including
WordPress, Drupal and many other open source CMS tools.
7.7 BOOTSTRAP
Bootstrap is a powerful toolkit - a collection of HTML, CSS, and JavaScript tools for creating
and building web pages and web applications. It is a free and open source project, hosted
After its open source release in 2011, Bootstrap became popular very quickly, and not without
reason. Web designers and web developers like Bootstrap because it is flexible and easy to
work with. Its main advantages are that it is responsive by design, it maintains wide browser
compatibility, it offers consistent design by using re-usable components, and it is very easy to
use and quick to learn. It offers rich extensibility using JavaScript, coming with built-in
support for jQuery plugins and a programmatic JavaScript API. Bootstrap can be used with
any IDE or editor, and any server side technology and language, from ASP.NET to PHP to
Ruby on Rails.
With Bootstrap, web developers can concentrate on the development work, without worrying
about design, and get a good looking website up and running quickly. Conversely, it gives
web designers a solid foundation for creating interesting Bootstrap themes.
8. SYSTEM MODELS
DFD Symbols
In DFD, there are four Symbols
A square-defines a source or destination system data
An arrow identified data flow. It is the pipeline through which the information flow
A circle or a bubble represents a process that transforms
Incoming data flow into outgoing data flows
An open rectangle is a data source, data at rest or a temporary of data
Flow of data
Constructing a DFD
as a destination. Since it is used more than once in the DFD it is marked with a short
diagonal
When a process is exploded into lower level details, they are numbered.
The names of data stores and destinations are written in capital letters. Process and
dataflow names have the first letter of each work capitalized.
A DFD typically shows the minimum contents of data stores. Each data store should contain
all the data elements that flow in and out.
Questionnaires should contain all the data elements that flow in and out. Missing interface
redundancies and like is than accounted for often through interviews.
Features of DFD’s
The DFD shows flow of data, not of control loops and decision are controlled consideration
do not appear on a DFD.
The DFD does not indicate the time factor involved in any process whether the data flows
take place daily, weekly, monthly or yearly.
The sequence of events is not brought out in DFD.
Current Physical
Current Logical
New Logical
New Physical
Current Physical
In current physical DFD process label include the name of people or their positions or the
names of computer system that might provide some of the overall system processing label
includes an identification of the technology used to process the data. Similarly data flows and
data stores are often labels with the names of the actual physical media on which data are
stored as file folders, computer files, business from or computer tapes.
Current Logical
The physical aspects of the system are removed as much as possible so that the current system is
reduced to its essence to the data and the processors that transforms them regardless of actual
physical form.
New Logical
This is exactly like a current logical model if the user were completely happy with
functionality of the current system but had problems with how it was implemented typically
through the new logical model will differ from the current logical model while having
additional functions, absolute function removal and inefficient flaws recognized.
New Physical
The new physical represents only the physical implementation of the new system
Data Flow
A data flow has only one destination of flow between symbols. It may flow in both
directions between a process and a data store to show a read before an update. The later is
usually indicated however by two separate arrows since these happen at a different type.
A join DFD means that exactly the same data comes from any of the two or more different
processes data store or sink to a common location.
A data flow cannot go directly back to the same process it leads. There must be at least
one another process that handles the data flow produce some other data flow returns the
original data into the beginning process.
A data flow to a data store means updates (delete or change)
A data flow from a data means retrieve or use.
A Data Flow has a noun phrase label, more than one data flow noun phase can appear on
a single arrow as long as all of the flows on the same arrow move together as one package.
Standard symbols for DFDs are derived from the electric circuit diagram
analysis and are shown in fig:
Circles: A circle (bubble) shows a process that transforms data inputs into data outputs.
Data Flow: A curved line shows the flow of data into or out of a process or data store.
Data Store: A set of parallel lines shows a place for the collection of data items. A data store
indicates that the data is stored which can be used at a later stage or by the other processes in a
different order. The data store can have an element or group of elements.
The activity diagram highlights the activities. Each activity is represented by rounded rectangle-
narrowed and more oval shaped then the icon. An arrow represents the transaction from one
activity to next. The activity diagram has a starting point represented by filled in circle and show
the overflow of control.
Admin/teacher
Student
8.3 ER Diagram
The Entity-Relationship (ER) model was originally proposed by Peter in 1976 [Chen76] as a
way to unify the network and relational database views. Simply stated the ER model is a
conceptual data model that views the real world as entities and relationships. A basic
component of the model is the Entity-Relationship diagram which is used to visually
represent data objects. Since Chen wrote his paper the model has been extended and today it
is commonly used for database design for the database designer, the utility of the ER model
is:
It maps well to the relational model. The constructs used in the ER model can easily be
transformed into relational tables.
It is simple and easy to understand with a minimum of training. Therefore, the model can be
used by the database designer to communicate the design to the end user.
In addition, the model can be used as a design plan by the database developer to implement
a data model in specific database management software.
ER Notation
There is no standard for representing data objects in ER diagrams. Each modeling
methodology uses its own notation. The original notation used by Chen is widely used in
academics texts and journals but rarely seen in either CASE tools or publications by non-
academics. Today, there are a number of notations used; among the more common are
Bachman, crow's foot, and IDEFIX.
All notational styles represent entities as rectangular boxes and relationships as lines
connecting boxes. Each style uses a special set of symbols to represent the cardinality of a
connection. The notation used in this document is from Martin. The symbols used for the
basic ER constructs are:
Entities are represented by labeled rectangles. The label is the name of the entity. Entity
names should be singular nouns.
Relationships are represented by a solid line connecting two entities. The name of the
relationship is written above the line. Relationship names should be verbs
Attributes, when included, are listed inside the entity rectangle. Attributes which are
identifiers are underlined. Attribute names should be singular nouns.
Cardinality of many is represented by a line ending in a crow's foot. If the crow's foot is
omitted, the cardinality is one.
ER Diagram
9. CODING
index.php
<?php
error_reporting(0);
include('includes/config.php');
?>
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Favicon-->
</head>
<body>
<div class="container">
</ul>
</div>
</div>
</nav>
<!-- Header - set the background image for the header in the line below-->
</header>
<div class="col-lg-6">
<h2>Notice Board</h2>
<ul>
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<?php }} ?>
</ul>
</marquee>
</div>
</div>
</div>
</section>
<!-- Footer-->
</footer>
<script
src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
<script src="js/scripts.js"></script>
</body>
</html>----------Index-------------------------------
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if($_SESSION['alogin']!=''){
$_SESSION['alogin']='';
if(isset($_POST['login']))
$uname=$_POST['username'];
$password=md5($_POST['password']);
$query-> execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
if($query->rowCount() > 0)
$_SESSION['alogin']=$_POST['username'];
} else{
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Admin Login</title>
<script src="js/modernizr/modernizr.min.js"></script>
</head>
<div class="main-wrapper">
<div class="">
<div class="row">
<div class="col-lg-3"></div>
<div class="col-lg-6">
<section class="section">
<div class="col-md-11">
<div class="panel">
<div class="panel-heading">
<h4>Admin Login</h4>
</div>
</div>
<div class="form-group">
<div class="col-sm-10">
</div>
</div>
<div class="form-group">
<div class="col-sm-10">
</div>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
<!-- /. -->
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/jquery-ui/jquery-ui.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/main.js"></script>
<script>
$(function(){
});
</script>
<!-- ========== ADD custom.js FILE BELOW WITH YOUR CHANGES ==========
-->
</body>
</html>----------------------------admin login-----------
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])=="")
header("Location: index.php");
else{
if(isset($_POST['submit']))
$password=md5($_POST['password']);
$newpassword=md5($_POST['newpassword']);
$username=$_SESSION['alogin'];
$query-> execute();
$chngpwd1 = $dbh->prepare($con);
$chngpwd1->execute();
else {
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="js/modernizr/modernizr.min.js"></script>
<script type="text/javascript">
function valid()
if(document.chngpwd.newpassword.value!= document.chngpwd.confirmpassword.value)
document.chngpwd.confirmpassword.focus();
return false;
return true;
</script>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body class="top-navbar-fixed">
<div class="main-wrapper">
<?php include('includes/topbar.php');?>
<div class="content-wrapper">
<div class="content-container">
<?php include('includes/leftbar.php');?>
<div class="main-page">
<div class="container-fluid">
<div class="col-md-6">
</div>
</div>
<div class="col-md-6">
<ul class="breadcrumb">
<li><a href="dashboard.php"><i
class="fa fa-home"></i> Home</a></li>
</ul>
</div>
</div>
</div>
<section class="section">
<div class="container-fluid">
<div class="row">
<div class="panel">
<div class="panel-heading">
<div class="panel-title">
</div>
</div>
<?php if($msg){?>
</div><?php }
else if($error){?>
</div>
<?php } ?>
<div class="panel-body">
<div class="">
</div>
</div>
<div class="">
</div>
</div>
<div class="">
</div>
</div>
<div class="">
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/jquery-ui/jquery-ui.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/prism/prism.js"></script>
<script src="js/main.js"></script>
<!-- ========== ADD custom.js FILE BELOW WITH YOUR CHANGES ==========
-->
</body>
</html>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])=="")
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="js/modernizr/modernizr.min.js"></script>
</head>
<body class="top-navbar-fixed">
<div class="main-wrapper">
<?php include('includes/topbar.php');?>
<div class="content-wrapper">
<div class="content-container">
<?php include('includes/leftbar.php');?>
<div class="main-page">
<div class="container-fluid">
<div class="col-sm-6">
<h2 class="title">Dashboard</h2>
</div>
</div>
</div>
<section class="section">
<div class="container-fluid">
<div class="row">
<?php
$query1->execute();
$results1=$query1->fetchAll(PDO::FETCH_OBJ);
$totalstudents=$query1->rowCount();
?>
</a>
</div>
<?php
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$totalsubjects=$query->rowCount();
?>
</a>
</div>
<?php
$query2->execute();
$results2=$query2->fetchAll(PDO::FETCH_OBJ);
$totalclasses=$query2->rowCount();
?>
</a>
</div>
<?php
$query3->execute();
$results3=$query3->fetchAll(PDO::FETCH_OBJ);
$totalresults=$query3->rowCount();
?>
</a>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/jquery-ui/jquery-ui.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/prism/prism.js"></script>
<script src="js/waypoint/waypoints.min.js"></script>
<script src="js/counterUp/jquery.counterup.min.js"></script>
<script src="js/amcharts/amcharts.js"></script>
<script src="js/amcharts/serial.js"></script>
<script src="js/amcharts/plugins/export/export.min.js"></script>
<script src="js/amcharts/themes/light.js"></script>
<script src="js/toastr/toastr.min.js"></script>
<script src="js/icheck/icheck.min.js"></script>
<script src="js/main.js"></script>
<script src="js/production-chart.js"></script>
<script src="js/traffic-chart.js"></script>
<script src="js/task-list.js"></script>
<script>
$(function(){
$('.counter').counterUp({
delay: 10,
time: 1000
});
// Welcome notification
toastr.options = {
"closeButton": true,
"debug": false,
"newestOnTop": false,
"progressBar": false,
"positionClass": "toast-top-right",
"preventDuplicates": false,
"onclick": null,
"showDuration": "300",
"hideDuration": "1000",
"timeOut": "5000",
"extendedTimeOut": "1000",
"showEasing": "swing",
"hideEasing": "linear",
"showMethod": "fadeIn",
"hideMethod": "fadeOut"
});
</script>
</body>
</html>
<?php } ?>----------------dashboard-------------------------------
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])=="")
header("Location: index.php");
else{
if(isset($_POST['submit']))
$classname=$_POST['classname'];
$classnamenumeric=$_POST['classnamenumeric'];
$section=$_POST['section'];
$query = $dbh->prepare($sql);
$query->bindParam(':classname',$classname,PDO::PARAM_STR);
$query->bindParam(':classnamenumeric',$classnamenumeric,PDO::PARAM_STR);
$query->bindParam(':section',$section,PDO::PARAM_STR);
$query->execute();
$lastInsertId = $dbh->lastInsertId();
if($lastInsertId)
else
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="js/modernizr/modernizr.min.js"></script>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body class="top-navbar-fixed">
<div class="main-wrapper">
<?php include('includes/topbar.php');?>
<div class="content-wrapper">
<div class="content-container">
<?php include('includes/leftbar.php');?>
<div class="main-page">
<div class="container-fluid">
<div class="col-md-6">
</div>
</div>
<div class="col-md-6">
<ul class="breadcrumb">
<li><a href="dashboard.php"><i
class="fa fa-home"></i> Home</a></li>
<li><a href="#">Classes</a></li>
</ul>
</div>
</div>
</div>
<section class="section">
<div class="container-fluid">
<div class="row">
<div class="panel">
<div class="panel-heading">
<div class="panel-title">
</div>
</div>
<?php if($msg){?>
</div><?php }
else if($error){?>
</div>
<?php } ?>
<div class="panel-body">
<form method="post">
<div class="">
</div>
</div>
<div class="">
</div>
</div>
<div class="">
</div>
</div>
<div class="">
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/jquery-ui/jquery-ui.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/prism/prism.js"></script>
<script src="js/main.js"></script>
<!-- ========== ADD custom.js FILE BELOW WITH YOUR CHANGES ==========
-->
</body>
</html>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])=="")
header("Location: index.php");
else{
if(isset($_POST['Update']))
$sid=intval($_GET['subjectid']);
$subjectname=$_POST['subjectname'];
$subjectcode=$_POST['subjectcode'];
$query = $dbh->prepare($sql);
$query->bindParam(':subjectname',$subjectname,PDO::PARAM_STR);
$query->bindParam(':subjectcode',$subjectcode,PDO::PARAM_STR);
$query->bindParam(':sid',$sid,PDO::PARAM_STR);
$query->execute();
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="js/modernizr/modernizr.min.js"></script>
</head>
<body class="top-navbar-fixed">
<div class="main-wrapper">
<?php include('includes/topbar.php');?>
<div class="content-wrapper">
<div class="content-container">
<?php include('includes/leftbar.php');?>
<div class="main-page">
<div class="container-fluid">
<div class="col-md-6">
</div>
</div>
<div class="col-md-6">
<ul class="breadcrumb">
<li> Subjects</li>
</ul>
</div>
</div>
</div>
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<div class="panel">
<div class="panel-heading">
<div class="panel-title">
<h5>Update Subject</h5>
</div>
</div>
<div class="panel-body">
<?php if($msg){?>
</div><?php }
else if($error){?>
</div>
<?php } ?>
<?php
$sid=intval($_GET['subjectid']);
$query = $dbh->prepare($sql);
$query->bindParam(':sid',$sid,PDO::PARAM_STR);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<div class="form-group">
<div class="col-sm-10">
</div>
</div>
<div class="form-group">
<div class="col-sm-10">
</div>
</div>
<?php }} ?>
<div class="form-group">
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/prism/prism.js"></script>
<script src="js/select2/select2.min.js"></script>
<script src="js/main.js"></script>
<script>
$(function($) {
$(".js-states").select2();
$(".js-states-limit").select2({
maximumSelectionLength: 2
});
$(".js-states-hide").select2({
minimumResultsForSearch: Infinity
});
});
</script>
</body>
</html>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])=="")
header("Location: index.php");
else{
if(isset($_POST['Update']))
$sid=intval($_GET['subjectid']);
$subjectname=$_POST['subjectname'];
$subjectcode=$_POST['subjectcode'];
$query = $dbh->prepare($sql);
$query->bindParam(':subjectname',$subjectname,PDO::PARAM_STR);
$query->bindParam(':subjectcode',$subjectcode,PDO::PARAM_STR);
$query->bindParam(':sid',$sid,PDO::PARAM_STR);
$query->execute();
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="js/modernizr/modernizr.min.js"></script>
</head>
<body class="top-navbar-fixed">
<div class="main-wrapper">
<?php include('includes/topbar.php');?>
<div class="content-wrapper">
<div class="content-container">
<?php include('includes/leftbar.php');?>
<div class="main-page">
<div class="container-fluid">
<div class="col-md-6">
</div>
</div>
<div class="col-md-6">
<ul class="breadcrumb">
<li> Subjects</li>
</ul>
</div>
</div>
</div>
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<div class="panel">
<div class="panel-heading">
<div class="panel-title">
<h5>Update Subject</h5>
</div>
</div>
<div class="panel-body">
<?php if($msg){?>
</div><?php }
else if($error){?>
</div>
<?php } ?>
<?php
$sid=intval($_GET['subjectid']);
$query = $dbh->prepare($sql);
$query->bindParam(':sid',$sid,PDO::PARAM_STR);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<div class="form-group">
<div class="col-sm-10">
</div>
</div>
<div class="form-group">
<div class="col-sm-10">
</div>
</div>
<?php }} ?>
<div class="form-group">
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/prism/prism.js"></script>
<script src="js/select2/select2.min.js"></script>
<script src="js/main.js"></script>
<script>
$(function($) {
$(".js-states").select2();
$(".js-states-limit").select2({
maximumSelectionLength: 2
});
$(".js-states-hide").select2({
minimumResultsForSearch: Infinity
});
});
</script>
</body>
</html>
<?php
session_start();
//error_reporting(0);
include('includes/config.php');?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="js/modernizr/modernizr.min.js"></script>
</head>
<body class="">
<div class="main-wrapper">
<div class="row">
<div class="panel-heading">
</div>
</div>
<div class="form-group">
</div>
<div class="form-group">
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<?php }} ?>
</select>
</div>
<div class="">
<div class="clearfix"></div>
</div>
</div>
<div class="col-sm-6">
</div>
</form>
<hr>
</div>
</div>
</div>
</div>
</div>
<!-- /. -->
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/jquery-ui/jquery-ui.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/icheck/icheck.min.js"></script>
<script src="js/main.js"></script>
<script>
$(function(){
$('input.flat-blue-style').iCheck({
checkboxClass: 'icheckbox_flat-blue'
});
});
</script>
<!-- ========== ADD custom.js FILE BELOW WITH YOUR CHANGES ==========
-->
</body>
</html>------------------find result-----------------
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])=="")
header("Location: index.php");
else{
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="js/modernizr/modernizr.min.js"></script>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body class="top-navbar-fixed">
<div class="main-wrapper">
<?php include('includes/topbar.php');?>
<div class="content-wrapper">
<div class="content-container">
<?php include('includes/leftbar.php');?>
<div class="main-page">
<div class="container-fluid">
<div class="col-md-6">
</div>
</div>
<div class="col-md-6">
<ul class="breadcrumb">
<li><a href="dashboard.php"><i
class="fa fa-home"></i> Home</a></li>
<li> Results</li>
<li class="active">Manage
Results</li>
</ul>
</div>
</div>
</div>
<section class="section">
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<div class="panel">
<div class="panel-heading">
<div class="panel-title">
</div>
</div>
<?php if($msg){?>
</div><?php }
else if($error){?>
</div>
<?php } ?>
<thead>
<tr>
<th>#</th>
<th>Student Name</th>
<th>Roll Id</th>
<th>Class</th>
<th>Reg Date</th>
<th>Status</th>
<th>Action</th>
</tr>
</thead>
<tfoot>
<tr>
<th>#</th>
<th>Student Name</th>
<th>Roll Id</th>
<th>Class</th>
<th>Reg Date</th>
<th>Status</th>
<th>Action</th>
</tr>
</tfoot>
<tbody>
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<tr>
<td><?php if($result->Status==1){
echo htmlentities('Active');
else{
echo htmlentities('Blocked');
?></td>
<td>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/prism/prism.js"></script>
<script src="js/DataTables/datatables.min.js"></script>
<script src="js/main.js"></script>
<script>
$(function($) {
$('#example').DataTable();
$('#example2').DataTable( {
"scrollY": "300px",
"scrollCollapse": true,
"paging": false
} );
$('#example3').DataTable();
});
</script>
</body>
</html>
<?php } ?>
-----------------------------manage result--------------------
<?php
error_reporting(0);
include('includes/config.php');
?>
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Favicon-->
</head>
<body>
<div class="container">
</ul>
</div>
</div>
</nav>
<!-- Header - set the background image for the header in the line below-->
<section class="py-5">
<div class="col-lg-10">
<?php
$noticeid=$_GET['nid'];
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<?php }} ?>
</div>
</div>
</div>
</section>
<!-- Footer-->
</footer>
<script
src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
<script src="js/scripts.js"></script>
</body>
</html>-----------------notices-----------------------------
10. SNAPSHOTS
Home page
Admin Login
Admin Dashboard
Manage classes
Manage Students
Declaring Result
Manage Results
11.1 TESTING
Testing is the process of validation of evaluation a software item to detect difference between
given input & expected output. Also to access the feature of a software item. Testing assesses
the quality of the product. Software testing is a process that should be done during the
development process. In other words software testing is a verification & validation process.
System Testing is an important stage in any system development lifecycle. Testing is a process
of executing a program with the intention of finding errors. The importance of software testing
and its implications with respect to software quality cannot be over emphasized. Software
testing is a critical element of software quality assurance and represents the ultimate review
of specification, design and coding. A good test case is one that has a high probability of
finding a yet undiscovered error. Testing is set of activities that can be planned in advance
and conducted systematically Different test conditions should be thoroughly checked and the
bugs detected should be fixed. The testing strategies formed by the user are performed to
prove that the software is free and clear from errors.
Types of Testing:
Unit Testing
Integration Testing
Functional Testing
System Testing
Performance Testing
Acceptance Testing
Unit Testing:
Unit testing is the testing of an individual unit or group of related units. It falls under the class
of white box testing. It is often done by the programmer to test that the unit he/she has
implemented is producing expected output against given input.
Integration Testing:
Integration testing is a testing in which a group of components are combined to produce
output. Also, the interaction between software & hardware is tested in integration testing if
software & hardware components have any relation. It may fall under both white box & black
box testing.
Functional Testing:
Functional testing is the testing to ensure that the specified functionality required in the system
requirements works. It falls under the class of black box testing.
System Testing:
System testing is the testing to ensure that by putting the software in different environments
(e.g. Operating Systems) it still works. System testing is done with full system
implementations & environment. It falls under the class of black box testing.
Performance Testing:
Performance testing is the testing to assess the speed & effectiveness of the system & to make
sure it is generating results within a specified time as in performance requirements. It falls
under the class of black box testing.
Acceptance Testing:
Acceptance testing is often done by the customer to ensure that the delivered product meets
the requirements & works as the customer expected. It falls under the class of black box
testing.
Black Box testing, also known as Behavioral Testing, is a software testing method in which
the internal structure/design/implementations of the item being tested is not known to the
tester. These tests can be functional or non-functional, through usually functional.
This method is named so because the software program, in the eyes of the tester, is like a black
box, inside which one cannot see.
Black box testing is contrasted with white box testing. View differences between black box
& white box testing.
Incorrect or missing functions.
Interfaces errors.
Errors in data structures or external database access.
Behavior or performance errors.
Initialization & termination errors.
Advantages:
Tests are done from user's point of view & will help in exposing discrepancies in the
specifications
Tester need not know programming languages or how the software has been implemented.
Tests can be conducted by a body independent from the developers, allowing for an
objective perspective & the avoidance of developer bias.
Test cases can be designed as soon as the specifications are complete.
Disadvantages:
Only a small number of possible inputs can be tested & many program paths will be left
untested.
Without a clear specification which is the situation in many projects, test cases will be
difficult to design.
Tests can be redundant if the software designer/developer has already run a test case.
White Box Testing also known as clear box testing, open box testing, is a software testing
method in which the internal structure/design/implementation of the item being tested is
known to the tester.
The tester chooses inputs to exercise paths through the code & determines the appropriate
outputs. Programming knows how & the implementation knowledge is essential. White box
testing is testing beyond the user interfaces & into the nitty-gritty of a system.
The method is named so because the software program, in the eyes of the tester, is like a
white/transparent box, inside which one clearly sees.
Advantages:
Testing can be commenced at an earlier stage. One need not wait for the GUI to be
available.
Testing is more through, with the possibility of covering most paths.
Disadvantages:
Since tests can be very complex, highly skilled resources are required, with through
knowledge of programming & implementation.
It is like the work of a mechanic who examines the engine to see why the car is not moving.
One of PHP's strengths is its richness in terms of functionality. Indeed, it has at the origin of
more than 3,000 native features ready-guaranteeing developers to overcome additional
development time and sometimes tedious. These functions among others to treat strings, to
operate mathematically on numbers, convert dates to connect to a database system,
manipulate files present on the server...
So the scope of future enhancement is absolutely clear with the concept that is incorporated
in the today that was made used to build the application.
12. CONCLUSION
The Student Result Management System is an online website and can be used at any place,
any time and by any student or faculty. This application will avoid the calculation and simplify
the process of visualizing results by students as well as faculty.
The processing of the proposed system is simple and is in regular order. The various plans
employed in the project are user friendly and easy to understand. The system was effective
and efficient in the estimate generation process.
13. BIBLIOGRAPH
WEBSITES:
http://www.php.net/
https://www.guru99.com/php-tutorials.html
http://www.java2s.com
http://www.tutorialtpoint.com