Вы находитесь на странице: 1из 34


Online voting system project is implemented in PHP platform using Mysql database as
back end. Main aim of online voting system is to develop an online application like online
reservation system, for citizens who are above 18 years of age of vote through online. Using
this system citizen of India can vote through online without visiting polling both. A
centralized database is maintained by election commission of India where citizen’s
information is maintained when ever citizen is using online voting system his/her information
is authenticated with the data present in database if user is not in the list he cannot use online
voting system.
 Online voting system (OVS) is a web based application system.
 Online voting system is voting software.
 It consist of four groups, namely-
 General voter
 Candidate/ Nominee
 Administrator

There is a database which is maintained in which all the names of voter with complete
information are stored. If invalid/wrong details are submitted, then the citizen is not
registered to vote.

Objectives: -
Traditional voting system –
 Inefficient
 Take time and human resources
 Does not give an instant poll result
 Hard to track who voted and who don’t

Online voting system –

 Instant poll result

 Easy to keep track of voters
 Use of internet
Problem with the Exiting Voter Registration System :-
1. Expansive and time consuming.
2. Too much paper work.
3. Errors during data entry.
4. Loss of registration forms.

5. Short time provided to view the voter register.

Solution of these Problem :-

 In this online voting paper work are not use.
 Long time provide to view the voter register.
 In online voting registration forms are not needed.
 Minimum chance of error.

2. System Development Life Cycle
2.1 Software Development Life Cycle
SDLC is a process followed for a software project , withn a software organization. It consist
of a detail plan describing how to develop , maintain , replace and alter or enhance specific
software. The life cycle defines a methodology for improving the quality of software and
overall development process.

2.2 Different phases of SDLC

1. Requirement Gathering and Analysis:-
The first phase is where businesses will work on the source of their problem or the need for a
change. In the event of a problem, possible solutions are submitted and analyzed to identify
the best fit for the ultimate goal(s) of the project. This is where teams consider the functional
requirements of the project or solution. It is also where system analysis takes place—or
analyzing the needs of the end users to ensure the new system can meet their expectations.
Systems analysis is vital in determining what a business"s needs are, as well as how they can
be met, who will be responsible for individual pieces of the project, and what sort of timeline
should be expected.
There are several tools businesses can use that are specific to the second phase. They include:
 CASE (Computer Aided Systems/Software Engineering)
 Requirements gathering
 Structured analysis

2. Systems Design:-
The second phase describes, in detail, the necessary specifications, features and operations
that will satisfy the functional requirements of the proposed system which will be in place.
This is the step for end users to discuss and determine their specific business information
needs for the proposed system.It"s during this phase that they will consider the essential
components (hardware and/or software) structure (networking capabilities), processing and
procedures for the system to accomplish its objectives.

3. Implementation:-
The sixth phase is when the majority of the code for the program is written. Additionally, this
phase involves the actual installation of the newly-developed system. This step puts the
project into production by moving the data and components from the old system and placing
them in the new system via a direct cutover. While this can be a risky (and complicated)
move, the cutover typically happens during off-peak hours, thus minimizing the risk. Both
system analysts and end-users should now see the realization of the project that has
implemented changes.

4. Integration and Testing:-

The fourth phase involves systems integration and system testing (of programs and
procedures)—normally carried out by a Quality Assurance (QA) professional—to determine
if the proposed design meets the initial set of business goals. Testing may be repeated,
specifically to check for errors, bugs and interoperability. This testing will be performed until
the end user finds it acceptable. Another part of this phase is verification and validation, both
of which will help ensure the program"s successful completion.

5. Deployment:-
The fifth phase is when the real work begins—in particular, when a programmer, network
engineer and/or database developer are brought on to do the major work on the project. This
work includes using a flow chart to ensure that the process of the system is properly
organized. The development phase marks the end of the initial section of the process.
Additionally, this phase signifies the start of production. The development stage is also
characterized by instillation and change. Focusing on training can be a huge benefit during
this phase.

