Likhith P Srms Report
Likhith P Srms Report
Likhith P Srms Report
OBJECTIVES
To reduce wasting of time.
To reduce paper work.
To reduce effort of teachers.
To increase security.
To show results online from anywhere.
To simplify whole result management system.
Formally, a “Database” refers to a set of related data and the way it is organised.
Access to this data is usually provided by “Database management system” (DBMS)consisting
of a integrated set of computer software that allows the users to interact with one or more
databases and provides access to all of the data contained in the database (although
restrictions may exist that limit access to particular data). The DBMS provides various
functions that allow entry, storage, and retrieval of large quantities of information and
provides ways to manage how that information is organised.
Because of the close relationship between them, the term “database” is often used
casually to refer to both the database and the DBMS used to manipulate it.
Outside the world of professional information technology, the term Database is often
used to refer to any collection of related data (such as spreadsheet or a card index) as
however size and usage requirements typically necessitates use of database management
system.
Existing DBMSs provide various functions that allow management of a database and
its data which can be classified into four main functional groups:
• Data Definition: - Creation, modification and removal of definitions that define organization
of data
with generous memory and RAID disk arrays used for stable storage. RAID is used for
recovery of data if any of the disks fail. Hardware database accelerators, connected to one or
more servers via a high-speed channel, are also used in large volume transaction processing
environments. DBMSs are found at the heart of most database applications. DBMSs maybe
built around a customer multitasking kernel with built in networking support, built modern
DBMSs typically rely on standard operating system to provide these functions.
Since DBMSs comprise a significant market, computer and storage vendors often take into
account DBMS requirements in their own development plans.
Databases and DBMSs can be categorised according to database model(s) that they support
(such as relational or XML, the type(s) of computer they run on “from a server cluster to a
mobile phone”, the query language(s) used to access the database such as SQL or XQuery),
and their internal engineering, which effects performance, scalability, resilience and security.
The sizes, capabilities and performance of databases and their respective DBMSs
have grown in orders of magnitude. These performances increase where enabled by the
technology progress in the areas of processor computer memory, computer storage and
computer networks. The development of database technology can be divided into three eras
based on data model or structure: Navigational, SQL / relational and post -relational.
The two main early navigational data models were the hierarchical model and the Codasyl
model (network model).
The relational model, first proposed in 1970 by Edgar F. Codd, departed from this tradition
by insisting that applications should be searched for data by content, rather than by following
links. The relational model employs set of ledger-style tables, each used for a different type
of entity. Only in the mid-1980s did computing hardware become powerful enough to allow
the wide development of relational systems (DBMSs plus applications) . By the early 1990s,
however, relational systems dominated in all large-scale data processing applications and as
of 2018 they remain dominant: IBM DB2, Oracle, MySQL and Microsoft SQL server are the
most searched DBMS. The dominant database language, standardized SQL for the relational
model, has influenced database languages for other data models. Object databases were
developed in the 1980s to overcome the inconvenience of object-relational impedance
mismatch, which lead to the coining of the term “post-relational” and also the development of
hybrid object-relational databases.
The next generation of post-relational databases in the late 2000s became known as No SQL
databases, introducing fast key-value stores and document-oriented databases a completing
“next generation” known as New SQL databases attempted new implementations that
retained the relational / SQL model while aiming to match the high performance of No SQL
compared to commercially available relational DBMS.
1.4 DEFINITIONS
Applications of Database are many; however, some of them are as explained below:
• Databases for Businesses: The business world depends on databases 24 hours a day, seven
days a week. Inventory, order processing, payroll, accounting, shipping, and transportation
routing is often tracked within a main database that keeps the company functioning.
• Databases for Education: From elementary schools to colleges, educational institutions use
databases to keep track of students, grades, transfers, transcripts, and other student data.
There are even specialized database packages geared toward schools and college.
• Databases for Non-Profits: Like businesses and educational institutions, non-profit
organizations use systems to track information. Many charities and other non-profit groups
use a database to store details of donations, volunteers, hours served in the community,
clients helped and other information related to the organization.
• Databases for Household and Family Management: The database also has a role in
household and family management. Many people use databases to keep track of family
birthdays, bills, and expenses in the home; addresses of friends and relatives and movie/DVD
collections.
1.6 Advantages
• An organized and comprehensiveness of recording the result of the firms’ activities.
• A receiver of data to be used in meeting the information requirement of the MIS users.
• Improved data access to users through use of host and query languages.
In this section the various requirements that are essential for this project are specified.
These requirements have to be fulfilled for successful execution of the project. The purpose,
scope along with hardware and software requirements is given below:
SYSTEM REQUIREMENTS
RAM : 4 GB
CHAPTER 3:
DESCRIPTION OF TOOLS AND TECHNOLOGIES
PHP: -
PHP is now officially known as “PHP: Hypertext Pre-processor”. It is a server-side
scripting language usually written in an HTML context. Unlike an ordinary HTML page, a
PHP script is not sent directly to a client by the server; instead, it is parsed by the PHP binary
or module, which is server-side installed. HTML elements in the script are left alone, but
PHP code is interpreted and executed. PHP code in a script can query databases, create
images, read and write files, talk to remote servers – the possibilities is endless. The output
from PHP code is combined with the HTML in the script and the result sent to the user’s
web-browser, therefore it can never tell the user whether the web-server uses PHP or not,
because the entire browser sees is HTML. PHP’s support for Apache and MySQL further
increases its popularity. Apache is now the most used web-server in the world, and PHP can
be compiled as an Apache module. MySQL is a powerful free SQL database, and PHP
provides a comprehensive set of functions for working with it. The combination of Apache,
MySQL and PHP is all but unbeatable. That doesn’t mean that PHP cannot work in other
environments or with other tools. In fact, PHP supports an extensive list of databases and
web-servers. While in the mid-1990s it was ok to build sites, even relatively large sites, with
hundreds of individual hard-coded HTML pages, today’s webmasters are making the most of
the power of databases to manage their content more effectively and to personalize their sites
according to individual user preferences.
Unique Features
If you are familiar with other server-side language like ASP.NET or JSP you might be
wondering what makes PHP so special, or so different from these competing alternatives
well, here are some reasons:
1. Performance
2. Portability (Platform Independent)
3. Ease Of Use
4. Open Source
5. Third-Party Application Support
6. Community Support
Reasons for using PHP: There are some indisputable great reasons to work with PHP. As
an open-source product, PHP is well supported by a talented production team and a
committed user community. Furthermore, PHP can be run on all the major operating
systems with most servers.
Basic PHP Syntax: a PHP scripting block always starts with a PHP scripting block can be
placed anywhere in the document. On servers with shorthand support enabled you can start
a scripting block with. However, for maximum compatibility, we recommend that you use
the standard form (<?php) rather than the shorthand form. A PHP file normally contains
HTML tags, just like an HTML file, and some PHP scripting code.
PHP Server
The PHP Community Provides Some types of Software Server solution under The
GNU (General Public License).
HTML 5: -
HTML5 will be the new standard for HTML. The previous version of HTML,
HTML 4.01, came in 1999. The web has changed a lot since then. HTML5 is still a work
in progress. However, the major browsers support many of the new HTML5 elements and
APIs. HTML5 is cooperation between the World Wide Web Consortium (W3C) and the
Web Hypertext Application Technology Working Group (WHATWG).In 2006, they
decided to cooperate and create a new version of HTML. Some rules for HTML5 were
established: a) New features should be based on HTML, CSS, DOM, and JavaScript. b)
Reduce the need for external plug-ins (like Flash). c) better error handling. d) More
markup to replace scripting. e) HTML5 should be device independent. f) The
development process should be visible to the public.
STRUCTURE OF HTML
HTML elements perform a defined task. HTML uses two types of elements
Empty Tags
Container Tags
These tags differ because of what they represent. Empty tags represent formatting
constricts such as line breaks and horizontal rules. Container tags define a section of text,
formats, and dot all of the selected text. A container tag has both a beginning and an
ending.
HTML LAYOUT:
An HTML document consists of text, which comprises the content of the document
and tags, which, defines the structure, and appearance of the document. The structure of
an HTML document is simple, consists of outer.
<HTML>
<HEAD>
</HEAD>
<BODY>
</BODY>
</HTML>
Each document has a head and body delimited by the <HEAD> and <BODY> tag. The
head is where you give your HTML document a title and where you indicate other
parameters the browser may use when displaying the document. This includes the text for
displaying the text. Tag also references special and indicates the hot spots that link your
document to other documents.
HTML FORMS:
Creating a form usually involves two independent steps: Creating the layout for the
form itself and then writing a script program on the server side to process the formation
you get back from a form.
To create a form, you use the <FORM> tag. Inside the opening and closing FORM tags
are each of the individual form elements plus any other HTML content to create a layout
for that form.
The opening tag of the FORM element usually includes the attributes: METHOD and
ACTION. The METHOD attributes can be either GET or POST which determines how
your form data is sent to the script to process it.
The ACTION attribute is a pointer to the script that processes the form on the server side.
The ACTION can be included by a relative path or by a full URL to a script on your
server or somewhere else. For example, the following <FORM> tag would call a script
called form-name in cgi-bin directory on server www.myservser.com
……………….
</FORM>
CSS: -
CSS tutorial or CSS 3 tutorial provides basic and advanced concepts of CSS
technology. Our CSS tutorial is developed for beginners and professionals. The major
points of CSS are given below:
a) CSS stands for Cascading Style Sheet.
b) CSS is used to design HTML tags.
c) CSS is a widely used language on the web.
d) HTML, CSS and JavaScript are used for web designing.
It helps the web designers to apply style on HTML tags. Cascading Style Sheets (CSS) is
a style sheet language used for describing the look and formatting of a document written
in a markup language. While most often used to style web pages and user interfaces
written in HTML and XHTML, the language can be applied to any kind of XML
document, including plain XML, SVG and XUL. CSS is a cornerstone specification of
the web and almost all web pages use CSS style sheets to describe their presentation.
The first browser to support java script was the Netscape Navigator 2.0 of course the
higher versions do have java script as well. You might know that java does not run on all
Netscape Navigators 2.0 (or higher versions) versions. But this is not true for java script -
although there are some problems with the different versions.
The Mac version for example seems to have many bugs. In the near future there are
going to be some other browsers, which support java script. The Microsoft Internet
explorer 3.0 is going to support java script. JavaScript enabled browsers are going to
spread soon - it is worth learning this new technique now. You might realize that is really
easy to write Java Script scripts. We have to know is some basic techniques and some
work-around for problems you might encounter. Of course we need a basic.
Understanding HTML before reading this tutorial you can find many really good online
resources about HTML. Best you make an online search about ‘html’ at yahoo if you
want to get informed about HTML. Now I want to show some small scripts so you can
learn how they are implemented into HTML-documents and to show which possibilities
you have with the new scripting language. The following is a very small script, which
will only print a text into an HTML document.
<html>
<head>
My first JavaScript
</head>
<body><br>
<br>
<script language=”JavaScript”>
</script><b r>
</body>
</html>
If you are using a java script enabled-browser at the moment then you will have the
possibility to see this script working. If your browser doesn’t support Java Script then this
output might be some kind of strange.
Functions
Functions are bet declared between the <Head> tag of HTML page. Functions are
called by user-initiated events. Seems reasonable to keep the functions between the
<Head> tags. They are loaded first before a user can do anything that might call a
function. Scripts can be placed between inside comment fields to ensure that older
browser do not display the script itself.
<html>
<head>
<script language=”JavaScript”>
alert (“Hello!”);
</script>
</head>
<body>
<form>
</form>
</body>
</html>
If we want to test this one immediately and you are using a Java Script enabled browser
then please go ahead and push the button.
This script will create a button and when you press it a window will pop up saying
“hello!”. In fact we have a lot of possibilities just by adding functions to our scripts.
The common browsers transmit the form information by either method: here’s the
complete tag including the GET transmission method attribute for the previous form
Example
………
</form>
Input elements.
Use the <input> tag to define any one of a number of common form elements
including text fields multiple choice lists click able images and submission buttons.
There are many attributers for this tag only that types and name attributes are required for
each element, each type of input element uses only a subset of the followed attributes.
Additional <input> attributes may be required based upon which type of the form element
you specify.
Submit button:
The submit button (<input type=submit> ) does what its name implies, settings in
motion the form’s submission to the server from the browser. We many have more than
submit buttons will be added to the parameter list the browser sends along to the server.
Example
Reset button:
The reset button if firm <input> button is nearly self- explanatory; it lets the user reset
erase or set to some default value all elements in the form. By default the browser
displays a reset button worth the label “reset”. We can change that by specifying a value
attribute with tour own button label.
BACK-END TECHNOLOGY:
MY SQL SERVER: -
It is an open-source It is relational database management system (RDBMS) Its
name is a Combination of “My”, the name of co-founder Michael Widenius's daughter
and "SQL", the abbreviation for Structured Query Language . The MySQL development
project as made its source code available under the terms of the GNU General Public
License, as well as under a variety of proprietary agreements.
My SQL was owned and sponsored by a single for-profit firm, the Swedish Company My
SQL AB ,now owned by Oracle Corporation. For proprietary Use several Paid editions
are available, and offer additional functionality.
The My SQL server package will install the MySQL database server which can interact
with using a My SQL client. User can use the My SQL client to send commands to any
MySQL server; on are mote computer The My SQL server is used to persist the data and
provide a query interface for it (SQL) . The My SQL client’s purpose is to allow you to
use that query interface. The client package also comes with utilities that allow ‘s you to
easily backup/ restore data and administer the server.
There are a large number of database management systems currently available, some
commercial and some free. Some of them: Oracle, Microsoft Access, Mysql and
PostgreSQL.
These database systems are powerful, feature-rich software, capable of organizing and
searching millions of records at very high speeds. Understanding Databases, Records, and
Primary Keys. Every Database is composed of one or more tables. These Tables, which
structure data into rows and columns, Impose organization on the data. The records in a
table(below) are not arranged in any particular order.
Data Definition Language (DDL) : DDL Consists of statements that define the structure
and relationships of a database and its table. These Statements are used to Create,
drop and modify databases and tables.
Data Manipulation Language (DML) : DML statements are related to altering and
extracting data from a database.
These statements are used to add records to, update records in, and delete records from, a
database; perform queries; retrieve table records matching one or more user specified
criteria; and join tables together using their common fields.
Data Control Language (DCL) : DCL statements are sued to define access levels and
security privileges for a database.
You would use these statements to grant or deny user privileges; assign roles; change
passwords; view permissions; and create rulesets to protect access to data.
The Syntax of SQL is quite intuitive. every SQL statement begins with an “action word”,
like DELETE, INSERT, ALTER etc. It ends with a semicolon. whitespace, tabs, carriage
returns are ignored.
CHAPTER 4:
SYSTEM DESIGN
4.1 INTRODUCTION
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 analysed and specified the software
design involves three technical activities - design, coding, implementation, and
testing that are required to build and verify the software.
Attributes in ER diagrams are usually modelled as an oval with the name of the
attribute, linked to the entity or relationship that contains the attribute.
SYMBOL PURPOSE
Represent
Attributes.
admin
id username password updationDate
tblclasses
tblnotice
tblresult
id studentId classId subjectId marks postingDate updatingDate
tblstudents
tblsubjectcombination
id classId subjectId status creationDate updationDate
tblsubjects
id subjectName subjectCode
Student
Admin
Admin Features
Admin Dashboard
Admin can add/update/Class
Admin can add/update/Subjects
Admin can add/update/Subject combination with class
Admin can register new student and edit info of the student
Admin can declare/edit result of a student.
Admin can add/delete notices.
Admin can change own password
Students-
CHAPTER 5:
TESTING
Testing is a process of executing a program with the intent of finding an error. Testing
is a crucial element of software quality assurance and presents ultimate review of
specification, design and coding.
System Testing is an important phase. Testing represents an interesting anomaly for the
software. Thus a series of testing are performed for the proposed system before the system is
ready for user acceptance testing.
A good test case is one that has a high probability of finding an as undiscovered error. A
successful test is one that uncovers an as undiscovered error.
Testing Objectives:
Testing Principles:
The primary objective for test case design is to derive a set of tests that has the highest
livelihood for uncovering defects in software. To accomplish this objective two different
categories of test case design techniques are used. They are
White-box testing:
White box testing focus on the program control structure. Test cases are derived to
ensure that all statements in the program have been executed at least once during testing and
that all logical conditions have been executed.
Block-box testing:
Black box testing is designed to validate functional requirements without regard to the
internal workings of a program. Black box testing mainly focuses on the information domain
of the software, deriving test cases by partitioning input and output in a manner that provides
through test coverage. Incorrect and missing functions, interface errors, errors in data
structures, error in functional logic are the errors falling in this category.
Testing strategies:
A strategy for software testing must accommodate low-level tests that are necessary to
verify that all small source code segment has been correctly implemented as well as high-
level tests that validate major system functions against customer requirements.
Testing fundamentals:
Testing is a process of executing program with the intent of finding error. A good test
case is one that has high probability of finding an undiscovered error. If testing is conducted
successfully, it uncovers the errors in the software. Testing cannot show the absence of
defects, it can only show that software defects present.
Information flow for testing flows the pattern. Two class of input provided to test the
process. The software configuration includes a software requirements specification, a design
specification and source code.
Test configuration includes test plan and test cases and test tools. Tests are conducted
and all the results are evaluated. That is test results are compared with expected results. When
erroneous data are uncovered, an error is implied and debugging commences.
Unit Testing:
Unit testing is essential for the verification of the code produced during the coding
phase and hence the goal is to test the internal logic of the modules. Using the detailed
design description as a guide, important paths are tested to uncover errors with in the
boundary of the modules. These tests were carried out during the programming stage itself.
All units of Vienna SQL were successfully tested.
Integration testing:
Integration testing focuses on unit tested modules and build the program structure that
is dictated by the design phase.
System testing:
System testing tests the integration of each module in the system. It also tests to find
discrepancies between the system and its original objective, current specification and system
documentation. The primary concern is the compatibility of individual modules. Entire
system is working properly or not will be tested here, and specified path ODBC connection
will correct or not, and giving output or not are tested here these verifications and validations
are done by giving input values to the system and by comparing with expected output. Top-
down testing implementing here.
Acceptance Testing:
This testing is done to verify the readiness of the system for the implementation.
Acceptance testing begins when the system is complete. Its purpose is to provide the end user
with the confidence that the system is ready for use. It involves planning and execution of
functional tests, performance tests and stress tests in order to demonstrate that the
implemented system satisfies its requirements. Tools to special importance during acceptance
testing include: Test coverage Analyzer – records the control paths followed for each test
case. Timing Analyzer – also called a profiler, reports the time spent in various regions of the
code are areas to concentrate on to improve system performance.
Coding standards – static analysers and standard checkers are used to inspect code for
deviations from standards and guidelines.
CHAPTER 6:
IMPLEMENTATION AND CODE
In the following example we store the connection in a variable ($con) for later use in the
script.
<?php
// Create connection
$con=mysqli_connect("localhost","root","") or die(mysql_error());
?>
Here localhost is server name. root is MySQL default user name. default password is blank
and database name is my_db. mysql_error( ) function provides mysql connectivity error
message.
// Create connection
$con=mysqli_connect("localhost","root","","my_db") or die(mysql_error());
//code to be executed.
// Close connection
mysql_close($con);
?>
After work with the database is done we have to close the connection using mysql_close()
function in which the connection to the database is passed.
CONFIGURATION CODE
<?php
// DB credentials.
define('DB_HOST','localhost');
define('DB_USER','root');
define('DB_PASS','');
define('DB_NAME','srms');
try
{
$dbh = new PDO("mysql:host=".DB_HOST.";dbname=".DB_NAME,DB_USER,
DB_PASS,array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"));
}
catch (PDOException $e)
{
exit("Error: " . $e->getMessage());
}
?>
CHAPTER 7:
SNAPSHOTS
7.1 Home Page
CHAPTER 8:
CONCLUSION
The package was designed in such a way that future modifications can be
done easily. The following conclusions can be deduced from the development
of the project.
CHAPTER 8:
BIBLIOGRAPHY
The following books were referred during the analysis and execution phase of
the project
PHP and MySQL Web Development
WEBSITES:
www.google.com
www.w3schools.com
www.tutorialspoint.php
http://stackoverflow.com