0% found this document useful (0 votes)
56 views

Bca 6th Sem

The document outlines the technologies used to develop a school management system website including front end technologies like HTML, CSS, JavaScript, jQuery, AJAX and back end technologies like Laravel and MS SQL Server. It provides details on each technology and its use case.

Uploaded by

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

Bca 6th Sem

The document outlines the technologies used to develop a school management system website including front end technologies like HTML, CSS, JavaScript, jQuery, AJAX and back end technologies like Laravel and MS SQL Server. It provides details on each technology and its use case.

Uploaded by

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

Table of Contents

CHAPTER 1: INTRODUCTION
1.1. Introduction to Project..........................................................................................
1.2. Technical specifications..........................................................................................................

CHAPTER 2: TECHNOLOGIES USED


2.1. Front and Back End Tools………………………………………………………...
2.2. Front End Technologies…………………………………………………………..
2.1.1 Hypertext Markup Language (HTML)…………………………...
2.1.2 JQuery…………………………...…………………………..........
2.1.3 Java Script………………………………………………………...
2.1.4 Ascynchronous Java Script and XML (AJAX)…………………...
2.1.5 Cascading Style Sheet (CSS)……………………………………..
2.1.6 Bootstrap………………………………………………………….
2.3. Back End Technology…………………………………………………………….
2.3.1 MS-SQL SERVER………………………………………………..
2.3.2 LARAVEL………………………………………………………..

CHAPTER 3: SYSTEM ANALYSIS AND SYSTEM STUDY


3.1. Project analysis……………………………………………………………………
3.2. Feasibility Study…………………………………………………………………..
3.2.1 Technical Feasibility…………………………………………………
3.2.1 Economical Feasibility……………………………………………….
3.2.1 Operational Feasibility……………………………………………….
3.3. Cost Benefit and Analysis…………………………………………………………

CHAPTER 4: PROJECT DESIGN


4.1. Data dictionary: Table View……………………………………………………..
4.2. DFD (Data Flow Diagram)………………………………………………………
4.3. ERD (Entity Relationship Diagram)…………………………………………….
4.4. Snapshot’s……………………………………………………………………….
4.5. Source code……………………………………………………………………...

CHAPTER 5: MECHANISMS USED


5.1. Testing overview…………………………………………………………………
5.2. System testing……………………………………………………………………

CHAPTER 6: IMPLEMENTATION
6.1. Implementation mechanism used…………………………………………………

CHAPTER 7: LIMITATION
7.1. Limitations………………………………………………………………………..

CHAPTER 8: CONCLUSION
8.1. Conclusion………………………………………………………………………..

CHAPTER 9: FUTURE SCOPE


9.1. Future Scope………………………………………………………………………
CHAPTER 10: REFERENCE/BIBLIOGRAPHY………………………………………

1
CHAPTER 1

INTRODUCTION
1.1. Introduction:

The School Management System website revolutionizes educational institutions with its one-stop
solution for efficient administration, seamless communication, and enhanced learning experiences. With
the increasing complexity of educational institutions, a robust and user-friendly platform to manage
student records, attendance, timetables, and examinations is crucial. The website streamlines tasks for
administrators, empowers teachers with a user-friendly interface, and provides students and parents with
real-time updates, fostering a technology-driven learning environment accessible on computers and
mobile devices. The report explores technical specifications, feasibility, and future scope, emphasizing
its potential to transform school management practices.
1.2. Technical specifications:
The School Management System website is built on a robust and scalable architecture, utilizing the
latest web-based technologies to ensure optimal performance and functionality. Here are the key
technical specifications of the system:
Specifications of the System used to develop and test the website-: Operating Systems:
• Windows 10

• Android 8.1 Oreo Web Browsers:


• Google Chrome 68

Desktop:

• Processor: AMD FX-6300 Black Edition Hexa-Core @ 3.5 GHz

• RAM: 1 x 8 GB HyperX Ripjaws DDR3 @ 1866 MHz

Mobile:

• Chipset: Qualcomm MSM8937 Snapdragon 430

• CPU: Octa-core 1.4 GHz Cortex-A53

• GPU: Adreno 505

• RAM: 3GB

Toolkit:

• Visual Studio 2010, Notepad++,

2
Platform:

• Back-end
- MS SQL Database Server
-Laravel

• Front-End
-HTML, CSS, Bootstrap
-JavaScript

3
CHAPTER 2

TECHNOLOGIES USED

2.1. Front and Back End tools:-

S.No. Particulars Technology


1. Server-side language Laravel
2. Database MS-SQL
3. Designing CSS
4. Validation, Animation JQuery
5. Retrieve data from the database AJAX
6. Structure Designing HTML
7. Program the behavior of web pages JavaScript
8. Responsive Bootstrap

Table 2.1: Front and Back End tools

2.2. Front End Technologies:

2.2. 1. HYPERTEXT MARKUP LANGUAGE (HTML)

A simple markup language used to create hypertext documents that are portable from one
platform to another. HTML files are simple ASCII text files with codes embedded (indicated
by markup tags) to denote formatting and hypertext links. Many people who use HTML to
create Web pages or other documents find Notepad a useful tool for writing in HTML.
Because Notepad supports only very basic formatting, you cannot accidently save special
formatting in documents that need to remain pure text. This is especially useful when creating
HTML documents for a Web page because special characters or other formatting may not
appear in your published Web page or may even cause errors. Many word processors provide
additional tools or converters to help you create HTML documents. But, if you are creating
simple pages or if you want to make a few quick changes Notepad opens files quickly. Also,
Notepad shows all of the HTML tags so you can troubleshoot your page. Not all word
processors or converters make the HTML code available. Text editors like Notepad++,Visual
Studio Code, Brackets, Sublime provides predefined tags making the use of HTML tags easy.

4
2.2. 2. JQuery