6. Maintenance:-
The seventh and final phase involves maintenance and regular required updates. This step is
when end users can fine-tune the system, if they wish, to boost performance, add new
capabilities or meet additional user requirements.

3. Techonologies Used
3.1 Front End
In 1980, physicist Tim Berners-Lee, who was a contractor at CERN, proposed and
prototyped ENQUIRE, a system for CERN researchers to use and share documents. In 1989,
Berners-Lee wrote a memo proposing an Internet-based hypertext system. Berners-Lee
specified HTML and wrote the browser and server software in late 1990. That year, Berners-
Lee and CERN data systems engineer Robert Cailliau collaborated on a joint request for
funding, but the project was not formally adopted by CERN. In his personal notesfrom 1990
he listed "some of the many areas in which hypertext is used" and put an encyclopedia
first.To publish information for global distribution, one needs a universally understood
language, a kind of publishing mother tongue that all computers may potentially understand.
The publishing language used by the World Wide Web is HTML (Hyper Text Markup
Language).HTML gives authors the means to:
1. Publish online documents with headings, text, tables, lists, photos, etc.
2. Retrieve online information via hypertext links, at the click of a button.
3. Design forms for conducting transactions with remote services, for use in searching
for information, making reservations, ordering products, etc.
4. Include spread-sheets, video clips, sound clips, and other applications directly in their
HTML files are ASCII files that usually contain formatting instructions known as tags within
For example, a browser will display … initial text <I>italized text</I> trailing text …
in an HTML file as … initial text italized text trailing text …
on the screen. Extra spaces, tabs, and blank lines frequently appear in HTML files to make
them easier to check for errors, but browsers ordinarily ignore them. Instead, tags and special
symbols must be used to display extra spaces and other formatting effects. Similarly, the
width of the lines in an HTML file is not important, since browsers expand or contract text to
make it fit the browser window.

Paired Tags
Most tags are matched pairs, such as <I> and </I>, with a slash before the trailer. They are
shown in upper case, but HTML generally is not case sensitive, so they also can be in lower
A few commonly used tags are presented in the order that they frequently are used in an
HTML file.
· <HTML> and </HTML> must enclose the entire file.
· <HEAD> and </HEAD> begin and end the header which includes information about the
file, such as its title or other items used by Web search engines.
· <TITLE> and </TITLE> begin and end the title that appears at the top of the browser’s
· <BODY> and </BODY> enclose the body of the document to be displayed by the browser.
· <CENTER> and </CENTER> surround text that is to be centred with a blank line after it.
· <H1> and </H1> to <H6> and </H6> start and stop different sized headings (1 for large
and 6 for small) that are in bold text with space before and after.
· <P> and </P> mark the beginning and ends of paragraphs that browsers separate with a
carriage return and a blank line.
· <I> and </I> mark italicized text.
· <B> and </B> mark bold text.

Many tags can contain additional information known as “attributes.”
For example, the paragraph tags
<P ALIGN = LEFT></P> cause a paragraph to be left justified, the default. Other values of
the ALIGN attribute are CENTER, JUSTIFY, and RIGHT.
Single Tags
A few tags do not have to appear as pairs, such as the ones shown below.
· <BR> breaks a line without inserting an extra blank line like the <P> and </P> pair does.
· <HR> inserts a horizontal line.
· <IMG SRC = "filename.ext"> inserts the image in filename.ext, where .exttypically is .gif
or .jpg.

· <!--comments that do not display--> uses the initial <! to signal that what follows is a
comment not to be displayed. Inclusion of the two dashes (--) is not mandatory, but it does
help some software.

