Surya
Surya
SURYA S R1822369
1
SESHADRIPURAM EDUCATIONAL TRUST
SESHADRIPURAM FIRST GRADE COLLEGE
YELAHANKA BANGALORE-560064
CERTIFICATE
This is to certify that the project work entitled “ONLINE FOOD ORDERING
SYSTEM” is a beneficed work carried out by Surya S bearing register number
R1822369 respectively, in partial fulfilment for the requirement of V semester,
Bachelor of Computer Application from Bangalore city university, during
the year 2020-2021. It is certified that all correction/suggestion indicated for the
internal assessment have been incorporated in the report. This report has been
approved as it satisfies the academic requirements in respect of seminar work
prescribed for Bachelor of Computer Application Degree.
2
DECLARATION
We hereby declare that the project work entitled “ONLINE FOOD ORDERING SYSTEM”
which is being submitted as mini project is an outcome of our own effort, under the guidance
of Mrs Bhargavi G C. We assert the statements made and conclusions drawn are an outcome
of our work. We further certify that
• The work contained in the report is original and has been done by us under the general
supervision of our supervisor.
• The work has not been submitted to any other institution for any other
degree/diploma/certificate in this university or any other university of India or abroad.
• We have followed the guidelines provided by the university in writing the report.
• Whenever we have used materials (data, theoretical analysis, and text) from other sources,
we have given due credits to them in the text of the report and giving their details in the
references.
SURYA S R1822369
3
ACKNOWELEDGEMENT
Completing a task is never a one-man effort. The success of the project depends upon the efforts
invested. It’s our duty to acknowledge and thank all the individuals in the successful
completion of this project.
We take this opportunity to express our profound and whole hearted thanks to Dr S N
VENKATESH, principal of SESHADRIPURAM FIRST GRADE COLLEGE
YELAHANKA, for providing ample facilities made to undergo our project successfully.
We would like to express our deepest appreciation to Ms. REKHA RAICHAL for never
letting us down till the end. Our completion of success would not have been possible without
the support and nurturing us, by Mrs BHARGAVI G C for being the source of strength and
confidence.
We must say that no height is ever achieved without some sacrifices made at some end and it
is here where we owe our special debt to our PARENTS and FRIENDS for showing their
generous love and care throughout the entire period of time.
we give all honour and praise to GOD, who gave all the wisdom and courage.
Although, this report has been prepared with utmost care and deep routed interest. Even though,
we accept respondent and imperfection
ABSTRACT
4
The main aim is to improve accuracy and enhance health and diets in the Fitness arena
Online food ordering system is an web application developed using HTML, CSS as frontend
and PHP, Ms SQL server as a backend.
This project is designed to facilitate food ordering and store them in form of a large and user
friendly database further facilitating easy access to the personnel. An Online Food Ordering
System is proposed here which simplifies the food ordering process. The proposed system
shows an user interface and update the menu with all available options so that it eases the
customer work. Customer can choose more than one item to make an order and can view
order details before logging off. The order confirmation is sent to the customer. The order is
placed in the queue and updated in the database and returned in real time. This system assists
the staff to go through the orders in real time and process it efficiently with minimal errors.
5
ONLINE FOOD ORDERING
SYSTEM
INDEX
6
TABLE OF CONTENTS
CONTENTS
1. INTRODUCTION
1.1 About the project 8-10
1.2 Objectives 10
2. SYSTEM ANALYSIS
2.1 Existing system 11-15
2.2 Proposed system 15-16
3. SYSTEM REQUIREMENTS
3.1 Software requirement 17
3.2 Hardware requirement 17
4. SYSTEM DESCRIPTION
4.1 Modules 18-19
4.2 Introduction to Front-End language 19-27
4.3 Introduction to Back-End language 27-30
5. SYSTEM DESIGN
5.1 Data flow diagram (each module) 32-35
5.2 ER Diagram 36-37
7
1. INTRODUCTION
Food Industry has always been a profitable industry not only for manufacturers, suppliers, but
also for the users, distributers. The online food delivery system is the need of hour because of
the recent changes in the industry and the increasing use of the internet. A Real-time online
food ordering system for the customer is our proposed system. The traditional queueing system
drawbacks and disadvantages are overcome by our system application. Food can be ordered
online in a hassle-free manner through our proposed system from restaurants as well as mess
services. The food order taking methods from customer are improved by our system
application. A Food Menu is set up online and as per their wish customers can simply place
their order through the proposed system. Also, customers can effortlessly track the orders with
a food menu. Users can rate the food items over the feedback system provided by the system.
Also, restaurants and mess services are recommended to the new customers based on the user
ratings through the proposed system and for the improvements with the quality, the
restaurant/mess staff will be informed. For the initial implementation of the system application
pay-on-delivery payment system is used. Separate accounts are maintained for each user for
more secured ordering by providing an ID and a password.
The labour rates are increasing steadily year on year thus making it difficult to find employees.
The food industry is highly labour intensive and the biggest expense in the food industry is the
cost of employing the right kind of people to do the work. One of the ways to reduce this
expense is to use modern technology to replace some of the jobs done by human beings and
make machines do the work. Here we propose an "Online Food Ordering System" that has been
designed for Fast Food restaurant, Take-Out or College Cafeterias. The system can also be used
in any food delivery industry. This simplifies the process of food ordering for both the customer
and the restaurant, as the entire process of taking orders is automated.
Food Ordering System is an application which will help restaurant to optimized and control
over their restaurants. For the waiters, it is making life casier because they don't have to go
kitchen and give the orders to chef easily. For the management point of view, the manager will
able to control the restaurant by having all the reports to hand and able to see the records of
each employees and orders. This application helps the restaurants to do all functionalities more
accurately and faster way. Food Ordering System reduces manual works and improves
efficiency of restaurant. This application is helping Food Ordering s to maintain the stock and
cash flows and there are many more functionalities, like.
✓ To store records.
✓ Control orders and services.
✓ Billings.
✓ Control staff and their shifting
✓ Control multiple branches.
✓ Helps Manager to control each part of the restaurant
8
The main goal is to maintain the restaurant's functions in an effective and accurate manner and
also it is reducing the use of manual entries. This software helps food orders to maintain day
to day records in system. It is keeping a proper record of the database.
Following are the results that one can draw from this system:
✓ People can successfully order the food using the proposed system.
✓ There will be a lesser requirement of staff at the back counter..
✓ The system will help in reduction of labour cost involved and also reduces
✓ required to set up cafeterias in the restricted area.
✓ As it is an automated system it is less probable to make any mistakes.
✓ The customers can avoid the long queues at the counter, with a reasonable speed of
execution and maximum throughput.
An online food menu is set up by the proposed food ordering system and as per their will
customers can easily place the order. Also, customers can easily track the orders with the food
menu. The management improve food delivery service and preserves customers database.
Motivation to develop the system is from the restaurant management system. To get the
services efficiently the users of the system provides various facilities. Restaurants as well as
Mess facility is considered by our system for the customers. Mostly mess users are person who
are shifted to new cities and this can be considered as a motivation to our system. Another
motivation can be considered as the increasing use of smart phones by the customers, so that
any users of this system get all service of the system. The system will be designed to avoid
users doing fatal errors where users can change their own profile also where users can track
their food items through website and where users can provide feedback and recommendations
to Restaurants/Mess service providers. There's a need for the system due to lack of a full fledge
application that can fulfil the customer requirements by providing him food from
restaurants/mess service. For the students studying in different cities, our system will be very
helpful. The flexibility to the Customers/Users to order from either Restaurants or Mess is
provided by our system. Recommendations to the customers are also provided from the
restaurants/mess owners which are updated daily. There will be no limitation on the amount of
order the customer wants by ordering food from our system. As a Start-up Business for the
developers the same system application can be used. Real time customer's feedback and ratings
are provided by our system with the comments to the restaurants/mess owner. It gives
appropriate feedbacks to users, so if there is any error happened, and then there will be a
feedback dialog toward users.
9
BENEFITS OF PROJECT
This is a very simple design and implement. It has got following features:
The new proposed system will affect the users in the following areas
✓ Accuracy
✓ Efficiency
✓ Productivity
1.2 OBJECTIVES
To overcome the restrictions of above system, based on Internet of Things an Online Food
Ordering System is proposed. The use of mobile technology has revolutionized as the Android
devices have gained popularity in the automation of routine task in wireless environment. For
mobile devices such as smart-phones and tablets android is a Linux built operating system. As
a general Objective of the study to develop a reliable, convenient and accurate Food Ordering
System is considered. As an objective, a system that will surely satisfy the customer service
will be considered. To design a system that can accommodate huge amount of orders at a time
and automatically compute the bill is one of the key objectives. One of the important objective
is to evaluate its performance and acceptability in terms of security, user-friendliness, accuracy
and reliability. One of key objective is to improve the communication between the client and
customers.
10
2.SYSTEM ANALYSIS
DATA ANALYSIS
Before developing this project, we first analyse existing system of study. In existing system all
greetings are given manually. As we know, now a day computer is used in every field. We can
remove the manual work by using automatic system. We see it first that if it is feasible or not
whether technically, economically, operationally. We test that whether it properly works or
not. Its technical requirements are feasible or not. We analysed the system properly and then
start designing it. After designing, we implement this project that whether this project works
properly or not. After implementing the project, we check that whether there is any problem
for the user while using this project. Prior to stating whether the system we have to develop is
feasible or not we believe that we should emphasize on what is implied by the word "Analysis".
Analysis is the measure of how beneficial or practical the development of the system will be
to the organization. It is a preliminary survey for the systems investigation. It aims to provide
information to facilitate a later in-depth investigation
TYPES
There are various measures of analysis that helps to decide whether a particular project is
feasible or not.
Each of these types will be explained in detail throughout the project report
OPERATIONAL ANALYSIS
A proposed system is beneficial only if it can be turned into an information system that will
meet the operational requirements of an organization. A system often fails if it does not fit
11
within existing operations and if users resist the change. Important issues a systems developer
must look into are:
The whole purpose of computerizing it is to handle the work much more accurately and
efficiently with less time consumption. There will be additional work to be completed. because
now the website will have to maintain database of both their admins as well as their customers.
Compared to the semi computerized system the chances of avoiding errors in a computerized
system is much higher because the user need not stress himself unnecessarily resulting in
recklessness. Unlike the semi-computerized system there would be backup data for all the
information concerning the daily transactions occurred. Another important fact to be regarded
is the security control, which is handled by the system. Since data regarding each Customer is
confidential, security is a key issue. Information falling into the wrong hands could jeopardize
the entire website organisation. Unlike in semi-computerized systems, the proposed system
offers adequate control to protect against fraud and embezzlement and guarantees the accuracy
and Security of data and information. This is handled by the system providing individuals with
separate login names and passwords. The new system is user friendlier, which enables the end-
user to complete his/her work efficiently and accurately with interest. After taking the above
fact into consideration we can state the operating of the proposed system is feasible.
ECONOMICAL ANALYSIS
In making recommendations a study of the economics of the proposed system should be made.
Even though finding out the costs of the proposed project is difficult we assume and estimate
the costs and benefits as follows. According to the computerized system we propose, the costs
can be broken down in two categories
12
TECHNICAL ANALYSIS
System Security
System security is a vital aspect when it comes to developing a system. The system should.
ensure the facility of preventing unauthorized personnel from accessing the information and
the data within the system. The system should provide total protection for each user's
information so that the integrity of data is sustained and also prevent hackers from hacking the
system. The proposed system ensures the security and the integrity of data. This is done by
providing a password login system for each authorized users. And for example the System
Administrator has access to all kinds of information. By providing this facility information is
properly managed and information is protected. For example the system administrator's day to
day tasks are lessened and easier because he doesn't have to have constant eye on the system
and worry about hackers hacking the system.
The Analysis Phase is where the project lifecycle begins. The Analysis Phase is where you
break down the deliverables in the high-level Project Charter into. more detailed business
requirements. The Analysis Phase is also the part of the project where you identify the overall
direction that the project will take through the creation of the project strategy documents.
Gathering requirements is the main attraction of the Analysis Phase. The process of gathering
requirements is usually more than simply asking the users what they need and writing their
answers down. Depending on the complexity of the application, the process for gathering
requirements has a clearly defined process of its own. This process consists of a group of
repeatable processes that utilize certain techniques to capture, document, communicate, and
manage requirements.
This formal process, which will be developed in more detail, consists of four basic steps.
Although gathering requirements is the main focus during the analysis Phase, there are other
important activities during this phase as well. One is to create a Requirement Management Plan
to define how the requirements will be documented, communicated, tracked and changed
throughout the rest of the project lifecycle. This plan will specifically address establishing a
13
baseline, a change control process, and a way to track the requirements through the rest of the
lifecycle. Another important activity is to set the overall direction for work that does not take
place until later. This is accomplished through a series of direction-setting strategy documents.
For instance, once you have your requirements, you can start to set the overall direction for
training in a Training Strategy document. The strategies are at a high level and are later defined
at a lower level before they are finally implemented toward the end of the project.
After analysing the necessities of the task to be performed, the next step is to analyse the
problem and understand its context. The first activity in the phase is studying the existing
system and other is to understand the necessities and domain of the new system. Both the
behaviours are equally significant, but the first movement serves as a basis of giving the
purposeful specifications and then winning design of the proposed system. Understanding the
properties and necessities of a new system is more difficult and requires creative thinking and
understanding of existing running system is also difficult, improper understanding of present
system can lead diversion from solution. Existing system is manual system. It requires a lot of
file work to be done. It is a time consuming system. All customer information is maintained
manually. Any searching requires so much effort manually.
Many Restaurants stores and maintain their day to day transactions manually. But some of
them are having automation system which is helping them to store data. But such restaurants
are storing the information about the orders and the customer information. They don't have
facility to store the information of feedbacks and favourite orders of customers over some
period of time.
Restaurants are having standalone applications so at one time, they have the facility of many
screens or many operations which is happening at one time. So they are storing them and then
at last, the restaurant managers will able to see the data of last day.
a) Data redundancy and formatting: The various files are likely to have different
formats and therefore lead to redundancy and inconsistency.
b) Maintaining registers is costly: Traditionally documents have been stored in batches
and they field in file cabinets and boxes. A numerical system is they assigned.
Specifically a consumer number assigned to organize the files.
c) Error prone: Existing systems are error prone, since manual work is required. More
time is consumed and errors may propagate due to human mistakes.
14
d) Low security feature: Due to maintenance's of records manually and shared and could
view easily by anyone. Also these could be possible loss of data and confidential
information due to some disaster in the form of fire, theft etc.
The aim of proposed system is to develop a system of improved facilities. The proposed system
can overcome all the limitations of the existing system. The system provides proper security
and reduces the manual work. The existing system has several disadvantages and many more
difficulties to work well. The proposed system tries to eliminate or reduce these difficulties up
to some extent. The proposed system will help the user to reduce the workload and mental
conflict. The proposed system helps the user to work user friendly and he can easily do his jobs
without time lagging.
The proposed system helps in many ways. It helps to do billing very easily. Account
maintenance also becomes easier. They can keep track of their purchases of inventories, staffs
details, customer feedback, sales of foods, and account details etc. The software is provided
with the facilities to find out the favourite food of the customers, and the seasonal foods, or
customers to add or modify and delete their feedbacks and suggestions. It helps in managing
data of different types of orders like party order, home delivery or the normal order. Managing
data of daily customers, managing data of staffs, managing data of daily expenses. It eliminates
the drawbacks of existing system and also includes some more features.
The system is very simple in design and to implement. The system requires very low system
resources and the system will work in almost all configurations. It has got following features
15
• Minimum time needed for the various processing.
• Greater efficiency.
• Better service.
• User friendliness and interactive.
• Minimum time required.
16
3.SYSTEM REQUIREMENT
Requirement analysis for web applications encompasses three major tasks: formulation,
requirements gathering and analysis modelling. During formulation, the basic motivation and
goals for the web application are identified, and the categories of users are defined. In the
requirements gathering phase, the content and functional requirements are listed and interaction
scenarios written from end-user's point-of-view are developed. This intent is to establish a basic
understanding of why the web application is built, who will use it, and what problems it will
solve for its users.
17
4.SYSTEM DESCRIPTION
4.1 MODULES
The different modules in this project are described below:
✓ Administrator module
✓ Customer Module
Administrator Module
This module is used to create usernames and passwords by admin. Admin can view all
the information about the user or delete or edit the all details about the manager and
customer.
Menu Module:
In this module the number of food, their prices, offers etc.
like details will stores.
Insert food item.
Insert price.
Delete food item.
Delete price.
Modify price
Order Module:
In this module, there will section which will store the data about home delivery orders.
View order
Add bill
Delete order
Customer Module:
18
This Functionality provided.
TECHNOLOGIES USED
✓ HTML is used to create and save web development.
✓ CSS is used to create attractive layout.
✓ JavaScript is a programming language, commonly used with web browsers.
HTML
Hypertext Markup Language (HTML) is the standard markup language for creating web
pages and web applications. With Cascading Style Sheets (CSS) and JavaScript, it forms a
triad of cornerstone technologies for the World Wide Web. Web browsers receive HTML
documents from a web server or from local storage and render the documents into multimedia
web pages. HTML describes the structure of a web page semantically and originally included
cues for the appearance of the document.
HTML elements are the building blocks of HTML pages. With HTML constructs, images
and other objects such as interactive forms may be embedded into the rendered page. HTML
provides a means to create structured documents by denoting structural semantics for text
such as headings, paragraphs, lists, links, quotes and other items. HTML elements are
delineated by tags, written using angle brackets. Tags such as <img/> and <input/> directly
introduce content into the page. Other tags such as <p></p>surround and provide information
about document text and may include other tags as sub-elements. Browsers do not display the
HTML tags, but use them to interpret the content of the page.
HTML can embed programs written in a scripting language such as JavaScript which affects
the behaviour and content of web pages. Inclusion of CSS defines the look and layout of
content. The World Wide Web Consortium (W3C), maintainer of both the HTM and the CSS
standards, has encouraged the use of CSS over explicit presentational HTML since 1997.
19
CSS
CSS Stands for "Cascading Style Sheet." Cascading style sheets are used to format the layout
of Web pages. They can be used to define text styles, table sizes, and other aspects of Web
pages that previously could only be defined in a page's HTML.
CSS helps Web developers create a uniform look across several pages of a Web site. Instead
of defining the style of each table and each block of text within a page's HTML, commonly
used styles need to be defined only once in a CSS document. Once the style is defined in
cascading style sheet, it can be used by any page that references the CSS file. Plus, CSS
makes it easy to change styles across several pages at once. For example, a Web developer
may want to increase the default text size from 10pt to 12pt for fifty pages of a Web site. If
the pages all reference the same style sheet, the text size only needs to be changed on the
style sheet and all the pages will show the larger text.
While CSS is great for creating text styles, it is helpful for formatting other aspects of Web
page layout as well. For example, CSS can be used to define the cell padding of table cells,
the style, thickness, and colour of a table's border, and the padding around images or other
objects. CSS gives Web developers more exact control over how Web pages will look than
HTML does. This is why most Web pages today incorporate cascading style sheets.
Example
CSS is used to style and lay out web pages-for example, to alter the font, colour, size and
spacing of your content, split it into multiple columns, or add animations and other decorative
features. This module gets you started on the path to CSS mastery with the basics of how it
works, including selectors and properties, writing CSS rules, applying CSS to HTML, how to
specify length, colour, and other units in CSS, cascade and inheritance, and debugging CSS.
<html>
<head>
<meta charset="utf-8">
<title>My CSS experiment</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
20
<h1>Hello World!</h1>
<p>This is my first CSS example</p>
</body>
</html>
Now let's look at a very simple CSS example containing two rules:
hl {
color: blue;
background-color: yellow;
border: 1px solid black;
}
P{
color: red;
}
At this point you have some choices of how to use the CSS, either internally or externally.
First we will explore the internal method. This way you are simply placing the CSS code
within the <head></head> tags of each (X)HTML file you want to style with the CSS. The
format for this is shown in the example below.
<head>
<title><title>
<style type="text/css">
CSS Content Goes Here
</style>
21
</head>
<body>
With this method each (X)HTML file contains the CSS code needed to style the page.
Meaning that any changes you want to make to one page, will have to be made to all. This
method can be good if you need to style only one page, or if you want different pages to have
varying styles.
Next we will explore the external method. An external CSS file can be created with any text
or HTML editor such as "Notepad" or "Dreamweaver". A CSS file contains no (X)HTML,
only CSS. You simply save it with the .css file extension. You can link to the file externally
by placing one of the following links in the head section of every (X)HTML file you want to
style with the CSS file.
Either of these methods are achieved by placing one or the other in the head section as shown
in example below.
<head>
<title><title>
<link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>
or
<head>
<title><title>
<style type="text/css">@import url(Path To stylesheet.css) </style>
22
</head>
<body>
By using an external style sheet, all of your (X)HTML files link to one CSS file in order to
style the pages. This means, that if you need to alter the design of all your pages, you only
need to edit one .css file to make global changes to your entire website.
JAVASCRIPT
Although there are strong outward similarities between JavaScript and Java, including
language name, syntax, and respective standard libraries, the two languages are distinct and
23
differ greatly in design; JavaScript was influenced by programming languages such as Self
and Scheme.
PHP
What is PHP?
PHP is a server side scripting language, that is used to develop Static websites or Dynamic
websites or Web applications. PHP stands for Hypertext Pre-processor, that earlier stood for
Personal Home Pages.
PHP scripts can only be interpreted on a server that has PHP installed.
The client computers accessing the PHP scripts require a web browser only. A PHP file
contains PHP tags and ends with the extension ".php".
24
Php Syntax
<?php
echo Bello Vorld':
?>
A PHP file can also contain tags such as HTML and client side scripts such as JavaScript.
▪ HTML is an added advantage when learning PHP Language. You can even learn
PHP without knowing HTML but it's recommended you at least know the basics of
HTML.
▪ Database management systems DBMS for database powered applications.
▪ For more advanced topics such as interactive applications and web services, you will
need JavaScript and XML.
The flowchart diagram shown below illustrates the basic architecture of a PHP web
application and how the server handles the requests.
25
• PHP is cross platform; this means you can deploy your application on a number of
different operating systems such as windows, Linux, Mac OS etc.
PHP was designed to work with HTML, and as such, it can be embedded into the HTML
code.
You can create PHP files without any html tags and that is called Pure PHP file.
The server interprets the PHP code and outputs the results as HTML code to the web
browsers.
In order for the server to identify the PHP code from the HTML code, we must always
enclose the PHP code in PHP tags.
A PHP tag starts with the less than symbol followed by the question mark and then the words
"php".
26
The PHP tags themselves are not case-sensitive, but it is strongly recommended that we use
lower case letter. The code below illustrates the above point.
</php...?>
We will be referring to the PHP lines of code as statements. PHP statements end with a semi
colon (;). If you only have one statement, you can omit the semi colon. If you have more than
one statement, then you must end each line with a semi colon. For the sake of consistency, it
is recommended that you always end your statement(s) with a semi colon. PHP scripts are
executed on the server. The output is returned in form of HTML.
MYSQL
MySQL is a database management system that used by WordPress to store and retrieve all
your blog information. Think of it this way. If your database is a filing cabinet that
WordPress uses to organize and store all the important data from your website (posts, pages,
images, etc), then MySQL is the company that created this special type of filing cabinet.
MySQL is an open source relational database management system. It runs as a server and
allows multiple users to manage and create numerous databases. It is a central component in
the LAMP stack of open source web application software that is used to create websites.
LAMP stands for Linux, Apache, MySQL, and PHP. Most WordPress installations use the
LAMP stack because it is open source and works seamlessly with WordPress.
WordPress requires MySQL to store and retrieve all of its data including post content, user
profiles, and custom post types. Most web hosting providers already have MySQL installed
on their web servers as it is widely used in many open source web applications such as
WordPress.
WordPress uses the PHP programming language to store and retrieve data from the MySQL
database. To retrieve data from the database, WordPress runs SQL queries to dynamically
generate content. SQL stands for Structured Query Language and is the programming
language typically used to query databases.
27
For users that are not comfortable writing their own PHP and SQL scripts, most web hosting
providers offer casy to use web applications to manage databases. One such web application
is phpMyAdmin which allows users to manage their database using a web based graphical
interface. You can manipulate your tables visually while phpMyAdmin runs the SQL queries
for you.
Out of the box MySQL doesn't come with any graphical interface and advanced level users
may prefer to just manage their databases from the command line.
Wondering what the heck is a web server? Well a web server is like a restaurant host. When
you arrive in a restaurant, the host greets you, checks your booking information and takes
your to your table. Similar to the restaurant host, the web server checks for the web page you
have requested and fetches it for your viewing pleasure. However, A web server is not just
your host but also your server. Once it has found the web page you requested, it also serves
you the web page. A web server like Apache, is also the Maitre D' of the restaurant. It
handles. your communications with the website (the kitchen), handles your requests, makes
sure that other staff (modules) are ready to serve you. It is also the bus boy, as it cleans the
tables (memory, cache, modules) and clears them for new customers.
So basically a web server is the software that receives your request to access a web page. It
runs a few security checks on your HTTP request and takes you to the web page. Depending
on the page you have requested, the page may ask the server to run a few extra modules while
generating the document to serve you. It then serves you the document you requested. Pretty
awesome isn't it.
APACHE
The Apache web server, more popular as simply Apache, represents an open-source web
server platform lying in the basis of most of the websites we see today on the World Wide
Web. Looking back at the time when it was introduced in mid 90's and gradually adopted as a
preferred server platform on the web, we could state that Apache acted as the main driving
force behind today's web expansion. As a web server 'pioneer'. Apache has turned into a
standard for the development of other successful web server platforms.
The Apache web server is a work of the Apache Software Foundation open source
community. Namely the fact that it is backed up by the efforts of many supporters worldwide
28
keeps it so well maintained and regularly updated with new useful features and functionalities
up to the latest quality and security requirements in HTTP service delivery.
Where does that strange name of the popular server come from? There are two intriguing and
radically different stories behind its origin. The more popular one says that naming the server
this way is a kind of a tribute to the Native American Indian tribe Apache, known for its
fighting strength and dauntless spirit. According to the other story, the name 'Apache server
represents a sound analogue to 'a patchy server, with 'patchy referring to the bundle of
patches that are attached to the codebase of NCSA HTTP3 13.
What is Bootstrap?
Bootstrap is a powerful front-end framework for faster and easier web development. It
includes HTML and CSS based design templates for common user interface components like
Typography, Forms, Buttons, Tables, Navigations, Dropdowns, Alerts, Modals, Tabs
Accordion, Carousel and many other as well as optional JavaScript extensions.
Bootstrap also gives your ability to create responsive layout with much less efforts.
Advantages of Bootstrap
The biggest advantage of using Bootstrap is that it comes with free set of tools for creating
flexible and responsive web layouts as well as common interface components.
Additionally, using the Bootstrap data APIs you can create advanced interface components
like Scroll spy and Type heads without writing a single line of JavaScript.
Here are more advantages, why one should opt for Bootstrap:
Save lots of time - you can save lots of time and efforts using the Bootstrap predefined
design templates and classes and concentrate on other development work.
Responsive features - Using Bootstrap you can easily create responsive designs. Bootstrap
responsive features make your web pages to appear more appropriately on different devices
and screen resolutions without any change in mark-up.
29
Consistent design - All Bootstrap components share the same design templates and styles
through a central library, so that the designs and layouts of your web pages are consistent
throughout your development.
Easy to use - Bootstrap is very easy to use. Anybody with the basic working knowledge of
HTML and CSS can start development with Bootstrap. Compatible with browsers -
Bootstrap is created with modem browsers in mind and it is compatible with all modern
browsers such as Mozilla Firefox, Google Chrome, Safari, Internet Explorer, and Opera.
Open Source - and the best part is, it is completely free to download and use.
Word Press allows users to have full control over the files, documents, as well as the design
and display of the content. You don't have to know a single line of code to publish content
using Word Press. The beauty of a good content management system is to allow any user to
create and manage their content without any technical know-how.
In the earlier days, an average user or a small company had to rely on static HTML sites
because they could not afford a content management system which would cost hundreds of
thousands of dollars. That problem is now solved. Word Press is open source and free for
anyone to use.
Word Press is being used in all sort of creative ways. We have seen Word Press being used to
power small business websites, blogs, large university websites, portfolios, real estate
property listing site, internal communication system for companies, web directories, movie
databases, application infrastructure base, arcade sites, and basically anything else you can.
think of.
A content management system may have the following functions:
❖ Making publishing easier and more consistent with existing structure/design
❖ Allowing the input of data that classifies content (e.g. keywords) so that it can be
searched for and retrieved
❖ Tracking changes to pages and, if necessary, allowing previous versions to be
accessed.
❖ Make it easy to edit content
❖ Allow for collaborative work on content
❖ Integrated document management systems
❖ Workflow management: Allowing for parallel content development
❖ Provide extensions and plug-ins for increased functionality Etc.
30
5.SYSTEM DESIGN
The design phase is the life cycle phase in which the detailed design of the selected system in
the study phase is accomplished. In the design phase, the technical specifications are prepared
for the performance of all allocated tasks. It also includes the construction of programs and
program testing. In the design phase, the first step is to determine the output is to be produced
and in what format. Second, input data and master files have to be designed to meet the
requirements of proposed output. The system analyst has to define the methods of capturing
and input programs and format of the output and its use by the users.
A graphic representation of a system showing the overall flow of control in the processing at
the job level; specifies what activities must be done to convert from a physical to logical
model is known as a system flowchart. Thus it summarizes what operations are undertaken
and where and when they take place. Normally in a system flowchart input from outside are
shown to the left and outputs to the right Symbols representing the operations undertaken and
the documents used are then placed in the appropriate places which gives a general flow of
data from top to bottom and left to right, Arrows are used on the connecting lines to indicate
the logical flow or sequence where the flow is not in the standard direction. No interaction is
implied by crossing lines. Decisions which lead to different actions can also be shown
31
5.1 DATA FLOW DAGRAM
A data flow diagram is graphic representation of a system that shows data flows to, from and
within the system, processing functions that change the date in some manner, and the storage
of this data. They are networks of related system function that indicated form where
information is revived and to where it is sent. An external entity is the originator or receiver
of data or information. A data store symbol portraits a file or database in which data resides.
A process is depicted by a circle sometimes it is called a bubble or transform. Process
portraits the transformation of the content of status of data
DATABASE DESIGN
This activity deals with the design of the physical database. The designer begins to
concentrate on file design or how data should be organized around user requirements. How
data are organized depends on the data and response requirements that determine hardware
configurations. An integrated approach to file design is the database. The general theme is to
handle information a an integrated whole, with a minimum redundancy and improved
performance, type and size of data structure used. The objectives: I data base are accuracy
and integrity, privacy and security of data etc.
32
CODE DESIGN
Codes can provide brief identification of data items and replace longer descriptions that
would be more awkward to store and to manipulate.
INPUT DESIGN
Input design is processing of converting the user oriented description of the inputs of the
system. The goal of designing input data to make data entry as easy logical and free from
errors as possible. In entering data, operates need to know the following.
• The allocated space for each field.
• Field sequence which must match that in the source document.
• The format in which data fields are entered for example, filling out the data field is
required through the edited format mm/dd/yy
When we approach input data design, we design source documents that capture the data and
then selected the media use to enter them into the computer. There are different ways in
which data can be introduced into the system such as
a) The data is converted into a machine sensible from by some realistic source document
and types in the relevant items using a keyboard connected to the system.
b) The document can be read directly by a machine and this converts information held in
the human sensible form into a machine readable form without need for human
investigations.
c) Data entered into a system through a keyboard. This is done interactively by the
person using the system.
d) Data is presented in a form suitable to computer as a result of some of the processing.
The data entry in the system has been designed so as to make to user friendly and also
to incorporate certain validation checks.
The field name must be documented. The field name must be known to data entry operator or
users so that the data entry will not exceed the allocated space. Our system contains the
following inputs.
33
OUTPUT DESIGN
The primary consideration in the design of all output is the information requirement and other
objective of the users. It is the most important and direct source of information the user. A
major form of output is a hard copy. Print out should be designed around the output
requirements of the user. Each output should be given a specific name or title. The output
data is displayed on the visual display unit and output can be redirected to printers and or
sorted in a file for later use.
PROCEDURE DESIGN
When program become very long, they are divided into smaller programs or modules. These
smaller programs can be written, tested and debugged separately. This technique of
programming is known as modular programming. The advantages of modular programming
are.
• It is easy to write, test and debug a module.
• Generally the modules of common nature are prepared, which can be used at many
places.
• The programmer can use the previously written programs.
• If a change is to be made, it is made in the particular module; the entire program is not
affect.
DATABASE DESIGN
34
During database design the following objectives are concerned
❖ Controlled Redundancy
❖ Data independence
❖ Accurate and integrating.
❖ More information at low cost
❖ Recovery from failure
❖ Privacy and security
❖ Performance
❖ Ease of learning and use
35
5.2 ER DAIGRAM
The Entity-Relationship (ER) model was originally proposed by Peter in 1976 as a way to
unify the network and relational database views. Simply stated the ER model is a conceptual
data model that views the real world as entities and relationships. A basic component of the
model is the Entity-Relationship diagram which is used to visually represent data objects.
Since Chen wrote his paper the model has been extended and today it is commonly used for
database design for the database designer, the utility of the ER model is:
it maps well to the relational model. The constructs used in the ER model can easily be
transformed into relational tables. It is simple and easy to understand with a minimum of
training. Therefore, the model can be used by the database designer to communicate the
design to the end user. In addition, the model can be used as a design plan by the database
developer to implement a data model in specific database management software.
The basic types of connectivity for relations are: one-to-one, one-to-many, and many-to
many. A one-to-one (1:1) relationship is when at most one instance of a entity A is associated
with one instance of entity B. For example, "employees in the company are each assigned
their own office. For each employee there exists a unique office and for each office there
exists a unique employee.
A one-to-many (1:N) relationships is when for one instance of entity A, there are zero, one,
or many instances of entity B, but for one instance of entity B, there is only one instance of
36
entity A. An example of a 1:N relationships is .A department has many employees Each
employee is assigned to one department. A many-to-many (M:N) relationship, sometimes
called non-specific, is when for one instance of entity A, there are zero, one, or many
instances of entity B and for one instance of entity B there is zero, one, or many instances of
entity A. The connectivity of a relationship describes the mapping of associated
37
5. SAMPLE CODING
ABOUT US:
<?php
session_start();
?>
<html>
<head>
<title> About | Foodie </title>
</head>
<body>
<script type="text/javascript">
window.onscroll = function()
{
scrollFunction()
};
function scrollFunction(){
if (document.body.scrollTop > 20 || document.documentElement.scrollTop >
20) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
}
}
function topFunction() {
38
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
<?php
if(isset($_SESSION['login_user1'])){
?>
39
<li><a href="#"><span class="glyphicon glyphicon-user"></span> Welcome
<?php echo $_SESSION['login_user2']; ?> </a></li>
<li><a href="foodlist.php"><span class="glyphicon glyphicon-
cutlery"></span> Food Zone </a></li>
<li><a href="cart.php"><span class="glyphicon glyphicon-shopping-
cart"></span> Cart
(<?php
if(isset($_SESSION["cart"])){
$count = count($_SESSION["cart"]);
echo "$count";
}
else
echo "0";
?>)
</a></li>
<li><a href="logout_u.php"><span class="glyphicon glyphicon-log-
out"></span> Log Out </a></li>
</ul>
<?php
}
else {
?>
</ul>
</li>
40
</ul>
</li>
</ul>
<?php
}
?>
</div>
</div>
</nav>
<div class="wide">
<iframe
src="https://www.google.com/maps/place/Le+Cafe/@11.9316155,79.8335933,17
z/data=!3m1!4b1!4m5!3m4!1s0x3a53636a24873e45:0x7f1e7ad6a30982dd!8m2!3d
11.9316103!4d79.835782" style="width: 250px"></iframe>
</body>
</html>
FOODLIST :
<?php
session_start();
if(!isset($_SESSION['login_user2'])){
41
header("location: customerlogin.php");
}
?>
<html>
<head>
<title> Explore | Foods in Foodie </title>
</head>
<body>
<script type="text/javascript">
window.onscroll = function()
{
scrollFunction()
};
function scrollFunction(){
if (document.body.scrollTop > 20 || document.documentElement.scrollTop >
20) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
}
}
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
42
<nav class="navbar navbar-inverse navbar-fixed-top navigation-clean-search"
role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-
toggle="collapse" data-target="#myNavbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="index.php">Foodie</a>
</div>
</ul>
<?php
if(isset($_SESSION['login_user1'])){
?>
43
<li class="active" ><a href="foodlist.php"><span class="glyphicon glyphicon-
cutlery"></span> Food Zone </a></li>
<li><a href="cart.php"><span class="glyphicon glyphicon-shopping-
cart"></span> Cart (<?php
if(isset($_SESSION["cart"])){
$count = count($_SESSION["cart"]);
echo "$count";
}
else
echo "0";
?>) </a></li>
<li><a href="logout_u.php"><span class="glyphicon glyphicon-log-
out"></span> Log Out </a></li>
</ul>
<?php
}
else {
?>
44
<?php
}
?>
</div>
</div>
</nav>
<!--div class="item">
<img src="images/home.jpg" style="width:100%;">
<div class="carousel-caption">
</div>
</div-->
<div class="item">
<img src="images/slide001.jpg" style="width:100%;">
<div class="carousel-caption">
</div>
</div>
<div class="item">
<img src="images/slide003.jpg" style="width:100%;">
<div class="carousel-caption">
</div>
</div>
</div>
45
<a class="left carousel-control" href="#myCarousel" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#myCarousel" data-slide="next">
<span class="glyphicon glyphicon-chevron-right"></span>
<span class="sr-only">Next</span>
</a>
</div>
<div class="jumbotron">
<div class="container text-center">
<h1>Welcome To Foodie</h1>
<!--p>Let food be thy medicine and medicine be thy food</p-->
</div>
</div>
require 'connection.php';
$conn = Connect();
if (mysqli_num_rows($result) > 0)
{
$count=0;
while($row = mysqli_fetch_assoc($result)){
if ($count == 0)
echo "<div class='row'>";
?>
<div class="col-md-3">
46
<div class="mypanel" align="center";>
<img src="<?php echo $row["images_path"]; ?>" class="img-responsive">
<h4 class="text-dark"><?php echo $row["name"]; ?></h4>
<h5 class="text-info"><?php echo $row["description"]; ?></h5>
<h5 class="text-danger">₹ <?php echo $row["price"]; ?>/-</h5>
<h5 class="text-info">Quantity: <input type="number" min="1" max="25"
name="quantity" class="form-control" value="1" style="width: 60px;"> </h5>
<input type="hidden" name="hidden_name" value="<?php echo $row["name"];
?>">
<input type="hidden" name="hidden_price" value="<?php echo $row["price"];
?>">
<input type="hidden" name="hidden_RID" value="<?php echo $row["R_ID"]; ?>">
<input type="submit" name="add" style="margin-top:5px;" class="btn btn-
success" value="Add to Cart">
</div>
</form>
</div>
<?php
$count++;
if($count==4)
{
echo "</div>";
$count=0;
}
}
?>
</div>
</div>
<?php
}
else
{
?>
<div class="container">
<div class="jumbotron">
<center>
<label style="margin-left: 5px;color: red;"> <h1>Oops! No food is
available.</h1> </label>
<p>Stay Hungry...! :P</p>
47
</center>
</div>
</div>
<?php
?>
</body>
</html>
<?php
include('session_m.php');
if(!isset($login_session)){
header('Location: managerlogin.php');
}
?>
<!DOCTYPE html>
<html>
<head>
<title> Manager Login | Foodie </title>
</head>
<body>
48
<script type="text/javascript">
window.onscroll = function()
{
scrollFunction()
};
function scrollFunction(){
if (document.body.scrollTop > 20 || document.documentElement.scrollTop >
20) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
}
}
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
49
<li><a href="#"><span class="glyphicon glyphicon-user"></span> Welcome
<?php echo $login_session; ?> </a></li>
<li class="active"> <a href="managerlogin.php">MANAGER CONTROL
PANEL</a></li>
<li><a href="logout_m.php"><span class="glyphicon glyphicon-log-
out"></span> Log Out </a></li>
</ul>
</div>
</div>
</nav>
<div class="container">
<div class="jumbotron">
<h1>Hello Manager! </h1>
<p>Manage all your restaurant from here</p>
</div>
</div>
<div class="container">
<div class="container">
<div class="col">
</div>
</div>
<div class="list-group">
<a href="myrestaurant.php" class="list-group-item ">My
Restaurant</a>
<a href="view_food_items.php" class="list-group-item">View
Food Items</a>
<a href="add_food_items.php" class="list-group-item ">Add Food
Items</a>
<a href="edit_food_items.php" class="list-group-item ">Edit Food
Items</a>
<a href="delete_food_items.php" class="list-group-item ">Delete
Food Items</a>
50
<a href="view_order_details.php" class="list-group-item active">View Order
Details</a>
</div>
</div>
<div class="col-xs-9">
<div class="form-area" style="padding: 0px 100px 100px 100px;">
<form action="" method="POST">
<br style="clear: both">
<h3 style="margin-bottom: 25px; text-align: center; font-size: 30px;"> YOUR
FOOD ORDER LIST </h3>
<?php
// Storing Session
$user_check=$_SESSION['login_user1'];
$sql = "SELECT * FROM orders o WHERE o.R_ID IN (SELECT r.R_ID FROM
RESTAURANTS r WHERE r.M_ID='$user_check') ORDER BY order_date";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0)
{
?>
51
</tr>
</thead>
<?PHP
//OUTPUT DATA OF EACH ROW
while($row = mysqli_fetch_assoc($result)){
?>
<tbody>
<tr>
<td> <span class="glyphicon glyphicon-menu-right"></span> </td>
<td><?php echo $row["order_ID"]; ?></td>
<td><?php echo $row["F_ID"]; ?></td>
<td><?php echo $row["order_date"]; ?></td>
<td><?php echo $row["foodname"]; ?></td>
<td><?php echo $row["price"]; ?></td>
<td><?php echo $row["quantity"]; ?></td>
<td><?php echo $row["username"]; ?></td>
</tr>
</tbody>
<?php } ?>
</table>
<br>
<?php } ?>
</form>
</div>
</div>
</div>
<br>
<br>
<br>
<br>
52
</body>
</html>
MY RESTAURENT:
<?php
include('session_m.php');
if(!isset($login_session)){
header('Location: managerlogin.php'); // Redirecting To Home Page
}
?>
<!DOCTYPE html>
<html>
<head>
<title> Manager Login | Foodie </title>
</head>
<body>
<script type="text/javascript">
window.onscroll = function()
{
scrollFunction()
};
function scrollFunction(){
if (document.body.scrollTop > 20 || document.documentElement.scrollTop >
20) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
53
}
}
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
</div>
</nav>
54
<div class="container">
<div class="jumbotron">
<h1>Hello Manager! </h1>
<p>Manage all your restaurant from here</p>
</div>
</div>
<div class="container">
<div class="container">
<div class="col">
</div>
</div>
<div class="list-group">
<a href="myrestaurant.php" class="list-group-item active">My
Restaurant</a>
<a href="view_food_items.php" class="list-group-item ">View
Food Items</a>
<a href="add_food_items.php" class="list-group-item ">Add Food
Items</a>
<a href="edit_food_items.php" class="list-group-item ">Edit Food
Items</a>
<a href="delete_food_items.php" class="list-group-item ">Delete
Food Items</a>
</div>
</div>
<div class="col-xs-9">
<div class="form-area" style="padding: 0px 100px 100px 100px;">
<form action="myrestaurant1.php" method="POST">
<br style="clear: both">
<h3 style="margin-bottom: 25px; text-align: center; font-size: 30px;"> MY
RESTAURANT</h3>
<div class="form-group">
55
<input type="text" class="form-control" id="name" name="name"
placeholder="Your Restaurant's Name" required="">
</div>
<div class="form-group">
<input type="email" class="form-control" id="email" name="email"
placeholder="Your Restaurant's Email" required="">
</div>
<div class="form-group">
<input type="text" class="form-control" id="contact" name="contact"
placeholder="Your Restaurant's Contact Number" required="">
</div>
<div class="form-group">
<input type="text" class="form-control" id="address" name="address"
placeholder="Your Restaurant's Address" required="">
</div>
<div class="form-group">
<button type="submit" id="submit" name="submit" class="btn btn-primary
pull-right"> ADD RESTAURANT </button>
</div>
</form>
</div>
</div>
</div>
</body>
</html>
MANAGER LOGIN:
<?php
include('login_m.php'); // Includes Login Script
if(isset($_SESSION['login_user1'])){
header("location: myrestaurant.php"); //Redirecting to myrestaurant Page
}
?>
56
<!DOCTYPE html>
<html>
<head>
<title> Manager Login | Foodie </title>
</head>
<body>
<script type="text/javascript">
window.onscroll = function()
{
scrollFunction()
};
function scrollFunction(){
if (document.body.scrollTop > 20 || document.documentElement.scrollTop >
20) {
document.getElementById("myBtn").style.display = "block";
} else {
document.getElementById("myBtn").style.display = "none";
}
}
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
57
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-
toggle="collapse" data-target="#myNavbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="index.php">Foodie</a>
</div>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
58
</nav>
<div class="container">
<div class="jumbotron">
<h1>Hi Manager,<br> Welcome to <span class="edit"> Foodie </span></h1>
<br>
<p>Kindly LOGIN to continue.</p>
</div>
</div>
<div class="row">
<div class="form-group col-xs-12">
<label for="username"><span class="text-danger" style="margin-right:
5px;">*</span> Username: </label>
<div class="input-group">
<input class="form-control" id="username" type="text" name="username"
placeholder="Username" required="" autofocus="">
<span class="input-group-btn">
<label class="btn btn-primary"><span class="glyphicon glyphicon-user"
aria-hidden="true"></label>
</span>
</span>
</div>
</div>
</div>
<div class="row">
<div class="form-group col-xs-12">
<label for="password"><span class="text-danger" style="margin-right:
5px;">*</span> Password: </label>
<div class="input-group">
<input class="form-control" id="password" type="password"
name="password" placeholder="Password" required="">
<span class="input-group-btn">
59
<label class="btn btn-primary"><span class="glyphicon glyphicon-lock"
aria-hidden="true"></span></label>
</span>
</div>
</div>
</div>
<div class="row">
<div class="form-group col-xs-4">
<button class="btn btn-primary" name="submit" type="submit" value="
Login ">Submit</button>
</div>
</div>
<label style="margin-left: 5px;">or</label> <br>
<label style="margin-left: 5px;"><a href="managersignup.php">Create a new
account.</a></label>
</form>
</div>
</div>
</div>
</div>
</body>
</html>
SQL DATABASE:
60
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";
--
-- Database: `foodorder`
--
-- --------------------------------------------------------
--
-- Table structure for table `contact`
--
--
-- Dumping data for table `contact`
--
-- --------------------------------------------------------
--
-- Table structure for table `customer`
--
61
CREATE TABLE `customer` (
`username` varchar(30) NOT NULL,
`fullname` varchar(30) NOT NULL,
`email` varchar(30) NOT NULL,
`contact` varchar(30) NOT NULL,
`address` varchar(50) NOT NULL,
`password` varchar(30) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Dumping data for table `customer`
--
-- --------------------------------------------------------
--
-- Table structure for table `food`
--
--
-- Dumping data for table `food`
--
62
INSERT INTO `food` (`F_ID`, `name`, `price`, `description`, `R_ID`, `images_path`,
`options`) VALUES
(58, 'Juicy Masala Paneer Kathi Roll', 40, 'Juicy Masala Paneer Kathi Roll loaded
with Masala Paneer chunks, onion & Mayo.', 1,
'images/Masala_Paneer_Kathi_Roll.jpg', 'ENABLE'),
(59, 'Meurig Fish', 60, 'Try Meurig - A whole Pomfret fish grilled with tangy
marination & served with grilled onions and tomatoes.', 2, 'images/Meurig.jpg',
'ENABLE'),
(60, 'Chocolate Hazelnut Truffle', 99, 'Lose all senses over this very delicious
chocolate hazelnut truffle.', 3, 'images/Chocolate_Hazelnut_Truffle.jpg', 'ENABLE'),
(61, 'Happy Happy Choco Chip Shake', 80, 'Happy Happy Choco Chip Shake - a
perfect party sweet treat.', 1, 'images/Happy_Happy_Choco_Chip_Shake.jpg',
'ENABLE'),
(62, 'Spring Rolls', 65, 'Delicious Spring Rolls by Dragon Hut, Delhi. Order now!!!', 2,
'images/Spring_Rolls.jpg', 'ENABLE'),
(63, 'Baahubali Thali', 75, 'Baahubali Thali is accompanied by Kattapa Biriyani,
Devasena Paratha, Bhalladeva Patiala Lassi', 3, 'images/Baahubali_Thali.jpg',
'ENABLE'),
(65, 'Coffee', 25, 'concentrated coffee made by forcing pressurized water through
finely ground coffee beans.', 4, 'images/coffee.jpg', 'DISABLE'),
(66, 'Tea', 20, 'The simple elixir of tea is of our natural world.', 4, 'images/tea.jpg',
'DISABLE'),
(68, 'Paneer', 85, 'it', 6, 'images/paneer pakora.jpg', 'DISABLE'),
(69, 'Coffee', 25, 'concentrated coffee made by forcing pressurized water through
finely ground coffee beans.', 2, 'images/coffee.jpg', 'ENABLE'),
(70, 'Tea', 20, 'The simple elixir of tea is of our natural world.', 2, 'images/tea.jpg',
'ENABLE'),
(71, 'Samosa', 40, 'Cocktail Crispy Samosa..', 2, 'images/samosa.jpg', 'ENABLE'),
(72, 'Paneer Pakora', 45, 'it gives whole new dimension even to the most boring or
dull vegetable', 2, 'images/paneer pakora.jpg', 'ENABLE'),
(73, 'Puff', 35, 'Vegetable Puff, a snack with crisp-n-flaky outer layer and mixed
vegetables stuffing', 2, 'images/puff.jpg', 'ENABLE'),
(74, 'Pizza', 200, 'Good and Tasty ', 2, 'Pizza.jpg', 'DISABLE'),
(75, 'French Fries', 60, 'Pure Veg and Tasty.', 2, 'frenchfries.jpg', 'DISABLE'),
(76, 'Pakora', 35, 'Pure Vegetable and Tasty.', 2, 'images/Pakora.jpg', 'DISABLE'),
(77, 'Pizza', 200, 'Pure Vegetable and Tasty.', 2, 'images/Pizza.jpg', 'ENABLE'),
(78, 'French Fries', 75, 'Pure Veg and Tasty.', 2, 'images/frenchfries.jpg', 'ENABLE'),
(79, 'Pakora', 45, 'TASTY', 2, 'images/Pakora.jpg', 'ENABLE');
-- --------------------------------------------------------
--
-- Table structure for table `manager`
63
--
--
-- Dumping data for table `manager`
--
-- --------------------------------------------------------
--
-- Table structure for table `orders`
--
--
64
-- Dumping data for table `orders`
--
65
(40, 73, 'Puff', 35, 1, '2019-03-15', 'ckumar', 2),
(41, 77, 'Pizza', 200, 2, '2019-03-16', 'ckumar', 2),
(42, 70, 'Tea', 20, 1, '2019-03-16', 'ckumar', 2),
(43, 60, 'Chocolate Hazelnut Truffle', 99, 2, '2019-03-16', 'ckumar', 3),
(44, 70, 'Tea', 20, 1, '2019-03-16', 'ckumar', 2),
(45, 60, 'Chocolate Hazelnut Truffle', 99, 2, '2019-03-16', 'ckumar', 3),
(46, 70, 'Tea', 20, 1, '2019-03-16', 'ckumar', 2),
(47, 60, 'Chocolate Hazelnut Truffle', 99, 2, '2019-03-16', 'ckumar', 3),
(48, 60, 'Chocolate Hazelnut Truffle', 99, 4, '2019-03-25', 'ckumar', 3),
(49, 62, 'Spring Rolls', 65, 6, '2019-03-25', 'ckumar', 2),
(50, 70, 'Tea', 20, 5, '2019-03-25', 'ckumar', 2),
(51, 73, 'Puff', 35, 3, '2019-03-25', 'ckumar', 2),
(52, 70, 'Tea', 20, 1, '2019-03-30', 'ckumar', 2),
(53, 60, 'Chocolate Hazelnut Truffle', 99, 5, '2019-03-30', 'ckumar', 3),
(54, 69, 'Coffee', 25, 7, '2019-03-30', 'ckumar', 2),
(55, 62, 'Spring Rolls', 65, 1, '2019-04-01', 'ckumar', 2),
(56, 70, 'Tea', 20, 4, '2019-04-01', 'ckumar', 2),
(57, 70, 'Tea', 20, 1, '2019-04-01', 'ckumar', 2),
(58, 60, 'Chocolate Hazelnut Truffle', 99, 1, '2019-04-01', 'ckumar', 3),
(59, 59, 'Meurig Fish', 60, 6, '2019-04-02', 'ckumar', 2),
(60, 61, 'Happy Happy Choco Chip Shake', 80, 1, '2019-04-02', 'ckumar', 1),
(61, 71, 'Samosa', 40, 3, '2019-04-17', 'ckumar', 2),
(62, 70, 'Tea', 20, 4, '2019-04-17', 'ckumar', 2),
(63, 72, 'Paneer Pakora', 45, 2, '2019-04-17', 'ckumar', 2),
(64, 71, 'Samosa', 40, 3, '2019-04-17', 'ckumar', 2),
(65, 70, 'Tea', 20, 4, '2019-04-17', 'ckumar', 2),
(66, 72, 'Paneer Pakora', 45, 2, '2019-04-17', 'ckumar', 2),
(67, 60, 'Chocolate Hazelnut Truffle', 99, 1, '2019-04-18', 'ckumar', 3),
(68, 71, 'Samosa', 40, 1, '2019-04-18', 'ckumar', 2);
-- --------------------------------------------------------
--
-- Table structure for table `restaurants`
--
66
--
-- Dumping data for table `restaurants`
--
--
-- Indexes for dumped tables
--
--
-- Indexes for table `customer`
--
ALTER TABLE `customer`
ADD PRIMARY KEY (`username`);
--
-- Indexes for table `food`
--
ALTER TABLE `food`
ADD PRIMARY KEY (`F_ID`,`R_ID`),
ADD KEY `R_ID` (`R_ID`);
--
-- Indexes for table `manager`
--
ALTER TABLE `manager`
ADD PRIMARY KEY (`username`);
--
-- Indexes for table `orders`
--
ALTER TABLE `orders`
67
ADD PRIMARY KEY (`order_ID`),
ADD KEY `F_ID` (`F_ID`),
ADD KEY `username` (`username`),
ADD KEY `R_ID` (`R_ID`);
--
-- Indexes for table `restaurants`
--
ALTER TABLE `restaurants`
ADD PRIMARY KEY (`R_ID`),
ADD UNIQUE KEY `M_ID_2` (`M_ID`),
ADD KEY `M_ID` (`M_ID`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `food`
--
ALTER TABLE `food`
MODIFY `F_ID` int(30) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=80;
--
-- AUTO_INCREMENT for table `orders`
--
ALTER TABLE `orders`
MODIFY `order_ID` int(30) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=69;
--
-- AUTO_INCREMENT for table `restaurants`
--
ALTER TABLE `restaurants`
MODIFY `R_ID` int(30) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=7;
--
-- Constraints for dumped tables
--
--
-- Constraints for table `food`
--
ALTER TABLE `food`
68
ADD CONSTRAINT `food_ibfk_1` FOREIGN KEY (`R_ID`) REFERENCES `restaurants`
(`R_ID`);
--
-- Constraints for table `orders`
--
ALTER TABLE `orders`
ADD CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`F_ID`) REFERENCES `food`
(`F_ID`),
ADD CONSTRAINT `orders_ibfk_2` FOREIGN KEY (`username`) REFERENCES
`customer` (`username`),
ADD CONSTRAINT `orders_ibfk_3` FOREIGN KEY (`R_ID`) REFERENCES
`restaurants` (`R_ID`);
--
-- Constraints for table `restaurants`
--
ALTER TABLE `restaurants`
ADD CONSTRAINT `restaurants_ibfk_1` FOREIGN KEY (`M_ID`) REFERENCES
`manager` (`username`);
COMMIT;
69
7. TESTING
Software testing also helps to identify errors, gaps or missing requirements in contrary to the
actual requirements. It can be either done manually or using automated tools. Some prefer
saying Software testing as a white box and Black Box Testing.
Software testing is the process of executing a program with intension of finding errors in the
code. It is a process of evolution of system or its parts by manual or automatic means to
verify that it is satisfying specified or requirements or not. Generally, no system is perfect
due to communication problems between user and developer, time constraints, or conceptual
mistakes by developer. To purpose of system testing is to check and find out these errors or
faults as early as possible so losses due to it can be saved.
70
Testing is the fundamental process of software success. Testing is not a distinct phase in
system development life cycle but should be applicable throughout all phases i.e. design
development and maintenance phase. Testing is used to show incorrectness and considered to
success when an error is detected.
Software testing is an extremely creative and challenging task. Some important principles of
software testing are as given:
• All tests should be traceable to customer requirements.
• Testing time and resources should be limited i.e. avoid redundant testing.
• It is impossible to test everything.
• Use effective resources to test.
• Test should be planned long before testing begins i.e. after requirement phase. Test
for invalid and unexpected input conditions as well as valid conditions.
• Testing should begin in "in the small" and progress towards testing "in the large".
• For the most effective testing should be conducted by an independent party.
• Document test cases and test results.
71
• Examining what the software not doing which it expected to do and also checking
what it is doing that was not expected to do.
SYSTEM TESTING
System testing is a critical element of quality assurance and represents the ultimate review of
analysis, design and coding. Test case design focuses on a set of techniques for the creation
of test because that meet overall testing objective. When a system is developed it is hoped
that it performs properly. The main purpose of testing an information system is to find the
errors and correct them. The scope of system testing should include both manual and
computerized operations. System testing is comprehensive evaluation of the programs,
manual procedures, computer operations and controls. System testing is the process of
checking whether the developed system is working according to the objective and
requirement. All testing is to be conducted in accordance to the test conditions specified
earlier. This will ensure that the test coverage meets the requirements and that testing is done
in a systematic manner.
TEST CHARACTERS:
• A good test has a high probability of finding an error.
• A good test is not redundant.
• A good test should be "best of breed":
The method of Black Box Testing is used by the software engineer to derive the required
results of the test cases:
❖ Black Box Testing alludes to test that are conducted at the software interface. Client
Needs Acceptance Testing Requirements System Testing Design Integration Testing
Code Unit Testing.
❖ A Black Box Test examines some fundamental aspect of a system with little regard
for the internal logic structure of the software.
❖ A limited number of important logical paths can be selected and exercised, Black box
testing was performed to find errors in the following categories:
✓ Incorrect or missing functions
✓ Graphics error.
✓ Errors in data in binary format.
✓ Error in data in integer format.
✓ File error.
✓ Pointer error
72
✓ Variable error
Unit Testing
Code testing was carried out to see the correctness of the logic involved and the correctness
of the modules. Tests were conducted based upon sample and live data as well. All the
modules are checked separately for assuming correctness and accuracy in all the calculations.
Specification Testing
It examines the specification stating about what program should do and how it performs
under various conditions. This testing strategy is better strategy since it focuses on the way
the software is expected to work.
Integration Testing
The next level testing that was performed is often referred to as integration testing. During
this phase many unit tested modules were combined into subsystems, which were then tested.
The goal here was to see if modules can be integrated properly. Here the emphasis was on
testing interfaces between different constituent modules of system.
73
Functionality Testing
Here the entire software system was tested. The reference document for this process is the
requirements document, and the goal was to see if software solution meets its requirements.
This level of testing is essentially a validation exercise, and in many situation it is the only
validation activity.
Stress Testing
Proxy server developed for the specified purpose was testing under heavy load, i.e. a large
no. of clients were made to sit in lab and were asked to send requests for logging in and then
were asked to request for text on internet. System responded to request as desired.
Acceptance Testing
Acceptance was performed in the real environment with realistic data of the client to
demonstrate if the software developed is working satisfactorily. Here the main focus was on
the external behaviour of the system; the internal logic of the program was not emphasized.
Overview of Testing
1. Testing: Testing involves executing the program (or part of it) using sample data and
inferring from the output whether the software performs correctly or not. This can be done
either during module development (unit testing) or when several modules are combined
(system testing).
2. Direct Testing: Defect testing is testing for situation where the program does not meet its
functional specification. Performance testing tests a system's performance or reliability under
realistic loads. This may go some way to ensuring that the program meets its non-functional
requirements.
Debugging
Debugging is a cycle of detection, location, repair and test. Debugging is a hypothesis testing
process. When a bug is detected, the tester must form a hypothesis about the cause and
location of the bug. Further examination of the execution of the program (possible including
many returns of it) will usually take place to confirm the hypothesis. If the hypothesis is
74
demonstrated to be incorrect, a new hypothesis must be formed. Debugging tools that show
the state of the program are useful for this, but inserting print statements is often the only
approach. Experienced debuggers use their knowledge of common and/or obscure bugs to
facilitate the hypothesis testing process. After fixing a bug, the system must be reset to ensure
that the fix has worked and that no other bugs have been introduced. This is called regression
testing. In principle, all tests should be performed again but this is often too expensive to do.
75
8. SCREENSHOTS
76
77
78
79
80
81
82
10.FUTURE ENHANCEMENT
This order food online system project aimed at developing an online food ordering system
which can be used in small places, and medium cities firstly and then on a large scale.
It is developed to help restaurants to simplify their daily operational and managerial task as
well as improve the dining experience of customers.
And also helps restaurant develop healthy customer relationships by providing good services.
The system enables staff to let update and make changes to their food and beverage list
information based on the orders placed and the orders completed.
We think that not a single project is ever considered as complete forever. Because our mind is
always thinking something new and our necessities also are growing day by day. We always
want something more than what we have. Our application also,
If you see at the first glance then you find it to be complete but we want to make it still
mature and fully automatically.
This application avoids the manual work and the problems concern with it. It is an easy way
to obtain the information regarding the different department works information that is
currently issued.
This project can be easily implemented under various situations. We can add new features as
and when we require. Reusability is possible as and when require in this project. There is
flexibility in all the modules. There are many features which could be added to this project
for making this project more productive.
It is still mature and fully enthusiastically. Any requirements, this project is completed but
still, they want to update and modify some modules. We are always thinking about
association requirements also growing day by day.
We always want to implement something more. This project is completed when you watch,
but we want to implement more things.
83
Following trends will help online restaurant ordering a great success:
➢ Drive Sales with Social Media- The popularity of smartphones and usage of social
media using smartphones is known to the world.
➢ Mobility and Ease- With the mobile payment feature ordering food using restaurant
based apps have become easier these days.
➢ Phone Orders Outstripped-The case and convenience of online food ordering using
restaurant mobile apps makes it easy.
➢ Home Deliveries Increased-The more the population is increasing with their increased
purchasing power the more are the situations of food ordering occurring.
➢ Price Drops- More and more restaurants are using the mobile platform for food
➢ ordering. This means the competitiveness is high in the market.
84
11.CONCLUSION
An online food ordering system is developed where the customers can make an order for the
food and avoid the hassles of waiting for the order to be taken by the waiter. Using the
application, the end users register online, read the E-menu card and select the food from the
e-menu card to order food online. Once the customer selects the required food item the chef
will be able to see the results on the screen and start processing the food. This application
nullifies the need of a waiter or reduces the workload of the waiter. The advantage is that in a
crowded restaurant there will be chances that the waiters are overloaded with orders and they
are unable to meet the requirements of the customer in a satisfactory manner, Therefore by
using this application, the users can directly place the order for food to the chef online. In
conclusion an online food ordering system is proposed which is useful in small family run
restaurants as well as in places like college cafeteria, etc. This project can later be expanded
on a larger scale. It is developed for restaurants to simplify their routine managerial and
operational task and to improve the dining experience of the clients. This also helps the
restaurant owners develop healthy customer relationships by providing reasonably good
services. The system also enables the restaurant to know the items available in real time and
make changes to their food and beverage inventory based on the orders placed and the orders
completed.
The software development is never completed. There is always a need for modification.
There could have been other approaches to implement the system. I have tried to my level
best to make the system an interactive as possible. The system has been developed with much
care and free of errors and at the same time it is efficient and less time consuming
Detailed information gathering has to be done. Without that the purpose for using the
software won't be satisfied properly.
However it can give good profits in the long run. The software requires change in the
business practices.
Efficient organization of all knowledge is the analysis company and easy analysis access and
retrieval of information is possible.
To implement this application the web server used is Apache and the server side technology
used to create the web pages is PHP. PHP has several advantages such as enhanced
performance, scalability, built-in security and simplicity.
The database used to store the data is MySQL database. In the course of the implementation
of this application many lessons have been learned including designing an interface, database
access technique and programming for the web. This application helped in understanding the
different technologies used to create interactive web pages. The implementation of the project
85
has given a precise knowledge of how PHP is used to create web pages and how to connect to
MySQL database. Overall the implementation of this project was an excellent learning
opportunity.
All the application codes are in PHP and MYSQL backend. I am using is free trial, so its
functionalities are limited. My project satisfies all the functional requirements mentioned in
the project, however, it doesn't contain any Franchise module. In future I will add this feature
in this portal with some other variation; I would like to design more user friendly portal
system
86
12.BIBLIOGRAPHY
During the development of our system, we have taken the reference from Books and journals.
Which we would like to mention in this section.
Software Engineering
These are the following links which assist me at each and every step in completing this
project, without them
▪ www.google.com
▪ www.mysql.com
▪ http://en.wikipedia.org/wiki/Recruitment
▪ www.google.co.in
▪ http://www.recruitmentsystems.com/
▪ http://en.wikipedia.org/wiki/Human resource management
87