JQuery is light weight, “write less, do more” JavaScript library. The purpose of JQuery is to
make it much easier to use Java Script on your website. JQuery takes a lot of common tasks
that required many lines of Java Script code to accomplish, and wraps it into methods that
you can call with a single line of code. JQuery also simplifies a lot of complicated
thingsfrom Java Script, like AJAX calls and DOM manipulation. The JQuery library contains
the following features:

1. HTML/DOM manipulation
2. Point CSS manipulation
3. HTML event methods
4. Effects and Animations
5. AJAX
6. Utilities

2.2.3. JAVASCRIPT

JavaScript is an object-oriented scripting language used to enable programmatic access to


objects within both the client application and other applications.

It is primarily used in form of client-side JavaScript, implemented as an integrated


component of the web browser, allowing the development of enhanced user interfaces and
dynamic websites. JavaScript was first developed by Netscape as an open scripting language
to create interactive web pages. JavaScript as an open language implies that it can be used by
anyone; no license is required to use JavaScript.

JavaScript has the ability to function both as an object-oriented language as well as


procedural language. Using JavaScript you can create objects, attach methods and properties.

JavaScript helps in performing the following tasks:

1. JavaScript gives HTML designers a programming tool – HTML authors are


normally not programmers, but JavaScript is a scripting language with a very
simple syntax! Almost anyone can put small “snippets” of code into their
HTML pages.
2. JavaScript can read and write HTML elements - JavaScript can read and
change the context of an HTML element.
3. JavaScript can be used to validate data - A JavaScript can be used to validate

5
from data before it is submitted to server. This saves the server from extra
processing.
4. JavaScript can be used to create cookies – A JavaScript can be used to store
and retrieve information on the visitor’s computer.

2.2.4. Asynchronous JavaScript and XML (AJAX)

AJAX is a technique for creating fast and dynamic web pages. AJAX is not itself a
technology. AJAX allows web pages to be updated asynchronously by exchanging a small
amount of data with the server behind the scenes. This means that it is possible to
updateparts of a web page without reloading the whole page.

AJAX is a way of mixing well-known programming techniques in an uncommon way to


develop web-applications with appealing user interfaces.

AJAX works as an extra layer between the user’s browser and the web server to fill up the
lapses of traditional web applications development. Examples of applications using AJAX:
Google Maps, Gmail, YouTube, and LinkedIn etc.

2.2.5. Cascading Style Sheet (CSS)

CSS is used to describe the presentation semantics (that is the look and formatting) of a
document written in a markup language. CSS is designed primarily to enable the presentation
of document content (Written in HTML or a similar markup language) from document
presentation, including elements such as the layout, colors, and fonts.

Cascading Style Sheet is used to style HTML elements. Three Ways to Insert CSS in a web
page:-

1. External style sheet: In separate style sheet files (CSS files).


2. Internal style sheet: In the style element in the HTML head section.
3. Inline style: In the style attribute in single HTML elements.

2.2.6. Bootstrap

Bootstrap is a free and open source front-end framework for developing websites and web
applications. It contains HTML and CSS based design templates for typography, forms,
buttons, navigation and other interface components, as well as optional JavaScript
extensions. Unlike many earlier web frameworks, it concerns itself with front-end
development only.

Bootstrap 4 supports the latest versions of the Google Chrome, Firefox, Internet Explorer,
6
Opera, and Safari . Since 2.0, Bootstrap supports responsive web design. This means the
layout of web pages adjusts dynamically, taking into account the characteristics of the device
used (desktop, tablet, mobile phone). Starting with version 3.0, Bootstrap adopteda mobile-
first design philosophy, emphasizing responsive design by default.

Bootstrap is modular and consists of a series of style sheets that implement the various
components of the toolkit. These style sheets are generally compiled into a bundle and
included in web pages, but individual components can be included or removed. Bootstrap
provides a number of configuration variables that control things such as color and padding of
various components. Grid system and responsive design come standard with an 1170-pixel-
wide grid layout. Alternatively, the developer can use a variable-width layout. For both
cases,the toolkit has four variations to make use of different resolutions, and types of devices:
mobile phones, portrait and landscape, tablets and PCs with low and high resolution. Each
variation adjusts the width of the columns.

2.3. Back End Technology:

2.3.1. MS-SQL SERVER

Microsoft SQL Server is a relational database management system (RDBMS) that supports a wide
variety of transaction processing, business intelligence and analytics applications in corporate IT
environments. Microsoft SQL Server is one of the three market-leading database technologies,
along with Oracle Database and IBM's DB2.

Like other RDBMS software, Microsoft SQL Server is built on top of SQL, a standardized
programming language that database administrators (DBAs) and other IT professionals use to
manage databases and query the data they contain. SQL Server is tied to Transact-SQL (T-SQL),
an implementation of SQL from Microsoft that adds a set of proprietary programming extensions
to the standard language.
2.3.2. LARAVEL
Laravel is a widely acclaimed open-source PHP web framework that was first introduced in 2011
by Taylor Otwell. Since its inception, Laravel has become one of the most popular and beloved
frameworks in the web development community. Known for its elegant syntax and developer-
friendly approach, Laravel simplifies the process of building robust and scalable web
applications.

Key Features and Advantages


Expressive Syntax: Laravel's syntax is clean, concise, and expressive, making it a pleasure to
7
work with. It allows developers to write code that is not only efficient but also highly readable.

Modularity and MVC Architecture: Laravel follows the Model-View-Controller (MVC)