Special Characters
Some symbols, such as the less-than and greater-than signs, cannot be displayed unless they
are entered in a special way. Many special symbols are assigned numbers, and such symbols
are displayed by entering &# followed by the symbol number and a semi-colon. For example,
the symbols <>& # are entered in an HTML file as:
&#60; &#62; &#38; &#35;
Some symbols are entered with an initial & followed by an abbreviation, such as &nbsp for a
non-breaking space that can be used to force paragraph indentations or extra spacing.

The paired tags <A> and </A> designate an "anchor" such as the location of a file or even a
specific place within it. The hypertext reference attribute produces a hyperlink, as illustrated
by the following examples.
A reference to a file in the same directory as the HTML file given by
… visit<A HREF = "same.htm"> description of same.htm </A> to see …
Appears on the screen as:
… Visit description of same.htm to see …
Standard DOS naming conventions allow use of relative or absolute addresses of files on the
same machine.
For example, the link <A HREF="../Over/Down.htm"> another directory </A> in
MyFile.htm in directory MyDirrefers to the file Down.htm in directory, references are always
enclosed in quotes. If the reference is to a file on another machine, then give the file’s name
as part of an URL.
For example, the reference "http://engr.smart_u.edu/dir1/dir2/index.htm" points to the file
named index.htm on the machine engr.smart_u.edu in the directory \dir1\dir2. Notice that the
hypertext reference uses front slashes for directories (as does Unix), but Windows and DOS
use back slashes. The preceding anchors describe links to other files. Anchors also can
designate locations within a file.

The first publicly available description of HTML was a document called "HTML Tags", first
mentioned on the Internet by Berners-Lee in late 1991. It describes 18 elements comprising
the initial, relatively simple design of HTML. Except for the hyperlink tag, these were
strongly influenced by SGMLguide, an in-house SGML-based documentation format at
CERN. Eleven of these elements still exist in HTML
Hypertext Markup Language is a markup language that web browsers use to interpret and
compose text, images and other material into visual or audible web pages. Default
characteristics for every item of HTML markup are defined in the browser, and these
characteristics can be altered or enhanced by the web page designer's additional use of CSS.
Many of the text elements are found in the 1988 ISO technical report TR 9537 Techniques
for using SGML, which in turn covers the features of early text formatting languages such as
that used by the RUNOFF command developed in the early 1960s for the CTSS (Compatible
Time-Sharing System) operating system: these formatting commands were derived from the
commands used by typesetters to manually format documents. However, the SGML concept
of generalized markup is based on elements (nested annotated ranges with attributes) rather
than merely print effects, with also the separation of structure and markup; HTML has been
progressively moved in this direction with CSS.
HTML is written in the form of HTML elements consisting of tags enclosed in angle
brackets (like <html>). HTML tags most commonly come in pairs like <h1> and </h1>, although
some tags represent empty elements and so are unpaired, for example <img>. The first tag in a
pair is the start tag, and the second tag is the end tag (they are also called opening tags and
closing tags).
The purpose of a web browser is to read HTML documents and compose them into visible or
audible web pages. The browser does not display the HTML tags, but uses the tags to
interpret the content of the page. HTML describes the structure of a website semantically
along with cues for presentation, making it a markup language rather than a programming
HTML elements form the building blocks of all websites. HTML allows images and objects
to be embedded and can be used to create interactive forms. It provides a means to create
structured documents by denoting structural semantics for text such as headings, paragraphs,

lists, links, quotes and other items. It can embed scripts written in languages such as
JavaScript which affect the behavior of HTML web pages.

