SRS Report
SRS Report
Our project explains about the student record management. This project mainly
explains the various actions related to student details. This project shows some
ease in adding, editing and deleting the student details. It also provides a less time-
consuming process for viewing, adding, editing and deleting the marks of the
students. This project “Student Record System” provides us a simple interface for
maintenance of student information. It can be used by educational institutes or
colleges to maintain the records of students easily. Achieving this objective is
difficult using a manual system as the information is scattered, can be redundant
and collecting relevant information may be very time consuming. All these
problems are solved using this project. Without Student Record System, managing
and maintaining the details of the student is a tedious job for any organization.
Student Information system will store all the details of the students including their
background information, educational qualifications, personal details and all the
information related to their resume.
Project Report
On
Student Record System
1
S. no Index
1 ACKNOWLEDGEMENT
2 ABSTRACT
3 INTRODUCTION
(Project Module Details) LIST
4 FEASIBILITY STUDY OF
7 SYSTEM DESIGN
(Use Case, ER, DFDs)
8 DATABASE DESIGN
(Tables Structure and Class Diagram )
9 SYSTEM TESTING
12 BIBLIOGRAPHY
FIGURES
2
FIG NO. FIGURE NAME PAGE NO.
1. Class Diagram 34
2. ER Diagram 22
3. DFD Diagram 24-27
3
LIST OF TABLESACKNOWLEDGEMENT
1. Versions of MySQL 14
2. Requirement Specification 16-17
3. Database Table 29-33
4
In the accomplishment of this project successfully, many people have best owned upon me
their blessings and the heart pledge support, this time I am utilizing to thank all the people
who have been concerned with this project.
I am highly indebted to (Name of your Mentor) for their guidance and constant supervision as
well as for providing necessary information regarding the project & also for their support in
completing the project. I am extremely thankful to him for providing such a nice support and
guidance, although he had busy schedule managing the corporate affairs.
I would like to express my gratitude towards my parents & member of (College Name) for
their kind co-operation and encouragement which help me in completion of this project.
I am thankful to and fortunate enough to get constant encouragement, support and guidance
from all Teaching staffs of [Department name] which helped us in successfully completing our
project work.
Project Associates:
5
---------
CHAPTER-1
INTRODUCTION
1.1 Student Record System
“Student Record System” is a web-based technology which allow the
administrator of any organization to edit and find out the personal details of a
student. In this web application Student must be registered by admin. This web
application provides a way to effectively control record & track the student details.
Student Record System is software which is helpful for students as well as the
school authorities. In the current system all the activities are done manually. It is
very time consuming and costly. Our “Student Records System” deals with the
various activities related to the students.
As we know that, many Colleges, Institutes and academic centers work in manual
mode for their day-to-day operations. Whether it is registration of students,
making registration report or other operations. All such operations are handled on
files or registers manually. This project tends to use latest advancements in
information technology and provide a central web solution for automating some
basic mundane tasks. This project intends to automate some of the basic
operations of an institute or college or a school. Scope would be to provide basic
functionalities using a web application so that that manual process can be
automated.
6
In “Student Record System” project we use Python language with Django
framework and MySQL database and it has one module i.e.
Advantages:
7
It helps the admin to handle and manage Student data.
Reduce time consumption.
Reduce error scope.
All system managements are automated.
Centralized database management.
Easy operations for operator of the system.
No paper work requirement.
Disadvantages:
8
CHAPTER-2
TECHNOLOGY
APACHE:
The Apache HTTP Server Project is an effort to develop and maintain an open-
source HTTP server for modern operating systems including UNIX and Windows.
The goal of this project is to provide a secure, efficient and extensible server that
provides HTTP services in sync with the current HTTP standards.
The Apache HTTP Server ("httpd") was launched in 1995 and it has been the most
popular web server on the Internet since April 1996. It has celebrated its 20th
birthday as a project in February 2015.
Python:
9
interpreter and the extensive standard library are available in source or binary form
without charge for all major platforms, and can be freely distributed.
Often, programmers fall in love with Python because of the increased productivity
it provides. Since there is no compilation step, the edit-test-debug cycle is
incredibly fast. Debugging Python programs is easy: a bug or bad input will never
cause a segmentation fault. Instead, when the interpreter discovers an error, it
raises an exception. When the program doesn't catch the exception, the interpreter
prints a stack trace. A source level debugger allows inspection of local and global
variables, evaluation of arbitrary expressions, setting breakpoints, stepping
through the code a line at a time, and so on. The debugger is written in Python
itself, testifying to Python's introspective power. On the other hand, often the
quickest way to debug a program is to add a few print statements to the source: the
fast edit-test-debug cycle makes this simple approach very effective.
Django
What is Django?
Django is a Python framework that makes it easier to create web sites using
Python.
Django takes care of the difficult stuff so that you can concentrate on building
your web applications.
10
Django emphasizes reusability of components, also referred to as DRY (Don't
Repeat Yourself), and comes with ready-to-use features like login system,
database connection and CRUD operations (Create Read Update Delete).
Model - The data you want to present, usually data from a database.
View - A request handler that returns the relevant template and content -
based on the request from the user.
Template - A text file (like an HTML file) containing the layout of the web
page, with logic on how to display the data.
Model
11
The most common way to extract data from a database is SQL. One problem with
SQL is that you have to have a pretty good understanding of the database structure
to be able to work with it.
Django, with ORM, makes it easier to communicate with the database, without
having to write complex SQL statements.
View
A view is a function or method that takes http requests as arguments, imports the
relevant model(s), and finds out what data to send to the template, and returns the
final result.
Template
A template is a file where you describe how the result should be represented.
Templates are often .html files, with HTML code describing the layout of a web
page, but it can also be in other file formats to present other results, but we will
concentrate on .html files.
Django uses standard HTML to describe the layout, but uses Django tags to add
logic:
<h1>My Homepage</h1>
12
<p>My name is {{firstname}}. </p>
URLs
Django also provides a way to navigate around the different pages in a website.
When a user requests a URL, Django decides which view it will send it to.
When you have installed Django and created your first Django web application,
and the browser requests the URL, this is basically what happens:
1. Django receives the URL, checks the urls.py file, and calls the view that
matches the URL.
2. The view, located in views.py, checks for relevant models.
3. The models are imported from the models.py file.
4. The view then sends the data to a specified template in the template folder.
5. The template contains HTML and Django tags, and with the data it returns
finished HTML content back to the browser.
Django can do a lot more than this, but this is basically what you will learn in this
tutorial, and are the basic steps in a simple web application made with Django.
13
Django History
Django Admin
What is a database?
SQLite is different from other SQL databases because unlike most other SQL
databases, SQLite does not have a separate server process. It reads and writes
directly to ordinary disk files. A complete SQL database with multiple tables,
indices, triggers, and views, is contained in a single disk file.
14
MYSQL
MySQL is the world’s most popular open-source database. According to DB-
Engines, MySQL ranks as the second-most-popular database, behind Oracle
Database. MySQL powers many of the most accessed applications, including
Facebook, Twitter, Netflix, Uber, Airbnb, Shopify, and Booking.com.
Since MySQL is open source, it includes numerous features developed in close
cooperation with users over more than 25 years. So, it’s very likely that your
favorite application or programming language is supported by MySQL Database.
15
Versions of MySQL:
MySQL 5.1 14-11-2008 December This version contains the releases of MySQL 5.0 to MySQL 5.1.73
2013 versions. To read about the first version of MySQL, click here.
MySQL 5.5 03-12-2010 December This version contains the releases of MySQL 5.5 to MySQL 5.5.62
2018 versions.
MySQL 5.6 05-02-2013 February This version contains the releases of MySQL 5.6 to MySQL 5.5.45
2021 versions.
MySQL 5.7 21-10-2015 October This version contains the releases of MySQL 5.7 to MySQL 5.6.27
2023 versions.
MySQL 8.0 19-04-2018 April 2026 This version contains the releases of MySQL 8.0 to MySQL 8.0.21
versions.
Feasibility analysis
Whenever we design a new system, normally the management will ask for a
feasibility report of the new system. The management wants to know the
technicalities and cost involved in creation of new system.
Technical feasibility
Economic feasibility
16
Physical feasibility
Technical feasibility:
Economic feasibility involves study to establish the cost benefit analysis. Money
spent on the system must be recorded in the form of benefit from the system. The
benefits are of two types:
Tangible benefits:
- Saving man labor to do tedious tasks saves time.
-
Intangible benefits:
- Improves the quality of organization.
Physical feasibility:
17
It involves study to establish the time responses of the new system being created.
For e.g., if the new system takes more than one day to prepare crucial finance
statement for the management, wherever it was required in an hour, the system
fails to provide the same.
Hardware Requirement:
Software Requirement:
Webserver APACHE
Database Server MYSQL
18
Operating System Windows or any equivalent OS
Web Browser Google chrome or any
compatible browser
Frontend HTML
Scripting Language Javascript
IDE PyCharm
Technology Python
Framework Django
SYSTEM DESIGN
Design is the first step in the development phase for any techniques and principles
for the purpose of defining a device, a process or system in sufficient detail to
permit its physical realization.
Once the software requirements have been analyzed and specified the software
design involves three technical activities - design, coding, implementation and
testing that are required to build and verify the software.
The design activities are of main importance in this phase, because in this activity,
decisions ultimately affecting the success of the software implementation and its
ease of maintenance are made. These decisions have the final bearing upon
reliability and maintainability of the system. Design is the only way to accurately
translate the customer’s requirements into finished software or a system.
19
Design is the place where quality is fostered in development. Software design is a
process through which requirements are translated into a representation of
software. Software design is conducted in two steps. Preliminary design is
concerned with the transformation of requirements into data.
20
Implementation Model View
In this the structural and behavioural as parts of the system are
represented as they are to be built.
Environmental Model View
In these the structural and behavioural aspects of the environment in which the
system is to be implemented are represented.
UML is specifically constructed through two different domains they are
UML Analysis modelling, which focuses on the student model and
structural model views of the system?
UML design modelling, which focuses on the behavioural modelling,
implementation modelling and environmental model views.
21
Use Case Diagram Admin
Sign in
Dashboard
Manage Course
(Add/Update/Del)
Manage Subject
(Add/Update/Del)
Manage Students
(Add/Update/Del)
Generate Report
Search Student
Change Password
Password Recovery
Admin Profile
22
ER Diagram:
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.
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.
23
ER Diagram
24
Data Flow Diagrams
A Data Flow Diagram (DFD) is a traditional visual representation of the information flows
within a system. A neat and clear DFD can depict the right amount of the system requirement
graphically. It can be manual, automated, or a combination of both.
It shows how data enters and leaves the system, what changes the information, and where data
is stored.
The objective of a DFD is to show the scope and boundaries of a system as a whole. It may be
used as a communication tool between a system analyst and any person who plays a part in the
order that acts as a starting point for redesigning a system. The DFD is also called as a data
flow graph or bubble chart.
1. All names should be unique. This makes it easier to refer to elements in the DFD.
2. Remember that DFD is not a flow chart. Arrows is a flow chart that represents the order
of events; arrows in DFD represents flowing data. A DFD does not involve any order of
events.
3. Suppress logical decisions. If we ever have the urge to draw a diamond-shaped box in a
DFD, suppress that urge! A diamond-shaped box is used in flow charts to represents
decision points with multiple exists paths of which the only one is taken. This implies
an ordering of events, which makes no sense in a DFD.
4. Do not become bogged down with details. Defer error conditions and error handling
until the end of the analysis.
25
Standard symbols for DFDs are derived from the electric circuit diagram analysis and are
shown in fig:
Circle: 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.
26
Source or Sink: Source or Sink is an external entity and acts as a source of system inputs or
sink of system outputs.
Password Admin
Management
Management
SRS
Course
Student
Management
Management
Authorization
Management
27
First Level DFD
Subject
Course
Management
Management
Admin
Password SRS
Management Management
Student Search
Students
Management
Authorization
Generate
Management
Report
28
Second Level DFD
Check Dashboard
Admin Login to Roles of
system access
Manage Course
(Add/Update/Del)
Manage Subject
Forgot Check
(Add/Update/Del)
Password Credential
Manage Student
(Add/Update/Del)
Manage
Modules Generate Report
Search Student
Change
Password/Profile
29
DATABASE DESIGN
The data in the system has to be stored and retrieved from database. Designing the
database is part of system design. Data elements and data structures to be stored
have been identified at analysis stage. They are structured and put together to
design the data storage and retrieval system.
30
Database Table:
SRS contains 13 MySQL tables (In this MySQL 4 table is customized and 9 table
made by default in django):
srsapp_customuser: This table store the login and personal details of admin.
This store admin personal and login details.
31
srsapp_subjects: This table store the details of subjects.
32
authentication_customuser_groups table Structure: This table by
default table.
and permissions.
33
auth_permission table Structure: This table in Django is used to store
information about the permissions defined.
34
django_content_type table Structure: This table in Django is a system table that
is used to store information about each model (database table) in your Django project.
django_session table Structure: This table store the session data for user.
35
Class Diagram:
The class diagram shows a set of classes, interfaces, collaborations and their
relationships.
36
SYSTEM TESTING
37
Software testing is a critical element of software quality assurance and represents the
TESTING OBJECTIVES:
1. Testing is process of executing a program with the intent of finding an error.
2. A good test case design is one that has a probability of finding an as yet
undiscovered error.
present.
1. Unit test
2. Integration test
3. Performance test
Unit Testing:
Unit testing focuses verification efforts on the smallest unit of software design module. The
unit test is always white box oriented. The tests that occur as part of unit testing are testing
38
the module interface, examining the local data structures, testing the boundary conditions,
execution all the independent paths and testing error-handling paths.
Integration Testing:
Performance Testing:
Timing for both read and update transactions should be gathered to determine whether
system functions are being performed in an acceptable timeframe.
CHAPTER-4
39
CHAPTER-3
CODING
HTML CODE:
<!DOCTYPE html>
<html lang="en">
{% load static %}
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-
to-fit=no"/>
<meta name="description" content=""/>
<meta name="author" content=""/>
<title>Student Record System||Login Page</title>
<! -- loader-->
<link href="{% static 'assets/css/pace.min.css'%}" rel="stylesheet"/>
<script src="{% static 'assets/js/pace.min.js'%}"></script>
<! --favicon-->
40
<link rel="icon" href="{% static 'assets/images/favicon.ico'%}" type="image/x-
icon">
<!-- Bootstrap core CSS-->
<link href="{% static 'assets/css/bootstrap.min.css'%}" rel="stylesheet"/>
<!-- animate CSS-->
<link href="{% static 'assets/css/animate.css'%}" rel="stylesheet"
type="text/css"/>
<!-- Icons CSS-->
<link href="{% static 'assets/css/icons.css'%}" rel="stylesheet" type="text/css"/>
<!-- Custom Style-->
<link href="{% static 'assets/css/app-style.css'%}" rel="stylesheet"/>
</head>
<body class="bg-theme bg-theme1">
<!-- Start wrapper-->
<div id="wrapper">
<div class="loader-wrapper"><div
class="lds-ring"><div></div><div></div><div></div><div></div></div></div>
<div class="card card-authentication1 mx-auto my-5">
<div class="card-body">
<div class="card-content p-2">
<div class="text-center">
41
<h4>Student Records System</h4>
</div>
<div class="card-title text-uppercase text-center py-3">Sign In</div>
{% include 'includes/messages.html' %}
<form action="{% url 'doLogin' %}" method="post">
{% csrf_token %}
<div class="form-group">
<label for="exampleInputUsername" class="sr-only">Email</label>
<div class="position-relative has-icon-right">
<input type="text" id="email" name="email" class="form-control input-shadow"
placeholder="Enter Email ID">
<div class="form-control-position">
<i class="icon-user"></i>
</div>
</div>
</div>
<div class="form-group">
<label for="exampleInputPassword" class="sr-only">Password</label>
<div class="position-relative has-icon-right">
<input type="password" id="password" name="password" class="form-control
input-shadow" placeholder="Enter Password">
42
<div class="form-control-position">
<i class="icon-lock"></i>
</div>
</div>
</div>
<button class="btn btn-light btn-block">Sign In</button>
</div>
</form>
</div>
</div>
</div>
</div><!--wrapper-->
<!-- Bootstrap core JavaScript-->
<script src="{% static 'assets/js/jquery.min.js'%}"></script>
<script src="{% static 'assets/js/popper.min.js'%}"></script>
<script src="{% static 'assets/js/bootstrap.min.js'%}"></script>
<!-- sidebar-menu js -->
<script src="{% static 'assets/js/sidebar-menu.js'%}"></script>
<!-- Custom scripts -->
<script src="{% static 'assets/js/app-script.js'%}"></script>
</body>
43
</html>
{% extends 'base.html' %}
{% block content %}
<div class="row mt-3">
<div class="col-lg-12">
<div class="card">
<div class="card-body">
<div class="card-block">
<h4 class="sub-title">Search Students</h4>
<form method="get" action="{% url 'search-students' %}">
{% csrf_token %}
<div class="form-group row">
<label class="col-sm-2 col-form-label">Search(By Rollnumber or
Mobilenumber)</label>
<div class="col-sm-10">
<input type="text" id="query" name="query" class="form-control" required="">
</div>
</div>
<button type="submit" class="btn btn-primary btn-user
btn-block">Search</button>
</form>
44
</div>
<br>
{% if stu %}
<div class="table-responsive">
<table class="table">
{% include 'includes/messages.html' %}
<thead>
<tr>
<th scope="col">S No</th>
<th scope="col">Roll Number</th>
<th scope="col">Student Name</th>
<th scope="col">Email</th>
<th scope="col">Mobile Number</th>
<th scope="col">Course</th>
<th scope="col">Subjects</th>
<th scope="col">Created Date</th>
<th scope="col">Action</th>
</tr>
</thead>
<tbody>
{% for i in stu %}
45
<tr>
<th scope="row">{{i.id}}</th>
<th scope="row">{{i.roll_number}}</th>
<th scope="row">{{i.fname}} {{i.mname}} {{i.lname}}</th>
<td>{{i.email}}</td>
<td>{{i.mobno}}</td>
<th scope="row">{{i.course_id.coursefullname}}
({{i.course_id.courseshortname}})</th>
<td>{{i.subjects_id.subject1}}+{{i.subjects_id.subject2}}+
{{i.subjects_id.subject3}}+{{i.subjects_id.subject4}}+
{{i.subjects_id.subject5}}</td>
<td>{{i.created_at}}</td>
<td><a href="{% url 'update_student' i.id %}" class="btn btn-sm bg-success">
Edit
</a><a href="{% url 'delete_Students' i.id %}" class="btn btn-sm bg-danger"
onclick="return confirm('Are you sure you want to delete this student?')">
Delete
</a></td>
</tr>{% endfor %}
</tbody>
46
</table>
{% else %}
{% if query %}
<p style="font-size: 20px; color: blue; text-align: center;">No records found for:
"{{query}} “</p>
{% endif %}
{% endif %}
</div>
</div>
</div>
</div>
</div>
{% endblock %}
47
CSS CODE:
/* Google Font*/
@import url('https://fonts.googleapis.com/css?
family=Roboto:400,500,700&display=swap');
/* General */
html {
font-family: 'Roboto', sans-serif;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
-ms-overflow-style: scrollbar;
-webkit-tap-highlight-color: transparent
}
html{
height: 100%;
}
@-ms-viewport {
width: device-width
}
body {
background-color: #000;
48
font-family: 'Roboto', sans-serif;
font-size: 15px;
color: rgba(255,255,255,.85);
letter-spacing: 0.5px;
}
[tabindex="-1"]:focus {
outline: 0!important
}
::selection {
background: rgba(255, 255, 255, 0.2);
}
select option {
background: #000;
}
::placeholder {
color: #fff !important;
font-size: 13px;
opacity: .5 !important; /* Firefox */
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
color: #fff !important;
49
}
::-ms-input-placeholder { /* Microsoft Edge */
color: #fff !important;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
color: #ffffff;
}
.h1, h1 {
font-size: 48px;
line-height: 52px;
}
.h2, h2 {
font-size: 38px;
line-height: 42px;
}
.h3, h3 {
font-size: 30px;
line-height: 34px;
}
.h4, h4 {
font-size: 24px;
50
line-height: 28px;
}
.h5, h5 {
font-size: 18px;
line-height: 22px;
}
.h6, h6 {
font-size: 14px;
line-height: 18px;
}
.display-1 {
font-size: 6rem
}
.display-2 {
font-size: 5.5rem
}
.display-3 {
font-size: 4.5rem
}
.display-4 {
51
font-size: 3.5rem
}
.line-height-0{
line-height:0;
}
.line-height-5 {
line-height: 5px;
}
.line-height-10 {
line-height: 5px;
}
code {
font-size: 87.5%;
color: #ffed16;
word-break: break-word;
}
.blockquote-footer{
color: #cecece;
}
52
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
margin-top: 1rem;
border: 0;
border-top: 1px solid rgba(0, 0, 0, .1)
}
p{
margin-bottom: .65rem
}
:focus {
outline: 0!important
}
a{
color: #ffffff;
}
a{
outline: none!important
}
53
a:hover{
color: #ffffff;
text-decoration: none;
}
a.text-muted:focus, a.text-muted:hover {
color: #748690;
}
hr {
border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.small, small {
font-size: 75%;
font-weight: 400;
}
.small-font{
font-size:14px;
}
.extra-small-font{
font-size:12px;
}
.breadcrumb-item.active {
54
color: #ffffff;
}
.breadcrumb-item+.breadcrumb-item::before {
color: #ffffff;
}row{
margin-right: -12.5px;
margin-left: -12.5px;
}
.col-xl-auto{
padding-right: 12.5px;
padding-left: 12.5px;
}
/* Dropdown Menu */
.dropdown-menu {
border: 0px solid rgba(0,0,0,.15);
-webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08)!important;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08)!important;
font-size:15px;
55
background-color: #000;
color: #ffffff;
}
.dropdown-menu ul{
margin-top: 0px;
}
.dropdown-divider{
margin: 0;
border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.dropdown-item{
padding: .70rem 1.5rem;
color: #ffffff;
}
.dropdown-item:hover{
padding: .70rem 1.5rem;
background-color: #000;
56
color: #ffffff;
}
.dropdown-item.active, .dropdown-item:active {
color: #fff;
text-decoration: none;
background-color: #000000;
}
.dropdown-toggle-nocaret:after {
display: none
}
/* User Details */
.user-profile img {
width:35px;
height:35px;
border-radius: 50%;
box-shadow: 0 16px 38px -12px rgba(0,0,0,.56), 0 4px 25px 0 rgba(0,0,0,.12), 0
8px 10px -5px rgba(0,0,0,.2);
}
57
.user-details .media .avatar img {
width: 50px;
height: 50px;
border-radius: 50%;
}
/* SearachBar */
.search-bar{
58
margin-left: 20px;
position: relative;
}
.search-bar input{
border: 0px solid #f1f1f1;
font-size: 15px;
width: 530px;
border-radius: 0.25rem;
height: 34px;
padding: .375rem 2.0rem .375rem .75rem;
background-color: rgba(255, 255, 255, 0.2);
}
.search-bar input::placeholder {
color: #fff !important;
font-size: 13px;
opacity: .5 !important; /* Firefox */
}
59
.search-bar input:focus{
background-color: rgba(0,0,0,.2);
border: 0px solid #f1f1f1;
box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.45)
}
.search-bar a i{
position: absolute;
top: 8px;
right: 15px;
color: #fff;
font-size: 16px;
}
.product-img {
height: 32px;
}
.skill-img{
height: 35px;
}
60
.page-title{
font-size: 20px;
line-height: 20px;
}
.breadcrumb{
padding: 0;
background-color: transparent;
}
.sidebar-menu li a i:first-child {
margin-right: 10px;
font-size: 18px;
}
.sidebar-menu li a i:last-child {
margin-right: 10px;
font-size: 12px;
}
61
.row.row-group>div {
border-right: 1px solid rgba(255, 255, 255, 0.12)
}
.row.row-group>div:last-child{
border-right: none;
}
/*Buttons */
.btn{
font-size: .70rem;
font-weight: 500;
letter-spacing: 1px;
padding: 9px 19px;
border-radius: .25rem;
text-transform: uppercase;
box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075);
}
.btn-link{
color: #14abef;
}
62
.btn:focus{
box-shadow:none;
}
.btn-lg {
padding: 12px 38px;
font-size: .90rem;
}
btn-sm {
font-size: 10px;
font-weight: 500;
padding: 6px 15px;
}
btn-group-sm>.btn{
font-size: 10px;
}
btn-primary {
color: #fff;
background-color: #7934f3;
border-color: #7934f3
}
btn-primary:hover {
63
color: #fff;
background-color: #6a27e0;
border-color: #6a27e0
}
.btn-primary.focus, .btn-primary:focus {
box-shadow:none;
}
.btn-primary.disabled, .btn-primary:disabled {
color: #fff;
background-color: #6a27e0;
border-color: #6a27e0
}
btn-primary:not(:disabled):not(.disabled).active, .btn-
primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle
{
color: #fff;
background-color: #6a27e0;
border-color: #6a27e0
}
64
.btn-primary:not(:disabled):not(.disabled).active:focus, .btn-
primary:not(:disabled):not(.disabled):active:focus, .show>.btn-primary.dropdown-
toggle:focus {
box-shadow:none;
}
btn-secondary {
color: #fff;
background-color: #94614f;
border-color: #94614f
}
65
JavaScript CODE:
$(function() {
"use strict";
//sidebar menu js
$.sidebarMenu($('.sidebar-menu'));
// === toggle-menu js
$(".toggle-menu").on("click", function(e) {
e.preventDefault();
$("#wrapper").toggleClass("toggled");
});
$(function() {
return this.href == i;
}).addClass("active").parent().addClass("active"); ;) {
66
if (!o.is("li")) break;
o = o.parent().addClass("in").parent().addClass("active");
}),
/* Top Header */
$(document).ready(function(){
$(window).on("scroll", function(){
$('.topbar-nav .navbar').addClass('bg-dark');
} else {
$('.topbar-nav .navbar').removeClass('bg-dark');
});
67
});
/* Back To Top */
$(document).ready(function(){
$(window).on("scroll", function(){
$('.back-to-top').fadeIn();
} else {
$('.back-to-top').fadeOut();
});
$('.back-to-top').on("click", function(){
return false;
});
68
});
$(function () {
$('[data-toggle="popover"]').popover()
})
$(function () {
$('[data-toggle="tooltip"]').tooltip()
})
// theme setting
$(".switcher-icon").on("click", function(e) {
e.preventDefault();
$(".right-sidebar").toggleClass("right-toggled");
});
$('#theme1').click(theme1);
$('#theme2').click(theme2);
69
function theme1() {
function theme2() {
function theme3() {
function theme4() {
function theme5() {
70
function theme6() {
function theme7() {
function theme8() {
function theme9() {
function theme10() {
71
function theme11() {
function theme12() {
function theme13() {
function theme14() {
function theme15() {
});
72
PYTHON CODE:
def BASE(request):
return render(request,'base.html')
@login_required(login_url='/')
def DASHBOARD(request):
73
course_count = Course.objects.all().count
sub_count = Subjects.objects.all().count
student_count = Student.objects.all().count
context = {
'course_count':course_count,
'sub_count':sub_count,
'student_count':student_count,
}
return render(request,'dashboard.html',context)
def LOGIN(request):
return render(request,'login.html')
def doLogin(request):
if request.method == 'POST':
user = EmailBackEnd.authenticate(request,
username=request.POST.get('email'),
password=request.POST.get('password')
)
if user!=None:
login(request,user)
74
return redirect('dashboard')
else:
messages.error(request,'Email or Password is not valid')
return redirect('login')
else:
messages.error(request,'Email or Password is not valid')
return redirect('login')
def doLogout(request):
logout(request)
return redirect('login')
login_required(login_url='/')
def PROFILE(request):
user = CustomUser.objects.get(id = request.user.id)
context = {
"user":user,
}
return render(request,'profile.html',context)
@login_required(login_url = '/')
75
def PROFILE_UPDATE(request):
if request.method == "POST":
profile_pic = request.FILES.get('profile_pic')
first_name = request.POST.get('first_name')
last_name = request.POST.get('last_name')
email = request.POST.get('email')
username = request.POST.get('username')
password = request.POST.get('password')
try:
customuser = CustomUser.objects.get(id = request.user.id)
customuser.first_name = first_name
customuser.last_name = last_name
if len(ch)>0:
data = User.objects.get(id = request.user.id)
context["data"]:data
if request.method == "POST":
current = request.POST["cpwd"]
new_pas = request.POST['npwd']
user = User.objects.get(id = request.user.id)
un = user.username
check = user.check_password(current)
if check == True:
user.set_password(new_pas)
user.save()
messages.success(request,'Password Change Succeesfully!!!')
77
user = User.objects.get(username=un)
login(request,user)
else:
messages.success(request,'Current Password wrong!!!')
return redirect("change_password")
return render(request,'change-password.html')
Manage.py
"""Django's command-line utility for administrative tasks."""
import os
import sys
def main():
"""Run administrative tasks."""
os.environ.setdefault('DJANGO_SETTINGS_MODULE',
'studentrecordsys.settings')
try:
from django.core.management import execute_from_command_line
except ImportError as exc:
raise ImportError(
"Couldn't import Django. Are you sure it's installed and "
78
"available on your PYTHONPATH environment variable? Did you "
"forget to activate a virtual environment?"
) from exc
execute_from_command_line(sys.argv)
if __name__ == '__main__':
main()
79
SCREENSHOTS:
Login Page:
Dashboard:
80
Profile:
Change Password:
81
Add Course:
Manage Course:
82
Update Course:
Add Subject:
83
Register Students:
84
Manage Students:
85
Update Students:
86
Between Dates Report of Student Registrations:
Search Students:
87
CHAPTER-4
CONCLUSION
The project titled as Student Record System was deeply studied and analyzed to design the
code and implement. It was done under the guidance of the experienced project guide. All the
current requirements and possibilities have been taken care during the project time.
Computer has got clear advantage over the manual system. The computerized system is more
reliable, efficient and fast at the end of the project, I can say that computer play a very crucial
role in the development of firm. All the daily reports generated by the system are to be
checked by the concerned official so as to ensure that all the transactions have been put
through in appropriate accounts and this is tallied with the new vouchers. Computer does
maximum work with in minimum time. Because it is used in every field so that it provides
comfort and suitability to everyone. Providing maximum facilities and comfort to customers
to customers is main goal of the firm. To achieve this goal, other modern facilities relating to
computer should have to be provided.
88
CHAPTER-5
FUTURE REFFERENCE
The proposed system provides a simple student record pages that lets you view
students, add students, create new student accounts and edit existing ones. Also
provides tools to disabled or delete students, manage permission.
The system works and fulfills all the functionalities as per the proposed system.
It will provide reduced response time against the queries made by different
students.
Introduction
System Architecture
Data Model
ER (Entity-Relationship) diagrams.
Description of key entities (e.g., students, courses, grades).
89
Data dictionary with definitions of all data elements.
User Interface
90
BIBLIOGRAPHY
For MySQL
1. https://www.mysql.com/
2. http://www.mysqltutorial.org
For XAMPP
1. https://www.apachefriends.org/download.html
91
92