architectural pattern, promoting a clear separation of concerns and making code organization a
breeze. This modularity enhances the maintainability of projects.
Eloquent ORM: Laravel comes with an eloquent object-relational mapping (ORM) system that
simplifies database interactions. Eloquent enables developers to work with databases using
intuitive and expressive syntax.
Blade Templating Engine: Laravel's Blade templating engine provides a powerful and
straightforward way to design dynamic and reusable templates, enhancing the view layer of the
MVC architecture.
Artisan Command-Line Tool: Laravel's command-line tool, Artisan, automates repetitive tasks
and allows developers to create custom commands, streamlining development workflows.
Routing and Middleware: Laravel offers a flexible routing system, making it easy to define
application URLs and handling HTTP requests. Middleware allows developers to filter requests
and add additional functionalities.
Authentication and Security: Laravel provides a built-in authentication system that can be
easily customized to suit specific application needs. Additionally, it includes various security
features like encryption and CSRF (Cross-Site Request Forgery) protection.
Testing Support: Laravel offers comprehensive testing support with PHPUnit. This enables
developers to write and run unit and integration tests to ensure the robustness of their
applications.
Active Community: The Laravel community is vibrant and active, with an extensive network of
developers contributing packages, libraries, and tutorials. This constant support and sharing of
knowledge make Laravel a continually evolving and cutting-edge framework.

Use Cases and Applications


Laravel is ideal for building a wide range of web applications, including but not limited to:
1. Content Management Systems (CMS)
2. E-commerce Platforms
3. Social Networking Websites
4. Enterprise Resource Planning (ERP) Systems
5. Customer Relationship Management (CRM) Systems
6. Web Portals and Dashboards
7. APIs and Web Services

8
CHAPTER 3

SYSTEM ANALYSIS & SYSTEM STUDY

3.1. Project Analysis:

Project Analysis is a process of gathering and interpreting facts, diagnosing problems and the
information to recommend improvements on the project. It is a problem-solving activity that
requires intensive communication between the project users and project developers. Project
Analysis or study is an important phase of any project development process.

The Project Analyst plays a role of the interrogator and dwells deep into the working of the
present project. Our project is viewed as a whole and the inputs to the project are identified.
The outputs from the organizations are traced to the various processes. Project Analysis is
concerned with becoming aware of the problem, identifying the relevant and decisional
variables, analyzing and the various factors and determining an optimal or at least a
satisfactory solution or program of action. Preliminary Study is the process of gathering and
interpreting facts, using the information for further studies on the system. Preliminary Studyis
problem- solving activity that requires intensive communication between the Project Users
and Project Developers.

Here In this project, a detailed study of Existing System is carried along with all the steps in
Project Analysis. An idea of creating a better project was carried and the next steps were
followed. The following problems were identifiedby us in the existing system-:

• Non-responsive design that isn’t mobile friendly.

• Redundant Information

• Design needs an update

• Imperative information is difficult to find.

9
3.2. Feasibility Study:

The preliminary investigation examines a project’s feasibility, the likelihood that the system
will be useful in the organization. The main objective of the feasibility study is to test the
Technical, Operational and Economical feasibility for adding new modules and
debugging old running system. All systems are feasible if they are unlimited resources and
infinite time. In our project, there are three aspects in the feasibility study portion of the
preliminary investigation:

1. Technical Feasibility

2. Economic Feasibility

3. Operational Feasibility

3.2.1. Technical Feasibility

The technical issues are usually raised during the feasibility study stage of the
investigation which includes the following:

1. All the necessary technology was used to do the work.


2. The proposed equipments had the technical capacity to hold the data required and
we also used new systems that were not mentioned in synopsis.
3. The proposed system provides an adequate response to inquiries, regardless of
the number or location of users.
4. The system can be upgraded at any point of time.
5. Technical guarantees of accuracy, reliability, ease of access and data security are
taken care of.

3.2.2. Economic Feasibility

In economic feasibility, the development cost in creating the system is evaluated against the
ultimate benefit derived from the new systems. Financially benefits must either be equal or
should exceed the costs. A system developed after a careful evaluation of the concerned
factors saves a lot of money beforehand for the developer as well as the organization. It is the
duty of developer to analysis, all the pros and cons to create a system is a big investment for
the organization.
10
3.2.3. Operational Feasibility

Proposed website is beneficial only if it can be turned into an information system that will
meet the organization’s operational requirements. Operational feasibility aspects of this
project are to be taken as an important part of the project implementation. Some of the
important issues raised to test the operational feasibility of a project include the following:

1. There is sufficient support for the management of the users.


2. The system can be used and will work properly.

This system is targeted to be in accordance with the above-mentioned issues. Beforehand, the
management issues and user requirements have been taken into consideration. So there is no
question of resistance from the users that can undermine the possible application benefits.

3.3. Cost & Benefit Analysis:


In developing cost estimates for a system, we need to consider several cost elements. Among
them are: hardware, personnel, facility, operating and supply costs. A system is also expected
to provide benefits. The first task is to identify each benefit and then assign a monetary value
to it for cost & benefit analysis. Benefits may be tangible or intangible.

The two major benefits are improving performance and minimizing the cost of processing.
The performance category emphasizes improvement in the accuracy of or access to
information and easier access to the system by authorized users.

There is a difference between expenditure and investment. We spend to get what we need,
but we invest to realize a return on investment. Building a computer-based system is an
investment. Benefits are realized in the form of reducing operating costs, improved corporate
image, staff efficiency, or revenues. To what extent benefits outweigh costs is the function of
cost & benefit analysis.

Costs are incurred throughout its life cycle. Cost & benefit analysis a procedure that gives a
picture of various costs, benefits, and rules associated with a system. The determination of
cost costs and benefits entails the following steps:

1. Identify the cost and benefits pertaining to a given project.


2. Categorize the various costs and benefits for analysis.
3. Select a method for evaluation.

11
4. Interpret the results for analysis and take action

CHAPTER 4

PROJECT

DESIGN

4.1. Data Dictionary: Table View


A data dictionary is a collection of descriptions of the data objects or items in a data model for
the benefit of programmers and others who need to refer to them. When developing programs that
use the data model, a data dictionary can be consulted to understand where a data item fits in the
structure, what values it may contain, and basically what the data item means in real-world terms.

A database is a collection of data about a specific topic.

DATABASE

Fig :- Database
FACULTY

12
Fig:- Database Table of Faculty Registration