3.1.2 Cascading Style Sheets

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 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.
CSS is designed primarily to enable the separation of document content from document
presentation, including elements such as the layout, colors, and fonts. This separation can
improve content accessibility, provide more flexibility and control in the specification of
presentation characteristics, enable multiple pages to share formatting, and reduce
complexity and repetition in the structural content (such as by allowing for tableless web
CSS can also allow the same markup page to be presented in different styles for different
rendering methods, such as on-screen, in print, by voice (when read out by a speech-based
browser or screen reader) and on Braille-based, tactile devices. It can also be used to allow
the web page to display differently depending on the screen size or device on which it is
being viewed. While the author of a document typically links that document to a CSS file,
readers can use a different style sheet, perhaps one on their own computer, to override the
one the author has specified. However if the author or the reader did not link the document to
a specific style sheet the default style of the browser will be applied.
CSS specifies a priority scheme to determine which style rules apply if more than one rule
matches against a particular element. In this so-called cascade, priorities or weights are
calculated and assigned to rules, so that the results are predictable.
The CSS specifications are maintained by the World Wide Web Consortium (W3C). Internet
media type (MIME type) text/css is registered for use with CSS by RFC 2318 (March 1998),
and they also operate a free CSS validation service.
In CSS, selectors are used to declare which part of the markup a style applies to, a kind of
match expression. Selectors may apply to:
 all elements of a specific type, e.g. the second level headers h2

 To elements specified by attribute, in particular:
o id: an identifier unique to the document
o class
 To elements depending on how they are placed relative to, or nested within, others in
the document tree.
Classes and IDs are case-sensitive, start with letters, and can include alphanumeric characters
and underscores. Any number of instances of any number of elements may have the same
class. Conventionally, IDs only apply to one instance of one element.
Pseudo-classes are used in CSS selectors to permit formatting based on information that is
outside the document tree. An often-used example of a pseudo-class is :hover, which
identifies content only when the user 'points to' the visible element, usually by holding the
mouse cursor over it. It is appended to a selector as in a:hover or #elementid:hover. A
pseudo-class classifies document elements, such as:link or :visited, whereas a pseudo-
element makes a selection that may consist of partial elements.

Java Script
JavaScript (JS) is a dynamic computer programming language. It is most commonly used as
part of web browsers, whose implementations allow client-side scripts to interact with the
user, control the browser, communicate asynchronously, and alter the document content that
is displayed. It is also being used in server-side programming, game development and the
creation of desktop and mobile applications.
JavaScript is a prototype-basedscripting language with dynamic typing and has first-class
functions. Its syntax was influenced by C. JavaScript copies many names and naming
conventions from Java, but the two languages are otherwise unrelated and have very different
semantics. The key design principles within JavaScript are taken from the Self and Scheme
programming languages. It is a multi-paradigm language, supporting object-oriented,
imperative, and functional programming styles.
The application of JavaScript in use outside of web pages—for example, in PDF documents,
site-specific browsers, and desktop widgets—is also significant. Newer and faster JavaScript
VMs and platforms built upon them (notably Node.js) have also increased the popularity of
JavaScript for server-side web applications. On the client side, JavaScript was traditionally

implemented as an interpreted language but just-in-time compilation is now performed by
recent (post-2012) browsers.
JavaScript was formalized in the ECMA Script language standard and is primarily used as
part of a web browser (client-sideJavaScript). This enables programmatic access to
computational objects within a host environment.

A Web browser is actually a software application that runs on your Internet-connected
computer. It allows you to view Web pages, as well as use other content and technologies
such as video, graphics files, and digital certificates, to name a few.
How Do Web Browsers Work?
The World Wide Web is a system of Internet servers that support specially formatted
documents. Web browsers are used to make it easy to access the World Wide Web. Browsers
are able to display Web pages largely in part to an underlying Web protocol called Hypertext
Transfer Protocol (HTTP). HTTP defines how messages are formatted and transmitted, and
what actions Web servers and browsers should take in response to various commands. It is
what allows Web clients and Web servers to communicate with each other. When you enter a
Web address (URL) in your browser, this actually sends an HTTP command to the Web
server directing it to fetch and transmit the requested Web page and display the information
in your browser. All Web servers serving Web sites and pages support the HTTP protocol.
Mozilla Firefox is a free and open source web browser developed for Windows, OS X,
and Linux, with a mobile version for Android, by the Mozilla Foundation and its subsidiary,
the Mozilla Corporation. Firefox uses the Gecko layout engine to render web pages, which
implements current and anticipated web standards.
Open source is model of software development that allows product’s code to be freely
available to view and modify, usually with the expectation that any changes made will be
given back to the community for its use. This permission to view and change code allows
those with interest and skill in the product to contribute changes.
Firefox is available for free from the Mozilla Foundation, http://www.mozilla.org/.

The Firefox project began as an experimental branch of the Mozilla project by Dave Hyatt,
Joe Hewitt and Blake Ross. They believed the commercial requirements of Netscape's
sponsorship and developer-driven feature creep compromised the utility of the Mozilla
browser. To combat what they saw as the Mozilla Suite's software bloat, they created a stand-
alone browser, with which they intended to replace the Mozilla Suite. On April 3, 2003, the
Mozilla Organization announced that they planned to change their focus from the Mozilla
Suite to Firefox and Thunderbird. The Firefox project has undergone several name changes.
Originally titled Phoenix, it was renamed because of trademark problems with Phoenix
Technologies. The replacement name, Firebird, provoked an intense response from the
Firebird free database software project. In response, the Mozilla Foundation stated that the
browser should always bear the name Mozilla Firebird to avoid confusion with the database
software. After further pressure from the database server's development community, on
February 9, 2004, Mozilla Firebird became Mozilla Firefox.

Features include tabbed browsing, spell checking, incremental find,live bookmarking, smart
bookmarks, a download manager, private browsing, location-aware browsing (also known as
"geolocation") based on a Google service and an integrated search system that uses Google
by default in most localizations. Functions can be added through extensions, created by third-
party developers, of which there is a wide selection, a feature that has attracted many of
Firefox's users. Additionally, Firefox provides an environment for web developers in which
they can use built-in tools, such as the Error Console or the DOM Inspector, or extensions,
such as Firebug.

3.2 Back End
Xamp Tool
XAMPP is a free and open source cross-platform web server solution stack package,
consisting mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts
written in the PHP and Perl programming languages.
XAMPP requires only one zip, tar, 7z, or exe file to be downloaded and run, and little or no
configuration of the various components that make up the web server is required. XAMPP is
regularly updated to incorporate the latest releases of Apache, MySQL, PHP and Perl. It also
comes with a number of other modules including Open SSL and phpMyAdmin.
Self-contained, multiple instances of XAMPP can exist on a single computer, and any given
instance can be copied from one computer to another. It is offered in both a full, standard
version and a smaller version.
Officially, XAMPP's designers intended it for use only as a development tool, to allow
website designers and programmers to test their work on their own computers without any
access to the Internet. To make this as easy as possible, many important security features are
disabled by default. In practice, however, XAMPP is sometimes used to actually serve web
pages on the World Wide Web. A special tool is provided to password-protect the most
important parts of the package.
XAMPP also provides support for creating and manipulating databases in MySQL and
SQLitte among others.
Once XAMPP is installed, it is possible to treat a local host like a remote host by connecting
using an FTP client. Using a program like File zilla has many advantages when installing a
content management system (CMS) like joomla. It is also possible to connect to local host
via FTP with an HTML editor.
The default FTP user is "new user", the default FTP password is "wamp".
The default My SQL user is "root" while there is no default MySQL password.

4. Hardware and Software requirement
4.1 Software requirement:-
1. MYSQL DBMS: - it allow combination, extraction, manipulation &

organization of data in the voter’s database.

2. Net beans IDE 7.1.2 :- the net beans IDE is an award –winning integrated
development environment available for window, Mac, Linux & Solaris.

3. JAVA coding: - this is for advance user who find PHP codes easy to work


4. Testing: - testing is done via. XAMPSERVER.

5. Web browsers: - Mozilla Firefox, Google chrome, opera and internet


6. Reporting tool: - reporting tool i.e. through data report.

4.2 Hardware requirement:-

 Microsoft windows XP professional SP3/Vista SP1/Windows 7
professional :
 Processor:- 800 MHZ Intel Pentium 111 or equivalent
 Memory:- 512 MB
 Disk space: - 750 MB of free disk space.
 Ubuntu 9.10 :-
 Processor:- 800 MHZ Intel Pentium 111 or equivalent

 Memory:- 512 MB
 Disk space: - 650 MB of free disk space.

5. System design

Table 1:-Branch
Sr.No. Fields Data Type Constraint
1. BranchID Int(11) Primary

2. BranchName Varchar(50) Not Null

Table 2:-Nominee
Sr.No. Fields Data Type Constraint
1. SerialNo Int(11) Primary

2. Name Varchar(15) Not Null

3. EnrollmentNo Varchar(30) Not Null

4. Branch Varchar(50) Not Null

5. YearSem Varchar(15) Not Null

6. Gender Varchar(7) Not Null

7. ContactNo Varchar(10) Not Null

8. Address Varchar(30) Not Null

9. EmailID Varchar(25) Not Null

10. Password Varchar(10) Not Null

11. Post Varchar(25) Not Null

12. Image Varchar(200) Not Null

13. Status Varchar(30) Not Null

Table 3:-Post
Sr.No. Fields Data Type Constraint
1. PostNo Int(11) Primary

2. Name Varchar(20) Not Null

Table 4:-Vote
Sr.No. Fields Data Type Constraint
1. ID Int(11) Primary

2. Nominee_SerialNo Varchar(11) Not Null

3. Nominee_Name Varchar(30) Not Null

4. Nominee_Post Varchar(30) Not Null

5. Voter_EnrollmentNo Varchar(30) Not Null

6. Voter_Name Varchar(30) Not Null

Table 5:-Voter
Sr.No. Fields Data Type Constrai
1. SerialNo Int(11) Primary

2. Name Varchar(15) Not Null

3. EnrollmentNo Varchar(30) Not Null

4. Branch Varchar(50) Not Null

5. Year_Sem Varchar(20) Not Null

6. Gender Varchar(15) Not Null

7. EmailId Varchar(25) Not Null

8. Password Varchar(15) Not Null

9. ContactNo Varchar(10) Not Null

10. Address Varchar(25) Not Null

Table 6:-Voting_date
Sr.No. Fields Data Type Constraint
1. Voting Id Int(11) Primary

2. Opening_Date Date Not Null

3. Closing_Date Date Not Null

Table 7:-winner
Sr.No. Fields Data Type Constraint
1. No Int(11) Primary

2. Winner_SerialNo int(11) Not Null

3. Winner_Name Varchar(50) Not Null

4. Post Varchar(50) Not Null

5.3 Data Base







6. Output screen and coding
Home Page

Voter Registration

Nominee Registration

Voting Result


Admin login

Pending Nominee

Pending View nominee

Count votes

Add Branch

View Branch

Add Post

View post

Selected nominee

Nominee update

View Voter

Voter update

View result

Voter registration

Update profile



Change password

Nominee Login

Update Profile

Check status

Change Password

8. Conclusion:-
The online voting system will manage the voter’s information by which vote
can login and use his voting rights. the system will incorporate all features of
voting system. It provides the tools for maintaining voter’s vote to every party
& it count total no. of votes of every party.
There is a DATABASE which maintained by the ELECTION COMMISSION
OF INDIA in which all the names of voter with complete information is stored.
 Security
 24 x 7 availability
 Better component
 Flexible architecture
Voting details store in DB and the result is displayed by calculation. By online
voting system percentage of voting is increases.

DatabaseManagement System
(1) MySql
Author:- Ivan Bayross
Edition:- Third Edition
Publishers:-BPB Publishers
For Programming:-
Author:- Mr.Rishi Ahluvaliya
Publishers:-Computer World