Miniproject Document
Miniproject Document
Miniproject Document
Bachelor of Technology
NOVEMBER 2020
Website: www.nbkrist.org. Ph: 08624-228 247
Email : [email protected]. Fax: 08624-228 257
BONAFIDE CERTIFICATE
This is to certify that the project work entitled “ ONLINE VOTING SYSTEM” is a bonafide work done by
Ms.L.Lalitha Priya (17KB1A0590), in the department of Computer Science & Engineering, N.B.K.R.
Institute of Science & Technology,Vidyanagar and is submitted to JNTUA, Ananthapuramu in the partial
fulfillment for the award of B.Tech degree in Computer Science & Engineering. This work has been carried
out under my supervision.
The satisfaction that accompanies the successful completion of a project would be incomplete
without the people who made it possible for their constant guidance and encouragement crowned our
efforts with success.
I would like to express our profound sense of gratitude to my project guide Sri M.Sivapratap
Reddy, Asst. Professor, Department of Computer Science & Engineering, N.B.K.R.I.S.T (affiliated
to JNTU, Ananthapuramu), vidyanagar, for his masterful guidance and constant encouragement
throughout the project. My sincere appreciation for his valuable suggestions and unmatched services
without making this work would have been an unfulfilled dream.
I am grateful to Dr. V. Vijaya Kumar Reddy, Director, of N.B.K.R Institute of Science and
Technology for allowing us to avail all the facilities in the college.
I would like to convey our heartful thanks to Staff members, Lab technicians, and our
friends, who extended their cooperation in making this project a successful one.
I would like to thank one and all who have helped us directly and indirectly to complete this
project successfully.
TABLE OF CONTENTS
ACKNOWLEDGEMENT iii
ABSTRACT iv
CHAPTER 1: INTRODUCTION 1-3
1.1 Introduction 1
1.2. Motivation 2
1.3 Aim and Objective 3
1.4 Summary Of The Project 3
BIBLIOGRAPHY 44
ABSTRACT
The project “Online Voting System” is an automated system which describes the process
of applying for tracking polled votes.Online Voting System is software which is helpful for the
organization to operate the records of stock and purchased products. This project eliminates the
paperwork, human faults, manual delay and speeds up the process. Online Voting System the ability to
track polled Votes and remaining votes,tells an organization when it's time to reorder and how many
votes are in the consistency. It is a web application developed for any operating systems which focuses
in the area of Online Voting and generates the various required reports.
The existing system is a manual one in which users are counting votes which creates many
clumsy situations. In the present we maintain ballet boxes. In this we face some drawbacks.
Drawbacks:
● Processing takes a long time.
In the proposed system these models we maintain the vote details in the database. This system solves
the drawbacks of the previous system.
Advantages:
● Processing time takes very less.
Our Project gives the depth solution to one of its important requirements as Voters Details. It is
an Online Web Application Project, Admin probably can be able to create many no of voters. Admin
will describe the utilities accessed by voters.
The purpose of this software specification (SS) is to establish the major requirements &
Specification necessary to develop the Software Systems for the Developers. The overall objective of
the Team Project is to establish a web-based. The goal of this document is the same as any
requirements document, to lay out all requirements of the application in order to have both the
developers and the end users maintaining the same understanding and expectations from the
application. The project requirements will define, in general terms, the setup of the web site, topics for
available information concerning the Software Project Management.
This web-based application is for the employees of an organization for processing their
Election Details. Admin is considered as Site Admin and he is having control over all the voters and
will manage through the Admin Portal. The Admin can create any number of voter logins and
authenticate them. The Admin will login into the Admin Portal, and are responsible to execute the
process of Online Voting System and their Voting Details. Admin those who are willing to enquire
about voting polled status are able to login into this portal as Admin and Voters. Their Voter ID is
considered as a username and their password will be chosen while registering as a client into the
portal.
CHAPTER 2
LITERATURE SURVEY
CHAPTER 2
LITERATURE SURVEY
2.1 INTRODUCTION
The major client of this project is any organization who has Election details. These types of
organizations frequently add the voters' details. Our project is used to process their track and polled
votes and results all the details regarding the election. Our project will handle all types of product
details. It will generate all possible reports, which are needed by the Consulate.
We focus on Storing information regarding elections which develops policies and models to
determine how many polled, where to vote, and when to vote throughout the humanitarian supply
chain. We categorize papers according to the disaster management cycle addressed; specifically, we
focus on pre-disaster and post-disaster online voting systems. We evaluate existing literature in terms
of problem aspects addressed such as decision makers, voters, performance measures as well as
methodological aspects (i.e., types of policies, models, and solution approaches). We identify current
gaps in the literature and propose directions for future research.
The existing system is manual and the paper based voting which is voted on paper and
counted manually. The electronic tabulation brings a new kind of voting system in which the electronic
cards with all candidate symbols are marked manually and this can be counted electronically. The
electronic voting systems are now different types known as the punch card, mark sense and the digital
pen voting systems.
DISADVANTAGES
● Less Efficient
ADVANTAGES:
● Improved Efficiency
There are aspects in the feasibility study portion of the preliminary investigation:
● Economic Feasibility
● Technical Feasibility
● Operation Feasibility
● Cost Estimation and Scheduling
ECONOMICAL FEASIBILITY
This study is carried out to check the economic impact that the system will have on the
organization. The amount of funds that the company can pour into the research and development of the
system is limited. The expenditures must be justified. Thus the developed system as well within the
budget and this was achieved because most of the technologies used are freely available. Only the
customized products had to be purchased.
TECHNICAL FEASIBILITY
OPERATION FEASIBILITY
Operational feasibility checks the operational scope of the system. The system under
consideration should have enough operational reach. It is observed that the design of auditing systems
is flexible and easy to develop in terms of language dependent and language independent components
reduces the work of the designer, as only resource sharing utilization should be recorded. Also, since
we need a dynamic feedback mechanism in a timely manner to achieve the required goal of auditing in
an easy way and displays all the information of shared resources. Hence the operational feasibility of
the proposed system is found to be high.
Cost benefit analysis assesses cost for project development and weighs them against
tangible(measurable) and intangible benefits of a system. Cost benefit analysis will vary
depending on the characteristics of the system to be developed, the relative size of the project
and the expected return on investment.
● Procurement cost such as consultation, equipment for purchase, installation, furnishing the
size etc.
● Start-up cost, user operating cost, personnel search cost etc.
● Project-related cost such as software purchase training personnel, data collection
documents preparation cost etc.
REQUIREMENT ANALYSIS
➢ FUNCTIONAL REQUIREMENTS
● It allows super admin to add user type and create user credentials
● It allows admin to add voters, edit voters and view election results details.
NON-FUNCTIONAL REQUIREMENTS
➢ CORRECTNESS
Since the project is used to certify the actual and correct information about online voting
systems, this system always provides correct response and the information in all database’s is
always stored appropriately updated with the latest information.
□ RELIABILITY
The application provides the correct information under any situation. In case of an error in
input or operation, the system reflects proper messages or gives proper assistance or pop up
messages.
□ ROBUSTNESS
The application is fault tolerant with respect to illegal user input. Error Checking must be
built in the application to prevent failure.
□ MAINTAINABILITY
It is easy to maintain and easy to incorporate future changes. The system is module based;
changing the design of the one module does not affect the operation/s of the other module.
□ PORTABILITY
The system is stand-alone so as to run in any system with very little or no modification.
CHAPTER 3
DESIGN ISSUES
CHAPTER 3
DESIGN ISSUES
Design is a multi-step process that focuses on data structure software architecture, procedural
details, (algorithms etc.) and interface between modules. The design process also translates the
requirements into the presentation of software that can be accessed for quality before coding begins.
Computer software design changes continuously as new methods; better analysis and broader
understanding evolved. Software Design is at a relatively early stage in its revolution. Therefore,
Software Design methodology lacks the depth, flexibility and quantitative nature that are normally
associated with more classical engineering disciplines. However techniques for software designs do
exist, criteria for design qualities are available and design notation can be applied.
Admin creates various tasks. These tasks are controlled by Admin. Now these tasks
include the creation of login credentials for each and every voter of the system such as voter. She/he
can submit their votes and view submitted vote details. The admin generates reports like add, view,
edit, delete for previous election details.
USER TYPE: USER
In this module, voters have to login to the system using login credentials provided by the
admin.Then he/she can submit their votes online.
MVC ARCHITECTURE
MVC framework is used to separate the data access layer, business logic code and the graphical
user interface that has to be defined and designed to let the user interact with the application. A Model
View Controller pattern is made up of the following three parts:
● MODEL - The lowest level of the pattern which is responsible for maintaining data.
● VIEW - This is responsible for displaying all or a portion of the data to the user.
● CONTROLLER - Software Code that controls the interactions between the Model and View.
MVC is popular as it isolates the application logic from the user interface layer and supports
separation of concerns. Here the Controller receives all requests for the application and then works
with the Model to prepare any data needed by the View. The View then uses the data prepared by the
Controller to generate a final presentable response. The MVC abstraction can be graphically
represented as follows.
MVC COMPONENTS:
Model
The Model component corresponds to all the data related logic that the user works with. This can
represent either the data that is being transferred between the View and Controller components or any
other business logic related data. For example, a Customer object will retrieve the customer
information from the database, manipulate it and update it data back to the database or use it to render
data.
View
The View component is used for all the UI logic of the application. For example, the Customer
view would include all the UI components such as text boxes, dropdowns, etc. that the final user
interacts with.
Controller
Controllers act as an interface between Model and View components to process all the business
logic and incoming requests, manipulate data using the Model component and interact with the Views
to render the final output. For example, the Customer controller would handle all the interactions and
inputs from the Customer View and update the database using the Customer Model. The same
controller would be used to view the Customer data.
BACKGROUND OF MVC
The MVC framework is generally a term for software architecture for implementing the user
interfaces. The software's source code into three different layers:
● Model
● View
● Controller
After that, you can develop them separately. This way, you don't have to scratch your head once
your application reaches an enterprise level and your source code looks a bit messy and is unable to be
debugged. In MVC, you have all your three layers separate and this way you can control, develop,
debug or add features to all of the layers separately.
A very good feature of the MVC framework is that it hides the data access layer from the users.
That is, the data access layer or the data is never actually called directly by the user; from the interface.
This way, the user has to perform the actions that he is allowed to. This feature allows the developers
to create groups or roles of users that are allowed to access the data such as Admins, Guests, etc.
Another good thing about this framework is that it doesn't let the application get so complicated, and
all the three segments of the application interfere with each other in a single source code package. So
you always know where the problem occurred. Common examples of this would be:
● When you know that the problem is in the data access layer. For example, in the database, you've
allowed null entries, so now spam users would be able to leave the data inconsistent and cause a
problem of redundancy. You can edit the data access layer, so that you can define the columns to
not have null values.
● When the logic is not correctly defined. Sometimes the data is correct, the view is correctly
bonded to the resources, but the logic of your application is not correct. This type of problem is
hard to figure out, because developers have to think about where code went wrong by giving it a
rough try or by debugging the code using the IDE and putting a few breakpoints at the locations.
● When the view is not showing the data correctly. Such as scenarios where binding of the data is
not accurate or the format is not correct like the format of the date and time values. You can
simply just edit the View section of your application to make it work again, instead of editing the
entire page containing different variables for back-end code and/or the data access code.
These are a few of the good points of the MVC framework for developing the software
applications. In visual representation, the MVC framework works in this way:
PROCESS DESIGN
The spiral model, also known as the spiral lifecycle model, is a systems development method
(SDM) used in information technology (IT). This model of development combines the features of the
prototyping model and the waterfall model. The spiral model is intended for large, expensive, and
complicated projects.
● Planning
● Evolutions
● Risk Analysis
● Engineering
PLANNING
In this phase, the aims, options and constraints of the project are determined and are
documented. The aims and other specifications are fixed so as to determine the strategies/approaches to
go after during the project life cycle.
RISK ANALYSIS
It is the most significant phase of the "Spiral Model". In this phase the entire possible options
that are available and helpful in developing a cost efficient project are analyzed and strategies are
determined to employ the available resources. This phase has been added particularly so as to
recognize and resolve all the possible risks in the project farmers Buddy. If any indication shows some
uncertainty in needs, prototyping may be utilized to continue with the obtainable data and discover
possible software development solutions so as to deal with the potential modification in the needs.
ENGINEERING
In this phase, the specific software development of the project is worked out. The output of
development of modules by modules is passed through all the phases iteratively So as to obtain
development in the same.
CUSTOMER EVALUATION:
In this phase, before releasing the developed product, the product is passed on to the customer
so as to obtain customer’s views and suggestions and if some is left or the desired result is not
achieved then all the needs will be identified and resolve all the possible problems/errors in the
Farmers Buddy. One can compare it from the TESTING phase.
The spiral model, illustrated in the figure below, combines the iterative nature of prototyping
with the controlled and systematic aspects of the waterfall model, therein providing the potential for
rapid development of incremental versions of the software. In this model the software is developed in
a series of incremental releases with the early stages being either paper models or prototypes. Later
iterations become increasingly more complete versions of the product.
Depending on the model it may have 3-6 task regions our case will consider a ‘6-task region’ model.
● The User communication task – to establish effective communication between developer and
User.
● The planning task – to define resources, timelines and other project related information..
● The risk analysis task – to assess both technical and management risks.
● The construction and release task – to construct, test, install and provide user support (e.g.,
documentation and training).
● The User evaluation task – to obtain customer feedback based on the evaluation of the
software representation created during the engineering stage and implemented during the install
stage.
The evolutionary process begins at the centre position and moves in a clockwise direction. Each
traversal of the spiral typically results in a deliverable. For example, the first and second spiral
traversals may result in the production of a product specification and a prototype, respectively.
Subsequent traversals may then produce more sophisticated versions of the software.
An important distinction between the spiral model and other software models is the explicit
consideration of risk. There are no fixed phases such as specification or design phases in the model and
it encompasses other process models. For example, prototyping may be used in one spiral to resolve
requirement uncertainties and hence reduce risks. This may then be followed by a conventional
waterfall development.
● Note that each passage through the planning stage results in an adjustment to the project plan.
● Each of the regions is populated by a set of work tasks called a task set that are adapted to
characteristics of the project to be undertaken. For small projects the number of tasks and their
formality is low. Conversely, for large projects the reverse is true.
● The spiral model is a realistic approach to the development of large-scale software products
because the software evolves as the process progresses. In addition, the developer and the client
better understand and react to risks at each evolutionary level.
● The model uses prototyping as a risk reduction mechanism and allows for the development of
prototypes at any stage of the evolutionary development.
● It maintains a systematic stepwise approach, like the classic life cycle model, but incorporates
it into an iterative framework that more reflects the real world.
● If employed correctly, this model should reduce risks before they become problematic, as
consideration of technical risks are considered at all stages.
● It has not been employed as many proven models (e.g. the WF model) and hence may prove
difficult to ‘sell’ to the client that this model is controllable and efficient.
DATABASE DESIGN
The database design is a must for any application developed especially more for the data store
projects. Since the chatting method involves storing the message in the table and produced to the
sender and receiver, proper handling of the table is a must.
In the project, the login table is designed to be unique in accepting the username and the length of the
username and password should be greater than zero. The complete listing of the tables and their fields
are provided in the annexure under the title ‘Table Structure’.
NORMALIZATION
● Retrieving data
A use case diagram in the Unified Modeling Language (UML) is a type of behavioral diagram
defined and created from a use case analysis. Its purpose is to represent a graphical overview of the
functionality provided by a system in terms of actors, goals and any dependencies between those use
cases. The main purpose of a use case diagram is to show what system functions are performed for
A class diagram in the Unified Modeling Language(UML) is a type of static structure diagram
that describes the structure of a system by showing the system’s classes, their attributes, operations and
the relationships among the classes. It explains which class contains information.
CHAPTER 4
IMPLEMENTATION ISSUES
CHAPTER 4
IMPLEMENTATION ISSUES
4.1 INTRODUCTION
online voting system is an online Web Application, which can be used to resolve the
organization problems. In this application voters can login with their credentials and submit their
votes.It is used for searching the votes by using its voter id number.The votes details are stored in the
form of records in the database.
The Minimum Hardware Requirements used for develop this project as follows
The Minimum Software Requirements used for develop this project as follows
□ Database : My SQL
Why PHP?
PHP remains the most widespread and popular server-side programming language on the web.
It is installed by most web hosts, has a simple learning curve, close ties with the MySQL database, and
an excellent collection of libraries to cut your development time. PHP may not be perfect, but it should
certainly be considered for your next web application. Both Yahoo and Facebook use it with great
success.
Installing PHP on your development PC allows you to safely create and test a web application
without affecting the data or systems on your live website. This article describes PHP installation as a
module within the Windows version of Apache 2.2. Mac and Linux users will probably have it
installed already.
All-in-One packages
There are some excellent all-in-one Windows distributions that contain Apache, PHP, MySQL
and other applications in a single installation file, e.g. XAMPP (including a Mac
version), WampServer and Web.Developer. There is nothing wrong with using these packages,
although manually installing Apache and PHP will help you learn more about the system and its
configuration options.
Although an installer is available from php.net, I would recommend the manual installation if you
already have a web server configured and running.
Manual Installation
● Backing up, reinstalling, or moving the web server can be achieved in seconds and you have more
control over PHP and Apache configuration.
Step 1: download the files
As always, the virus scans the file and checks its MD5 checksum using a tool such as fsum.
We will install the PHP files to C:php, so create that folder and extract the contents of the ZIP file into
it.
PHP can be installed anywhere on your system, but you will need to change the paths referenced in the
following steps.
Copy C:php php.ini-recommended to C:php php.ini. There are several lines you will need to change in
a text editor (use search to find the current setting).
Enable extensions. This will depend on the libraries you want to use, but the following extensions
should be suitable for the majority of applications (remove the semicolon comment):
Extension=php_curl.dll
Extension=php_gd2.dll
Extension=php_mbstring.dll
Extension=php_mysql.dll
Extension=php_mysqli.dll
Extension=php_pdo.dll
Extension=php_pdo_mysql.dll
Extension=php_xmlrpc.dll
If you want to send emails using the PHP mail() function, enter the details of an SMTP server (your
ISP’s server should be suitable):
[Mail function]
; For Win32 only.
SMTP = mail.myisp.com
smtp_port = 25
sendmail_from = [email protected]
To ensure Windows can find PHP, you need to change the path environment variable. From the
Control Panel, choose System, (then “Advanced system settings” in Vista), select the “Advanced” tab,
and click the “Environment Variables” button.
Scroll down the System variables list and click on “Path” followed by the “Edit” button. Enter
“;C:php” to the end of the Variable value line (remember the semi-colon).
Now OK your way out. You might need to reboot at this stage.
Ensure Apache is not running (use “net stop Apache2.2” from the command line) and open its conf
httpd.conf configuration file in an editor. The following lines should be changed:
At the bottom of the file, add the following lines (change the PHP file locations if necessary):
# PHP5 module
PHPIniDir "C:/php"
Save the configuration file and test it from the command line (Start > Run > cmd):
cd Apache Bin
httpd -t
Create a file named index.php in Apache’s web page root (either htdocs or D:WebPages) and add this
code:
Ensure Apache has started successfully, open a web browser and enter the address http://localhost/. If
all goes well, a “PHP version” page should appear showing all the configuration settings.
MySQL
MySQL, the foremost in style Open supply SQL management system, is developed,
distributed, and supported by Oracle Corporation. The MySQL information processing system
(http://www.mysql.com/) provides the most recent info regarding MySQL software system.
The MySQL Database Server is very fast, reliable, scalable, and easy to use:
If that's what you're yearning for, you must provide it an attempt. MySQL Server will run
well on a desktop or laptop computer, aboard your different applications, internet servers, and so on,
requiring very little or no attention. If you dedicate a whole machine to MySQL, you'll change the
settings to require advantage of all the memory, CPU power, and I/O capability obtainable. MySQL
can even proportion to clusters of machines, networked along. You’ll notice a performance
comparison of MySQL Server with different information managers on our benchmark page.
MySQL Server was originally developed to handle massive databases abundant quicker than
existing solutions and has been with success employed in extremely rigorous production environments
for many years. Though underneath constant development, MySQL Server nowadays offers an
expensive and helpful set of functions. Its property, speed, and security create MySQL Server
extremely suited to accessing databases on the web.
4.3 TESTING
Testing is that the debugging program is one amongst the leading crucial aspects of the pc
programming triggers, while not programming that works, existing is best performed once user
development is asked to help in characteristic all errors and bugs. The sample knowledge is used for
testing. It is not the amount however quality of the information used in the matters of testing .Testing
is aimed toward guaranteeing that the system was accurately related in nursing with efficiency before
live operation commands.
TESTING OBJECTIVES
The most objective of testing is to uncover a bunch of errors, consistently and with
minimum effort and time. Stating formally, Testing may be a method of corporal punishment a
program with intent of finding miscalculation.
● A productive check is one that uncovers Associate in nursing hitherto undiscovered error.
● A decent legal action is one that has a likelihood of finding miscalculation, if it exists.
● The check is insufficient to find probable gift errors.
● The code additional or less confirms to the standard and reliable standards.
TYPES OF TESTING
UNIT TESTING
Unit testing they have a tendency to test every module separately and integrate with the general
system. Unit testing focuses verification efforts on the littlest unit of code style within the module.
This is often conjointly called module testing. The module of the system is tested individually. As an
example the validation check is completed for the variable the user input given by the user that
validates the information entered. It’s terribly straightforward to search out errors and rectify the
system. Every Module will be tested victimization the subsequent 2 Strategies: recording machine
Testing and White Box Testing.
● Functional Testing
● Non-Functional Testing
● Regression Testing
SYSTEM TESTING:
Once the individual module testing is completed, modules are assembled and integrated to
perform as a system. The top down testing that began from higher level to lower level module was
allotted to visualize whether or not the whole system is playacting satisfactorily.
There are 3 main types of System testing:
● Alpha Testing: This refers to the system checking that allotted by the test team with the
Organization.
● Beta Testing: This refers to the system testing that is performed by a particular cluster of
friendly customers.
● Acceptance Testing: This refers to the system testing that is performed by the client to see
whether or not or to not settle for the delivery of the system.
Field Testing will be performed manually and functional tests will be written in detail.
□ TEST OBJECTIVES
● All field entries must work properly.
● Pages must be activated from the identified link.
● The entry screen, messages and responses must not be delayed.
□ FEATURES TO BE TESTED
● Verify that the entries are of the correct format.
● No duplicate entries should be allowed.
● All links should take the user to the correct page.
OBSERVED OUTPUT: do
RESULT: Pass
OBSERVED OUTPUT: do
RESULT: Pass
OBSERVED OUTPUT: do
RESULT: Pass
OBSERVED OUTPUT: do
RESULT: Pass
TEST RESULTS
All the test cases mentioned above passed successfully. No defects encountered.
4.3 INPUT AND OUTPUT WINDOWS
Input design is the link between the application and the user. It comprises the developing
specification and procedures for data preparation and those steps are necessary to put transaction data
into a usable form for processing can be achieved by inspecting the computer to read data from a
written or printed document or it can occur by having people keying the data directly into the system.
The design of input focuses on controlling the amount of input required, controlling the errors,
avoiding delay, avoiding extra steps and keeping the process Simple. The input is designed in such a
way so that it provides security and ease of maintaining the system properly. Input design considered
the following things:
An output is one, which meets the requirements of the end user and presents the information
clearly. In any system results of processing are communicated to the users and to other systems
through outputs. In output design, it is determined how the information is to be displaced for
immediate need and also the hard copy output. It is the most important and direct source information to
the user. Efficient and intelligent output design improves the system’s relationship to help in decision-
making.
Designing computer output should proceed in an organized, well thought out manner; the right
output must be developed. While ensuring that each output element is designed so that people will find
the system can use it easily and effectively. Select methods for information.
(b)BALLOT POSITIONS
(C)Views
4.ONLINE VOTING SYSTEM VOTERS OPERATIONS
(a)Login
(B)Home Page
(C)After Submit
CHAPTER 5
CONCLUSION AND FUTURE ENHANCEMENT
CHAPTER 5
CONCLUSION AND FUTURE ENHANCEMENT
The Inventory control System is a web-based application for tracking the stock details for the
organization which provides customized solutions to meet company/customer needs. This application
software has been computed successfully and was also tested successfully by taking “test cases”. It is
user friendly, and has required options, which can be utilized by the user to perform the desired
operations.
The software is developed using Php and Html as front end and MySQL as back end in
Windows environment. The goals that are achieved by the software are:
□ Instant access.
□ Improved productivity.
□ Optimum utilization of resources.
□ Efficient management of records.
□ Portable and flexible for further enhancement.
FUTURE ENHANCEMENT
In this project, we implemented “Inventory control system” a web based application using PHP
and MySQL. This project shows the details about stock. In future, we will add some more functionality
like stock can access with high security like bar-coding.
BIBLIOGRAPHY
Text Books
Websites
1. https://www.fromdev.com/2013/09/best-php-books.html
2. https://www.cloudways.com/blog/best-books-to-help-you-learn-php/
3. https://en.wikipedia.org/wiki/PHP
4. https://www.w3schools.com/php/