Table Name: Student

Fig: Database Table Of Student Registration

Table Name: Library

13
Fig:- Database Table To Add Period

Table Name: Admin Login

Fig: Database Table Of Admin Login

14
Table Name: Add Period

Fig:- Database Table To Add Period

4.2. Data Flow Diagram (DFD):


A DFD is a graphical representation of the “flow” of data through an Information System. A
DFD can also be used for the visualization of Data Processing. It is common practice for a
designer to draw a context-level DFD first which shows the interaction between the system
and outside entities. This context-level DFD is then “exploded” to show the detail of the
system being modeled. A DFD represents of flow of data through a system. Data flow
diagrams are commonly used during problem analysis. It views a system as a function that
transforms the input into desired output.

A DFD shows the movement of data through the different transformations or processes in the
system. DFD can be used to provide the end user with a physical structure. The input
ultimately has an effect upon the structure of the whole system from order to dispatch to
restock how any system developed can be determined through a data flow diagram. The
appropriate register saved in the database and maintained by appropriate authorities.

15
0 LEVEL DFD 

16
17
4.3. ER- DIAGRAM

18
4.4. SNAPSHOTS

4.4.1. HOME PAGE

Fig:- Home Page

Fig:- Home Page(About)

19
Fig:- Home Page(Teacher)

Fig:- Home Page(Classes)

20
Fig:- Home Page(Contact Us)

4.4.2. ADMIN DASHBOARD

Fig:- Admin Dashboard

21
4.4.3. STUDENT DETAILS

Fig:- Student Details

4.4.4. TEACHER DETAILS

Fig:- Teacher Details

22
4.4.5. LIBRARY MANAGEMENT

Fig:- Library Management

4.4.5. ADD CLASS FORM

Fig:- Add Class Form

23
4.4.6. ADD NOTES FORM

Fig:- Add Notes Form

4.4.7. ADD TIMETABLE FORM

Fig:- Add Timetable Form

24
4.4.8. TEACHER LOGIN

Fig:- Teacher Login

4.4.9. FACULTY DASHBOARD

Fig:- Faculty Dashboard

25
4.4.10. STUDENT LOGIN

Fig:- Student Login

4.4.11. STUDENT DASHBOARD

Fig:- Student Dashboard

26
4.4.12. BOOK ISSUE

Fig:- Book Issue

4.4.13. DOWNLOAD NOTES

Fig:- Download Notes

27
4.5. SOURCE CODE:
4.5.1. Controllers

4.5.1.1. Admin.Php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Faculty;
use App\Models\Student;
use App\Models\Shift;
use App\Models\Class_sch;
use App\Models\Subject;
use App\Models\Period;
use App\Models\Class_form;
use App\Models\Libraryform;
use App\Models\Timetable;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Session as FacadesSession;

class Admin extends Controller


{
//
function index(){

return view("index");
}
function teacherprofile(){

return view("teacherprofile");
}

function dash(){

return view("dash");
}
function signin(){
return view("signin");
}

function fprofile(){
return view("fprofile");
}
function viewclass(){
return view("viewclass");
}
28
function viewsubject(){
return view("viewsubject");
}
function viewperiod(){
return view("viewperiod");
}
function teacherdetails($id){

return view("teacherdetails",["id"=>$id]);
}

function stuprofile(){
return view("stuprofile");
}

function login1(Request $req){


$name=$req->input("username");

$pass=$req->input("password");

$arr=DB::select("select * from adminlogin where username='$name' and password='$pass'");

$c=count($arr);
if($c>=1){
FacadesSession::put("idd",$arr[0]->id);
return redirect("dash");
}else
{
FacadesSession::flash('message', 'Invalid userName And Password');

return redirect("signin");
}

function shift_form(){

return view("shift_form");
}
function shift1(Request $req)
{
$f=new Shift();
$f->shiftid=$req->input("shiftid");
$f->sname=$req->input("sname");
$f->stime=$req->input("stime");

29
$f->etime=$req->input("etime");
$f->save();

FacadesSession::flash('message', 'Shift Added Successfully');


return redirect("shift_form");
}

function class_sch(){

return view("class_sch");
}
function csch1(Request $req)
{
$f=new Class_sch();
$f->mainid=$req->input("mainid");
$f->classid=$req->input("classid");
$f->periodid=$req->input("periodid");
$f->shiftid=$req->input("shiftid");
$f->stime=$req->input("stime");
$f->etime=$req->input("etime");
$f->day=$req->input("day");
$f->save();
FacadesSession::flash('message', 'Class Schedule Added Successfully');
return redirect("class_sch");

function library(){

return view("library");
}
function library1(Request $req)
{
$f=new Libraryform();
$f->bname=$req->input("bname");
$f->bclass=$req->input("bclass");
$f->bsubject=$req->input("bsubject");
$f->bnum=$req->input("bnum");
$files=$req->file("ab");
$pname=$files->getClientOriginalName();
$files->move("bookphoto",$pname);
$f->photo=$pname;
$f->save();
FacadesSession::flash('message', 'Book Added Successfully');
return redirect("library");

30
function timetable(){

return view("timetable");
}
function timetable1(Request $req)
{
$f=new Timetable();
$f->tclass=$req->input("tclass");
$f->tsubject=$req->input("tsubject");
$f->tperiod=$req->input("tperiod");
$f->tday=$req->input("tday");
$f->stime=$req->input("stime");
$f->etime=$req->input("etime");

$f->save();
FacadesSession::flash('message', 'Timetable Added Successfully');
return redirect("timetable");

function subject(){

return view("subject");
}
function subject1(Request $req)
{
$f=new Subject();
$f->subid=$req->input("subid");
$f->sname=$req->input("sname");
$f->status=$req->input("status");
$f->save();
FacadesSession::flash('message', 'Subject Added Successfully');
return redirect("subject");

function period(){

return view("period");
}
function period1(Request $req)
{
$f=new Period();
$f->periodid=$req->input("periodid");
$f->pname=$req->input("pname");
$f->status=$req->input("status");

31
$f->save();
FacadesSession::flash('message', 'Period Added Successfully');
return redirect("period");

function class_form(){

return view("class_form");
}
function class1(Request $req)
{
$f=new Class_form();
$f->classid=$req->input("classid");
$f->cname=$req->input("cname");
$f->status=$req->input("status");
$f->desc=$req->input("desc");

$f->save();

FacadesSession::flash('message', 'Class Added Successfully');


return redirect("class_form");

function editclass($id)
{
$data = class_form ::where('id', '=', $id) ->first();
return view('editclass1',compact('data'));
}
function editclass2(Request $req)
{
$f=new Class_form();
$classid=$req->input("classid");
$cname=$req->input("cname");
$status=$req->input("status");
$desc=$req->input("desc");
$id=$req->input("id");
DB::update("update classform set classid='$classid',cname='$cname',desc='$desc',status='$status' where
id='$id'");

//FacadesSession::flash('message', 'Class Added Successfully');


return redirect("class_form");

}
function deleteclass($id)
{

32
DB::delete("delete from classform where id='$id'");
return redirect("class_form");
}
function deletetimetable($id)
{
DB::delete("delete from timetable where id='$id'");
return redirect("timetable");
}

function editclasssch($id)
{
$data = class_sch ::where('id', '=', $id) ->first();
return view('editclasssch1',compact('data'));
}
function editclasssch2(Request $req)
{
$f=new Class_sch();
$mainid=$req->input("mainid");
$classid=$req->input("classid");
$periodid=$req->input("periodid");
$shiftid=$req->input("shiftid");
$stime=$req->input("stime");
$etime=$req->input("etime");
$day=$req->input("day");
$id=$req->input("id");

DB::update("update class_sch set


mainid='$mainid',classid='$classid',periodid='$periodid',shiftid='$shiftid',stime='$stime',etime='$etime',day=
'$day' where id='$id'");

//FacadesSession::flash('message', 'Class Added Successfully');


return redirect("class_sch");

}
function deleteclasssch($id)
{
DB::delete("delete from class_sch where id='$id'");
return redirect("class_sch");
}

function editshift($id)
{
$data = shift ::where('id', '=', $id) ->first();
return view('editshift1',compact('data'));
}
function editshift2(Request $req)
{
$f=new Shift();

33
$shiftid=$req->input("shiftid");
$sname=$req->input("sname");
$stime=$req->input("stime");
$etime=$req->input("etime");
$id=$req->input("id");
DB::update("update shift set shiftid='$shiftid',sname='$sname',stime='$stime',etime='$etime' where
id='$id'");

//FacadesSession::flash('message', 'Class Added Successfully');


return redirect("shift_form");

}
function deleteshift ($id)
{
DB::delete("delete from shift where id='$id'");
return redirect("shift_form");
}

function logout(){

FacadesSession::forget("idd");
return redirect("signin");
}

function editperiod($id)
{
$data = period ::where('id', '=', $id) ->first();
return view('editperiod1',compact('data'));
}
function editperiod2(Request $req)
{
$f=new Period();
$periodid=$req->input("periodid");
$pname=$req->input("pname");
$status=$req->input("status");
$id=$req->input("id");
DB::update("update period set periodid='$periodid',pname='$pname',status='$status' where id='$id'");

//FacadesSession::flash('message', 'Class Added Successfully');


return redirect("period");

}
function deleteperiod($id)
{
DB::delete("delete from period where id='$id'");
return redirect("period");

34
}

function editsubject($id)
{
$data = subject ::where('id', '=', $id) ->first();
return view('editsubject1',compact('data'));
}
function editsubject2(Request $req)
{
$f=new Subject();
$subid=$req->input("subid");
$sname=$req->input("sname");
$status=$req->input("status");
$id=$req->input("id");
DB::update("update subject set subid='$subid',sname='$sname',status='$status' where id='$id'");

//FacadesSession::flash('message', 'Class Added Successfully');


return redirect("subject");

}
function deletesubject($id)
{
DB::delete("delete from subject where id='$id'");
return redirect("subject");
}

function editstureg($id)
{
$data = student ::where('id', '=', $id) ->first();
return view('editstureg1',compact('data'));
}
function editstureg2(Request $req)
{
$f=new Student();
$enrollno=$req->input("eno");
$fname=$req->input("fname");
$lname=$req->input("lname");
$gender=$req->input("gender");
$father=$req->input("father");
$mother=$req->input("mother");
$email=$req->input("email");
$address=$req->input("address");
$phone=$req->input("phone");
$dob=$req->input("dob");
$username=$req->input("username");
$password=$req->input("password");

35
$class=$req->input("class");
$id=$req->input("id");
DB::update("update student set
enrollno='$enrollno',fname='$fname',lname='$lname',gender='$gender',father='$father',mother='$mother',em
ail='$email',address='$address',phone='$phone',dob='$dob',username='$username',password='$password',cla
ss='$class' where id='$id'");

//FacadesSession::flash('message', 'Class Added Successfully');


return redirect("stuprofile");

}
function deletestureg($id)
{
DB::delete("delete from student where id='$id'");
return redirect("stuprofile");
}
function deletefaculty($id)
{
DB::delete("delete from faculty where id='$id'");
return redirect("fprofile");
}
function deletelibrary($id)
{
DB::delete("delete from library where id='$id'");
return redirect("library");
}
}

36
4.5.1.2. Apicontroller.Php

<?php

namespace App\Http\Controllers;

use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller as BaseController;
use App\Http\Models\Class_form;
use App\Models\Class_form as ModelsClass_form;
use App\Models\Class_sch;
use App\Models\Faculty;
use App\Models\Period;
use App\Models\Shift;
use App\Models\Student;
use App\Models\Subject;

class ApiController extends BaseController


{
function classform(Request $req){

print_r($req->all());

$c=new ModelsClass_form();
$c->classid=$req->classid;
$c->cname= $req->classname;
$c->status=$req->status;

$c->save();
echo "Class Added Successfully";
}

function shiftform(Request $req){

print_r($req->all());

$c=new Shift();
$c->shiftid=$req->shiftid;
$c->sname= $req->shiftname;
$c->stime=$req->shiftstime;
$c->etime=$req->shiftetime;

$c->save();

echo "Shift Added Successfully";


}

37
function period(Request $req){

print_r($req->all());

$c=new Period();
$c->periodid=$req->periodid;
$c->pname= $req->periodname;
$c->status=$req->status;
$c->save();

echo "Period Added Successfully";


}

function subject(Request $req){

print_r($req->all());

$c=new Subject();
$c->subid=$req->subjectid;
$c->sname= $req->subjectname;
$c->status=$req->status;
$c->save();

echo "Subject Added Successfully";


}

function stureg(Request $req){

print_r($req->all());

$c=new Student();
$c->enrollno=$req->subjectid;
$c->fname= $req->fname;
$c->lname=$req->lname;
$c->gender=$req->gender;
$c->father=$req->father;
$c->mother=$req->mother;
$c->email=$req->email;
$c->address=$req->address;
$c->phone=$req->phone;
$c->dob=$req->dob;
$c->city=$req->city;
$c->regid=$req->regid;
$c->photo=$req->photo;
$c->username=$req->username;

38
$c->password=$req->password;
$c->class=$req->class;
$c->save();

echo "Students Added Successfully";


}

function class_sch(Request $req){

print_r($req->all());

$c=new Class_sch();
$c->mainid=$req->mainid;
$c->classid=$req->classid;
$c->periodid=$req->periodid;
$c->shiftid=$req->shiftid;
$c->day=$req->day;
$c->stime=$req->shiftstime;
$c->etime=$req->shiftetime;

$c->save();

echo "Class Schedule Added Successfully";


}

function faculty(Request $req){


print_r($req->all());
$c=new Faculty();
$c->fname= $req->fname;
$c->lname=$req->lname;
$c->gender=$req->gender;
$c->status=$req->status;
$c->email=$req->email;
$c->address=$req->address;
$c->phone=$req->phone;
$c->dob=$req->dob;
$c->country=$req->country;
$c->city=$req->city;
$c->profession=$req->profession;
$c->photo=$req->photo;
$c->username=$req->username;
$c->password=$req->password;
$c->save();

echo "Students Added Successfully";


}
}

39
4.5.1.3. Controller.Php

<?php

namespace App\Http\Controllers;

use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;

class Controller extends BaseController


{
use AuthorizesRequests, ValidatesRequests;
function classform(){

echo "Api Execute";


}

40
4.5.1.4. Faculty Controller.php

<?php
namespace App\Http\Controllers;

use App\Models\Addnotes;
use Illuminate\Http\Request;
use App\Models\Faculty;

use App\Models\Student;
use App\Models\Shift;
use App\Models\Class_sch;
use App\Models\Subject;
use App\Models\Period;
use App\Models\Class_form;
use App\Models\Libraryform;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Session as FacadesSession;

class FacultyController extends Controller


{
function index()
{
return view("fpanel.signin");
}
function logout1(){

FacadesSession::forget("idd1");
return redirect("teacherlogin");
}
function tlogin1(Request $req)
{
$name=$req->input("username");
$pass=$req->input("password");
$arr=DB::select("select * from faculty where username='$name' and password='$pass'");

$c=count($arr);
if($c>=1)
{

FacadesSession::put("idd1",$arr[0]->id);
return redirect("fdash");

}
else
{
FacadesSession::flash('message', 'Invalid userName And Password');

41
return redirect("teacherlogin");
}}
function fdash(){
return view("fpanel.fdash");
}
function teacherprofile(){
return view("fpanel.teacherprofile");
}
function viewp1(){
return view("fpanel.viewp1");
}
function viewstu1(){
return view("fpanel.viewstu1");
}
function viewc1(){
return view("fpanel.viewc1");
}
function views1(){
return view("fpanel.views1");
}

function addnotes(){

return view("fpanel.addnotes");
}
function freg(){

return view("fpanel.faculty_registration");
}
function freg1(Request $req)
{
$f=new Faculty();

$f->fname=$req->input("fname");
$f->lname=$req->input("lname");
$f->gender=$req->input("gender");
$f->status=$req->input("status");
$f->email=$req->input("email");
$f->address=$req->input("address");
$f->phone=$req->input("phone");
$f->dob=$req->input("dob");
$f->country=$req->input("country");
$f->city=$req->input("city");
$f->profession=$req->input("profession");
$f->username=$req->input("username");
$f->password=$req->input("password");

$files=$req->file("aa");
$pname=$files->getClientOriginalName();

42
$files->move("facultyphoto",$pname);
$f->photo=$pname;

$f->save();

FacadesSession::flash('message', 'Teacher Registered Successfully');


return redirect("freg");
}

function addnotes1(Request $req)


{
$f=new Addnotes();
$f->nname=$req->input("nname");
$f->nurl=$req->input("nurl");
$f->class=$req->input("class");
$f->subject=$req->input("subject");
$f->save();

FacadesSession::flash('message', 'Notes Added Successfully');


return redirect("addnotes");

}
function deletenotes($id)
{
DB::delete("delete from addnotes where id='$id'");
return redirect("addnotes");
}

43
4.5.1.5. Studentcontroller.Php

<?php
namespace App\Http\Controllers;

use App\Models\Addnotes;
use Illuminate\Http\Request;
use App\Models\Faculty;
use App\Models\Student;
use App\Models\Shift;
use App\Models\Class_sch;
use App\Models\Subject;
use App\Models\Period;
use App\Models\Class_form;
use App\Models\Libraryform;
use App\Models\Queryform;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Session as FacadesSession;

class StudentController extends Controller


{
function index()
{
return view("spanel.signin");
}
function slogin1(Request $req)
{
$name=$req->input("username");
$pass=$req->input("password");
$arr=DB::select("select * from student where username='$name' and password='$pass'");

$c=count($arr);
if($c>=1)
{

FacadesSession::put("idd2",$arr[0]->id);
return redirect("sdash");

}
else
{
FacadesSession::flash('message', 'Invalid userName And Password');

return redirect("studentlogin");
}}
function sdash(){
return view("spanel.sdash");
}

44
function logout2(){

FacadesSession::forget("idd2");
return redirect("studentlogin");
}

function studentprofile(){
return view("spanel.studentprofile");
}
function viewper(){
return view("spanel.viewper");
}
function viewc(){
return view("spanel.viewc");
}
function issuenow($id){
$userid=FacadesSession::get("idd2");
$arr=array("userid"=>$userid,"bookid"=>$id,"dates"=>date('d-m-Y'));
DB::table("booknow")->insert($arr);
return redirect("issuebook");
}

function downloadnotes(){
return view("spanel.downloadnotes");
}

function issuebook(){
return view("spanel.issuebook");
FacadesSession::flash('message', 'Book Issued Successfully');
return redirect("issuebook");
}

function viewsub(){
return view("spanel.viewsub");
}

function queryform(){

return view("spanel.queryform");
}
function queryform1(Request $req)
{
$f=new Queryform();
$f->tclass=$req->input("tclass");
$f->tsubject=$req->input("tsubject");

45
$f->tname=$req->input("tname");
$f->doubt=$req->input("doubt");
$f->save();

FacadesSession::flash('message', 'Query Sent Successfully');


return redirect("queryform");

function stureg(){

return view("spanel.stureg");
}

function sreg1(Request $req)


{
$f=new Student();
$f->enrollno=$req->input("eno");
$f->fname=$req->input("fname");
$f->lname=$req->input("lname");
$f->gender=$req->input("gender");
$f->father=$req->input("father");
$f->mother=$req->input("mother");
$f->email=$req->input("email");
$f->address=$req->input("address");
$f->phone=$req->input("phone");
$f->dob=$req->input("dob");
$f->city=$req->input("city");
$f->username=$req->input("username");
$f->password=$req->input("password");
$f->class=$req->input("class");

$files=$req->file("aa");
$pname=$files->getClientOriginalName();
$files->move("studentphoto",$pname);
$f->photo=$pname;

$f->save();

FacadesSession::flash('message', 'Student Added Successfully');


return redirect("stureg");

46
4.5.2. Models
4.5.2.1. Addnotes.Php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Addnotes extends Model

use HasFactory;

public $timestamps=false;

public $table="addnotes";

47
4.5.2.2. Class_Form.Php
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Class_form extends Model

use HasFactory;

public $timestamps=false;

public $table="classform";

4.5.2.3. Faculty.Php

<?php
namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Faculty extends Model{

use HasFactory;

public $timestamps=false;

public $table="faculty";

48
4.5.2.4. Libraryform.Php

<?php
namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Libraryform extends Model

use HasFactory;

public $timestamps=false;

public $table="library";

4.5.2.5. Periodform.Php

<?php
namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Period extends Model

use HasFactory;

public $timestamps=false;

public $table="period";

49
4.5.2.6. Queryform.Php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Queryform extends Model

use HasFactory;

public $timestamps=false;

public $table="queryform";

4.5.2.7. Shift.Php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Shift extends Model

use HasFactory;

public $timestamps=false;

public $table="shift";

50
4.5.2.8. Student.Php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Student extends Model

use HasFactory;

public $timestamps=false;

public $table="student";

4.5.2.9. Subject.Php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Subject extends Model

use HasFactory;

public $timestamps=false;

public $table="subject";

51
4.5.2.10. Timetable.Php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Database\Eloquent\Model;

class Timetable extends Model

use HasFactory;

public $timestamps=false;

public $table="timetable";

4.5.2.11. User.Php

<?php

namespace App\Models;

// use Illuminate\Contracts\Auth\MustVerifyEmail;

use Illuminate\Database\Eloquent\Factories\HasFactory;

use Illuminate\Foundation\Auth\User as Authenticatable;

use Illuminate\Notifications\Notifiable;

use Laravel\Sanctum\HasApiTokens;

class User extends Authenticatable

52
use HasApiTokens, HasFactory, Notifiable;

/**

* The attributes that are mass assignable.

* @var array<int, string>

*/

protected $fillable = [

'name',

'email',

'password',

];

/**

* The attributes that should be hidden for serialization.

* @var array<int, string>

*/

protected $hidden = [

'password',

'remember_token',

];

/**The attributes that should be case @var array<string, string>

*/

protected $casts = [

'email_verified_at' => 'datetime',

53
'password' => 'hashed',

];

CHAPTER 5

MECHANISMS USED

5.1. Testing overview:

Software testing is any activity aimed at evaluating an attribute or capability of a program or


system and determining that it meets its required results. Although crucial to software quality and
widely deployed by programmers and testers, software testing still remains an art, due to limited
understanding of the principles of software. In this project “White Box Testing” was performed,
which is a software testing method in which the internal structure/ design/ implementation of the
item being tested is known to the tester.

UNIT TESTING

MODULE
TESTING

SUB-SYSTEM
Component TESING
Testing

SYSTEM TESTING
Integration
Testing

ACCEPTANCE
TESTING
User
Testing

54
5.1.1. System testing:

Testing is an important part of software development. It is the process of finding errors and
missing operations and also a complex verification to determine whether the objectives are met
and the user requirements are satisfied. Following testing was carried out:

In Sky School Website, testing is carried out in Three Steps:

1. Unit Testing :
The first includes unit testing, where each module is tested to provide its correctness,
validity and also determine any missing operations and to verify whether the objectives
have been met. Errors are noted down and corrected immediately. Unit testing is the
important and major part of the project, so errors are rectified easily in a particular module
and program clarity is increased. Our project is divided into several modules and is
developed individually which helped in conducting unit testing.
2. Integration Testing:
The second step includes integration testing. It needs not to be the case, the software
whose modulus run individually and showing perfect results will also show perfect results
when running as a whole. The individual modules are clipped under this major module
and tested again verified the results. This is due to poor interfacing which may result in
data being lost across an interface. A module can have an inadvertent, adverse effect on
any other or on the global data structures, causing serious problems.
3. Validation:
The final step involves validation and testing which determines whether the software
functions as the user expected.

3.1. Client-Side Validation:


Various client-side validations are used to ensure in the client side that only
valid data is entered. A client-side validation saves time and load to handle
invalid data. Some checks imposed are:
1. The script is used to ensure those required fields are filled with suitable
data only. Maximum lengths of the fields of the forms are appropriately
defined.

55
2. Forms cannot be submitted without filling up the mandatory data so that
manual mistakes of submitting empty fields that are mandatory can be
sorted out at the client side to save the server time load
3. Tab-indexes are set according to the need and taking into account the ease
of user, while working with the system.

3.2. Server-Side Validation

Some checks cannot be applied on the client-side. Server-side checks are


necessary to save the system from failing and intimating the user that some
invalid operations have been performed or the performed operation is restricted.
Some of the server checks imposed are:-

1. Server side constraints have been imposed to check for the validity of
primary key and foreign key. A primary key value cannot be duplicated.

2. The user is intimated through messages about the successful operations or


exceptions occurring at the server-side.

3. Various Access Control Mechanisms have been built so that one user may
not agitate upon another. Access permissions to various types of users are
controlled according to the organizational structure. Only permitted users
can log on the system and can have access according to their category.
User- name, passwords, and permissions are controlled the server side.

56
CHAPTER 6

IMPLEMENTATION

6.1. Implementation Mechanisms Used:

Implementation is the stage where the theoretical design is turned into a working system. The
most crucial stage is achieving a new successful system and in giving confidence in the new
system for the users that it works efficiently and effectively.

The implementation phase comprises of several activities. In the first phase, the required
hardware and software acquisition was carried out. Updating the old website involved careful
planning, investigation of the current system and its constraints on implementation, the
design of methods to achieve the changeover and evaluation of change over methods apart
from planning.

After which the initial draft of the homepage and secondary page UI was generated. After
knowing the design of our project we looked up for the technologies that could help us in
creating a replica of the design.

Once we decided the technologies to be used then we encountered the problem of data
flow as the existing system had a lot of operations going on. To solve these problems we
created a data flow diagram up to level one and we also made a sitemap so as to keep a track
of the pages we were going to work on.

Once all the things were planned out we started their implementation and in the process, we
did the following things:

6.1. Admin Panel:-


In Admin panel, a search function is provided in student details and library management records
section. The records are then sorted and the top scaring pages are found.
6.2. Table Features:-
57
Admin can copy convert the table in excel , print and export in CSV pdf.
6.3. Library Management :-
Admin can add through the form and the registered student can issue the books.

6.4. Dashboard Faculty:-


There is a separate dashboard for faculty, where registered faculty can upload notes, view his/her
profile, view students , view subject, class & period.
6.5. Student Dashboard:-
There is a separate dashboard for student where registered student can download notes & issue
books, ask any query by filling the query form. The query form, view profiles , view classes, view
subject & view period.

In the last phase of our project, we did testing of our project and found some minor setbacks
out of which we were able to resolve a few of them. We are able to achieve most of our
design.

58
CHAPTER 7

LIMITATION

7.1. Limitations:

After thorough testing, some drawbacks were found that were not working according to the
specifications. They are:
1. Fee Management:
Another important feature that could be added in fee management system. This
include the ability to track student fees, generate invoices and receive payments.
2. Old Question Paper:
We were not able to provide old question paper in the student panel which might help
them in their exam.
3. Attendance Tracking:
Another important feature that was missing was attendance tracking. This features
allows schools to track student attendance in real time, Making it easier to monitor
student engagement and identify student who may be at a risk of falling behind.
4. Extracurricular Activities Management:
We were not able to add this features. How ever, this feature helps to manage other
activity like sports etc. a part from academics.
5. Parent Access: Another important feature that could be adds was parent access, as it
helps parent to keep an eye on the students performance and their activities.

59
CHAPTER 8

CONCLUSION

8.1. CONCLUSION

The project work titled “School Management System” has been designed using PHP Hypertext Pre
Processor (PHP) where in many user friendly form controls have been added in order to make it a user
interactive application. The system is developed in such a way that the user with common knowledge of
computers can handle it easily. The System developed has proved to be user friendly and efficient in
achieving basic goals. The system takes care of all the constrains which have specified. The system is
found to be really beneficial for the concerned aspects. Application developed is realistic and secure.

The main idea was to develop an easy to use front end using concept of HTML, CSS, JAVA SCRIPT,
and AJAX. All the possible user requests are accomplished buttons. Up to date reports can be generated
on user requests. All the validations have been done.

60
CHAPTER 9

FUTURE

SCOPE

9.1. FUTURE SCOPE:


This web application involves almost all the features of the online shopping. The future implementation
will be online help for customer and chatting with website administrator. In future we will make user
module also.

61
CHAPTER 10
REFERENCE/BIBLIOGRAPHY

 FOR PHP
I. www.php.net
II. www.phpreferencebook.com
III. www.w3schools.com
 FOR MySQL
I. www.msdn.microsoft.com
II. www.mysql.com
 BOOK’S
I. PHP: The Complete Reference
II. Professional PHP6
III. Learning PHP, MySQL and JavaScript
IV. Head First PHP & MySQL
V. PHP Solution

62

You might also like