Nothing Special   »   [go: up one dir, main page]

AJU190447

Download as pdf or txt
Download as pdf or txt
You are on page 1of 183

A Project Report On

“ONLINE FOOD ORDERING


SYSTEM”
Submitted in Partial Fulfillment of

BACHELOR OF COMPUTER APPLICATION


By
SHUBHAM KUMAR
AJU/190447
Under the guidance of
Prof. Alka Kumari

DEPARTMENT OF COMPUTER SCIENCE &


INFORMATION TECHNOLOGY
(Session: 2019-22)

ONLINE FOOD ORDERING SYSTEM Page No. 1


ARKA JAIN UNIVERSITY
JAMSHEDPUR, JHARKHAND
DEPARTMENT OF COMPUTER SCIENCE & INFORMATION TECHNOLOGY
2019-2022

CERTIFICATE

ONLINE FOOD ORDERING SYSTEM Page No. 2


INTERNSHIP CERTIFICATE

ONLINE FOOD ORDERING SYSTEM Page No. 3


ABSTRACT

The purpose of this project is to devlop and online food ordering system. It is a system that
enable customer to place their food order online at any time at any place.

The reason to devlop this system is due to the issue facing by food industry. These issue are
such as peak hour-long queue issues, increase of take away than visitors, speed major request
of food management, limited promotion and quality control of food management.

Therefore, this system enhance the speed and standardization of taking order from the
cutomer and supply it to the staff in the kitchen accordingly.

Beside that it provide user friendly web pages and effective advertising medium to the new
product of the online food ordering restaurant to the customer at reasonable price.

ONLINE FOOD ORDERING SYSTEM Page No. 4


ACKNOWLEDGEMENT

I would like to express my sincere gratitude to several individuals and organization for
supporting me throughout the completion of my project.

First, I wish to express my sincere gratitude to my mentor (Ms. Alka Kumari) for her
enthusiasm patience, insightful comments, helpful information, practical advices and
unceasing ideas that have helped me tremendously at all times in my Project and writing of
these thesis. Her immense knowledge, profound experience and professional expertise in
Backend has enabled me to complete this project successfully. Without her support and
guidance, this project would not have been possible.

I am also thankful to our respected HOD Dr. Arvind Kumar Pandey and all faculty members
for loving inspiration and timely guidance. I also wish to express my sincere thanks to the
Department of Computer science & Information technology of ARKA JAIN UNIVERSITY
for accepting this project.

Thanks for all your encouragement!

ONLINE FOOD ORDERING SYSTEM Page No. 5


DECLARATION

ONLINE FOOD ORDERING SYSTEM Page No. 6


TABLE OF CONTENTS

Chapter 1

Introduction and Objective………………………….…….………………………….…..9

1.1 Introduction …………………………………………………………………………….9

1.2 Objective…………………………….…………………………………………………10

Chapter 2

System Analysis………………………………….……………………………………..11-21

2.1 Software Requirement Specification (SRS) …………………………………………....11

2.1.1 Data Gathering..................................................................................................11

2.1.2 Feasible Study...................................................................................................12

2.1.3 Software Process Model....................................................................................12

2.2 Hardware Requirement ....................................................................................................13

2.3 Software Requirement ......................................................................................................13

2.4 Justification of Selection of Technology ……………………………………………......14

2.4.1 XAMPP .............................................................................................................14

2.4.2 Language ...........................................................................................................14

HTML

CSS

JavaScript

Bootstrap

PHP

2.4.3 MySQL ............................................................................................................. 15

ONLINE FOOD ORDERING SYSTEM Page No. 7


2.5 Data Flow Diagram (DFD)................................................................................................15

2.5.1 DFD 0 Level ......................................................................................................16

2.5.2 DFD 1 Level ......................................................................................................17

2.5.3 DFD 2 Level ......................................................................................................19

Chapter 3

3.1 Entity Relationship Diagram (ER- Diagram)....................................................................23

3.2 Data Dictionary………………………………….………………………………………24

3.3 Database Normalization…………………………………………………………………27

Chapter 4

Program Code and Testing………...............................................................................28-175

4.1 Coding ...................................................................................................................... 28-173

4.2 Testing Approach......................................................................................................174-175

Chapter 5

Results and Discussion………………………………………………….....................176-180

5.1 Output Screen...........................................................................................................176-180

Chapter 6

Conclusion…………………………………………………………………………………181

6.1 Limitation........................................................................................................................182

6.2 Future Scope....................................................................................................................182

Chapter 7

7.1 References.......................................................................................................................183

ONLINE FOOD ORDERING SYSTEM Page No. 8


CHAPTER 1

INTRODUCTION

Online food ordering system is proposed here which simplifies the food ordering process. It
can be defined as a simple and convenient way for customers to order food online, without
having to go to the restaurant. The proposed system shows an customer 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..

User can order his/her favourite food from desired restaurant and enjoy them with his/her
loved ones. and through this website only the admin who has the contraption power of this
website can look up to every activities of user and can guide or help them whenever a user is
needed for help.

As you open the website RESTRO 1839 a animated page will load and it will have two
options one i.e Login and other sign-up.

If a user is new to the website then he can do sign-up first then he will get a user id and
password , through which he can then Login into the website easily .

Login into the website easily, and if he has that user id and password from previously so he
can direct switch on to login area.

After login the user will be redirected to home page where he will get to see a navbar
containing options like about section, menu section , order section, contact section.

Scrolling down there he will get option to explore our website. Then if he want to book order
for food then he will get option of verieties of foods options user have to go down the website
where the option will be available.

User can book his favourite foods and can cancel it also , after order he will get a message that
his order has been placed after that it will lead to the payment option where user has to pay the
required amount through Cash on Delivery or Online payment.

And all these activities can be controlled by admin he will get notification whenever any user
will login into the website and place any order. Admin can add ,delete and update foods .

ONLINE FOOD ORDERING SYSTEM Page No. 9


OBJECTIVE

It is required to keep the computerized data, as it is difficult to do manually and is also fast as
it takes less time. Purpose to computerize its data is to overcome from hazard of manual
system. This web portal is developed as to deliver food to everyone in more efficient and
effective way.

ONLINE FOOD ORDERING SYSTEM Page No. 10


CHAPTER 2

REQUIREMENT AND ANALYSIS

2.1 Software Requirement Specification

A software requirements specification (SRS) is a detailed description of a software system to


be developed with its functional and non-functional requirements. The SRS is developed
based the agreement between customer and contractors. It may include the use cases of how
user is going to interact with software system. The software requirement specification
document consistent of all necessary requirements required for project development. To
develop the software system we should have clear understanding of Software system. To
achieve this we need to continuous communication with customers to gather all requirements.

2.1.1 Data Gathering Data Gathering is the process of gathering and measuring information
on variables of interest, in an established systematic fashion that enables one to answer stated
research questions, test hypotheses, and evaluate outcomes. The data collection component of
research is common to all fields of study including physical and social sciences, humanities,
business, etc. Data gathering techniques used in the (Software Development Lifecycle)
SDLC.

2.1.2 Feasibility Study The measure of how beneficial or practical the development of
informant system will be to an organization. along this topic feasibility is measured. So far
taking the feasibility study and feasibility analysis during the development of the project food
Ordering system we have studied on the following four major categories of feasibility study

 Operational feasibility : Operational feasibility is the measure of how well a proposed


system solves the problems, and takes advantage of the opportunities identified during scope
definition and how it satisfies the requirements identified in the requirements analysis phase
of system development.

 Technical feasibility : A technical feasibility study assesses the details of how you intend
to deliver a product or service to customers. Think materials, labour, transportation, where

ONLINE FOOD ORDERING SYSTEM Page No. 11


your business will be located, and the technology that will be necessary to bring all this
together.

 Schedule Feasibility : Schedule Feasibility is defined as the probability of a project to be


completed within its scheduled time limits, by a planned due date. If a project has a high
probability to be completed on-time, then its schedule feasibility is appraised as high.

 Economic feasibility : the degree to which the economic advantages of something to be


made, done, or achieved are greater than the economic costs: The state commissioned a report
on the economic feasibility of a single-payer health system. During the development of food
Ordering system . we have tried to address all these feasibility analysis phases seriously .
That‟s why we think , our project will succeed properly. Food ordering System

2.1.3 Software Process Model

A waterfall model under the software development life cycle (SDLC) is the methodology
used to produce the food ordering system and the customer self ordering system. It is used by
system developers to produce or alter information systems or software. It divides the
development process into several stages or processes. After the completion of one stage, it
will logically move to another stage. Sometimes moving back to the previous stage is
necessary due to failure that occurs in current stage.

ONLINE FOOD ORDERING SYSTEM Page No. 12


2.2 HARDWARE REQUIREMENTS

 Processor : 1.6GHz or Faster

 Disk space: 4GB of Available Hard Disk

 RAM: 2GB

 Graphics – Directx 9- capable Video Card

 Display – 1024 x 768 or Higher Resolution

2.3 SOFTWARE REQUIREMENT

 Operating System : Windows (Vista/7 or above)

 Web Browser: IE 10 or above, Mozilla FF 31 and above or Google Chrome

 Xampp

ONLINE FOOD ORDERING SYSTEM Page No. 13


2.4 JUSTIFICATION OF SELECTION OF TECHNOLOGY

2.4.1 XAMPP

XAMPP is a free and open-source cross-platform web server solution stack package
developed by Apache Friends, consisting mainly of the Apache HTTP Server, MariaDB
database, and interpreters for scripts written in the PHP and Perl programming languages.

2.4.2 LANGUAGE

 HTML: Hypertext Markup Language is the standard markup language for documents
designed to be displayed in a web browser. It can be assisted technologies such as
Cascading Style Sheets and scripting languages such as JavaScript.
 CSS: Cascading Style Sheets (CSS) is a style sheet language used for describing the
presentation of a document written in a markup language like HTML. CSS is a
cornerstone technology of the World Wide Web, alongside HTML and JavaScript.
 Bootstrap: Bootstrap is a free and open-source CSS framework directed at responsive,
mobile-first front-end web development. It contains CSS and JavaScript-based design
templates for typography, forms, buttons, modals navigation, and other interface
components.
 JavaScript: JavaScript is a programming language that conforms to the ECMA Script
specification. JavaScript is high-level, often just-in-time compiled, and multi-
paradigm. Curly bracket syntax, dynamic typing, prototype-based object-orientation,
and first-class functions.
 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.

ONLINE FOOD ORDERING SYSTEM Page No. 14


2.4.3 MySQL

MySQL is an open-source relational database management system. Its name is a combination


of "My", the name of co-founder Michael Widenius's daughter, and "SQL", the abbreviation
for Structured Query Language. This application is widely used for purposes, including data
warehousing, e-commerce and logging applications. The data in MySQL databases are stored
in the form of tables. It helps the admins to collect the data in an easy way. One of the
reasons MySQL is the world's most popular open source database is that it provides
comprehensive support for every application development need. ... MySQL also provides
connectors and drivers (ODBC, JDBC, etc.) that allow all forms of applications to make use
of MySQL as a preferred data management server.

2.5 DATA FLOW DIAGRAM (DFD)

DFD is an important tool used by system analysis. A data flow diagram model, a system
using external entities from which data flows to a process which transforms the data and
create output data transforms which go to other processes or external entities such as files.
The main merit of DFD is that it can provide an overview of what data a system would
process.

SYMBOLS

 A Circle represents a process that transforms incoming data flow into outgoing data
flows.
 A Square defines a source or destination of system data.
 An Arrow identifies data flow direction. It is the pipeline through which the
information flows.
 An Open Rectangle is a data store, data at rest or a temporary repository of data.

ONLINE FOOD ORDERING SYSTEM Page No. 15


Data flow diagram symbol

Data Flow - Data flow are pipelines through the packets of information flow.

Process - A Process or task performed by the system.

Entity - Entity are object of the system. A source or destination data of a system.

Data Store - A place where data to be stored.

CONTEXT LEVEL DFD:

The context level data flow diagram (dfd) is describe the whole system. The (0) level dfd
describe the all user module who operate the system. Below data flow diagram of online
library management site shows the two user can operate the system Admin and Member user.

ONLINE FOOD ORDERING SYSTEM Page No. 16


ONLINE FOOD ORDERING SYSTEM Page No. 17
ONLINE FOOD ORDERING SYSTEM Page No. 18
ONLINE FOOD ORDERING SYSTEM Page No. 19
ONLINE FOOD ORDERING SYSTEM Page No. 20
ONLINE FOOD ORDERING SYSTEM Page No. 21
ONLINE FOOD ORDERING SYSTEM Page No. 22
CHAPTER 3

SYSTEM DESIGN

3.1 ER Diagram

ONLINE FOOD ORDERING SYSTEM Page No. 23


3.2 DATA DICTIONARY

A data dictionary, or metadata repository, as defined in the IBM Dictionary of Computing, is


a "centralized repository of information about data such as meaning, relationships to other
data, origin, usage, and format". Oracle defines it as a collection of tables with metadata .

tbl_admin table Structure: This table store the login details of admin

tbl_category table Structure : This table store the login details of category food.

tbl_food table Structure : This table stores the details of food.

ONLINE FOOD ORDERING SYSTEM Page No. 24


tbl_order table Structure : This table stores the details of order.

ONLINE FOOD ORDERING SYSTEM Page No. 25


tbl_user table Structure : This table store the login details of user.

ONLINE FOOD ORDERING SYSTEM Page No. 26


3.3 DATABASE NORMALIZATION

Normalization is a database design technique that reduces data redundancy and eliminates
undesirable characteristics like Insertion, Update and Deletion Anomalies. Normalization
rules divides larger tables into smaller tables and links them using relationships. The purpose
of Normalisation in SQL is to eliminate redundant (repetitive) data and ensure data is stored
logically.

ONLINE FOOD ORDERING SYSTEM Page No. 27


CHAPTER 4

PROGRAM CODE

Home page

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="Description" content="Enter your description here" />
<title>Restro 1839</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-
awesome/5.15.2/css/all.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Quicksand">

<style>

ul,
ol {
margin: 0;
padding: 0;
}

ONLINE FOOD ORDERING SYSTEM Page No. 28


/===== Variable Define =====/
:root {
--primary-color: #FFC222;
--secondry-color: #00a149;
--white-color: #fff;
--text-color: #b0b0b0;
--black-color: #1E1D23;
--primary-font: 'Roboto', sans-serif;
--secondry-font: 'Quicksand', sans-serif;
}

html {
scroll-behavior: smooth;
}

body {
font-family: var(--primary-font);
font-size: 100%;
font-weight: 400;
}

.testimonial-section .carousel-indicators button{


width:15px;
height:15px;
outline:none;
border-radius: 50%;
border: none;
margin-right:1rem;
opacity:0.2;
}

ONLINE FOOD ORDERING SYSTEM Page No. 29


.testimonial-section .carousel-indicators button.active{
opacity:1;
}

.forms {
padding: 20px
}

.inputs input {
margin-bottom: 13px;
border: none;
border-bottom: 2px solid #eee
}

.inputs input:focus {
margin-bottom: 13px;
border: none;
border-bottom: 2px solid #7B1FA2;
box-shadow: none
}

.inputs textarea {
margin-bottom: 13px;
border: none;
border-bottom: 2px solid #eee;
width: 100%;
resize: none
}

.inputs textarea:focus {

ONLINE FOOD ORDERING SYSTEM Page No. 30


margin-bottom: 13px;
border: none;
border-bottom: 2px solid #7B1FA2;
box-shadow: none;
resize: none
}

.form-control {
padding: .375rem .25rem;
}
.color{
color:orange;
}
.col-md-9{
color:whitesmoke;
}

.get{
color:darkorange;
}
.mes{
color:black;

/footer/

.footer-dark {
padding:50px 0;

ONLINE FOOD ORDERING SYSTEM Page No. 31


color:#f0f9ff;
background-color:black;
}
<!-- header design -->
<header>
<nav class="navbar navbar-expand-lg navigation-wrap">
<div class="container">
<a class="navbar-brand" href="#">
<img src="images/restro.png" height="50px" width="60px" class="img-fluid">
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-
target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle
navigation">
<!-- <span class="navbar-toggler-icon"></span> -->
<i class="fas fa-stream navbar-toggler-icon"></i>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="home.php">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="about.php">About Us</a>
</li>
<li class="nav-item">
<a class="nav-link" href="foods.php">Our Menu</a>
</li>

<li class="nav-item">
<a class="nav-link" href="contact.php">Contact Us</a>
</li>

ONLINE FOOD ORDERING SYSTEM Page No. 32


<li class="nav-item">
<a class="nav-link" href="login.php" class="main-btn">Login</a>
</li>
</ul>
</div>
</div>
</nav>
</header>

<!-- section-1 top-banner -->


<section id="home" class="banner full-screen-mode parallax">
<div class="container-fluid px-0 top-banner">
<div class="container">
<div class="row">
<div class="col-lg-5 col-md-6">
<!--<h1>WELCOME TO <br> <span>RESTRO 1839</span></h1>-->
<div class="banner-cell">
<h1>Welcome To Res<span class="typer" id="some-id" data-delay="200"
data-delim=":" data-words="tro 1839" data-colors="red"></span><span class="cursor" data-
cursorDisplay="_" data-owner="some-id"></span></h1>
</div>

<!-- <h2>Medium 2-topping* pizza</h2>


<p>*Additional charge for premium toppings. Minimum of 2 required.</p>-->
<div class="mt-4">
<button class="main-btn">Order now <i class="fas fa-shopping-basket ps-
3"></i></button>
</div>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 33


</div>
</div>
</div>
</section>

<section id="about">
<div class="row d-flex justify-content-center align-items-center">
<div class="col-md-12">
<div class="About-us text-center">

<h2 class="write">About Us</h2>


<p class="mb-5 text-white">We celebrate people, revel processes, share receipt, and
most of all, We have fun.</p>

<h2 class="choose">Choose Us</h2>


<h4 class="why text-white">Why choose Us ?</h4>
<br/>

<div class="container d-flex align-items-center justify-content-center position-relative


flex-wrap">
<div class="card d-flex position-relative flex-column">
<div class='imgContainer'>
<img src="images/1839_3.jfif" /> </div>
<div class="content">
<h2>1. Delicious Food</h2>

<p class="content-text">we provide delicious &healthy fusion food by drawing on


the simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile .</p>

ONLINE FOOD ORDERING SYSTEM Page No. 34


</div>
</div>
<div class="card d-flex position-relative flex-column">
<div class='imgContainer'>
<img src="images/1839_4.jfif" /> </div>
<div class="content">
<h2>2. Expert Chefs</h2>
<p class="content-text">Cooks will usually occupy entry-level positions in a kitchen
and experience training from the specialized chefs. </p>
</div>
</div>
<div class="card d-flex position-relative flex-column">
<div class='imgContainer'>
<img src="images/1839_5.jfif" /> </div>
<div class="content">
<h2>3. Friendly People</h2>
<p class="content-text">We treat employees fairly and conduct business in a way
that's friendly to the environment and compassionate towards animals.</p>
</div>
</div>
</div>

</div>
</div>
</div>
</section>

ONLINE FOOD ORDERING SYSTEM Page No. 35


<!-- section-3 about

<section id="about">

<div class="about-wrapper">
<div class="overlay">
<div class="row d-flex justify-content-center align-items-center">
<div class="col-md-9">
<div class="About-us text-center">
<br />
<h2>Our Restaurant</h2>
<h4 class="write">About Us</h4>
<p class="mb-5 text-white">We celebrate people, revel processes, share receipt, and
most of all, We have fun.</p>

<h2 class="choose">Choose Us</h2>


<h4 class="why text-white">Why choose Us ?</h4>
<br/>

<div class="row row-cols-1 bg-transaprent row-cols-md-3 g-4">


<div class="col">
<div class="card h-100 w-75 bg-black text-white">

ONLINE FOOD ORDERING SYSTEM Page No. 36


<h2 class="let">01</h2>
<div class="card-body">
<h4 class="auto-style1">Delicious Food. </h4>
<p class="card-text">we provide delicious &healthy fusion food by drawing on the
simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile .</p>
</div>
<div class="card-footer">
<small class="text-muted"></small>
</div>
</div>
</div>
<div class="col">
<div class="card h-100 w-75 bg-black text-white ">
<h2 class="alert">02</h2>
<div class="card-body">
<h4 class="auto-style1">Expert chefs.</h4>
<p class="card-text">Cooks will usually occupy entry-level positions in a kitchen and
experience training from the specialized chefs. </p>
</div>
<div class="card-footer">
<small class="text-muted"></small>
</div>
</div>
</div>
<div class="col">
<div class="card h-100 w-75 bg-black text-white">
<h2 class="active">03</h2>
<div class="card-body">
<h4 class="auto-style1">Friendly people.</h4>
<p class="card-text">We treat employees fairly and conduct business in a way that's
friendly to the environment and compassionate towards animals.</p>

ONLINE FOOD ORDERING SYSTEM Page No. 37


<div class="card-footer">
<small class="text-muted"></small>
</div>
</div>
</div>
</div>
</div>

</div>
</div>
</div>
</div>
</div>

</section>-->

<!-- menu section -->


<section id="menu" class="menu_wrapper">
<div class="container">
<div class="row ">
<div class="col-12 text-content text-center">
<h2>OUR MENU</h2>
<p>Good Food Offers Great Smile.</p>
</div>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 38


<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="all" role="tabpanel" aria-
labelledby="all-tab">
<div class="row">

<div class="col-md-3 col-sm-6 mb-3">


<div class="item-product ">
<a href="#" class="product-thumb-link">
<img src="images/large.jfif" class="img-fluid">
</a>
</div>
<div class="product-info">
<div class="d-flex justify-content-between py-3">
<h4 class="product-title">
<ins><span class="title text-white">LARGE PIZZA</span></ins>
</h4>
<h4 class="product-price">
<ins><span class="money text-white">₹300.00</span></ins>
</h4>
</div>

<div class="d-flex align-items-center justify-content-between py-1">

<div class="basket">
<a href="#"><i class="fas fa-shopping-basket"></i></a>
</div>
<a href="menu.php" class="fw-bolder text-decoration-underline text-black
">View Menu</a>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 39


</div>
</div>

<div class="col-md-3 col-sm-6 mb-3">


<div class="item-product">
<a href="#" class="product-thumb-link">
<img src="images/rice.jfif" class="img-fluid">
</a>
</div>
<div class="product-info">
<div class="d-flex justify-content-between py-3">
<h4 class="product-title">
<ins><span class="title text-white">Rice</span></ins>
</h4>
<h4 class="product-price">
<ins><span class="money text-white">₹300.00</span></ins>
</h4>
</div>

<div class="d-flex align-items-center justify-content-between py-1">

<div class="basket">
<a href="#"><i class="fas fa-shopping-basket"></i></a>
</div>
<a href="menu.php" class="fw-bolder text-decoration-underline text-black
">View Menu</a>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 40


</div>
</div>

<div class="col-md-3 col-sm-6 mb-3">


<div class="item-product">
<a href="#" class="product-thumb-link">
<img src="images/tadka.jfif" class="img-fluid">

</a>
</div>

<div class="product-info">
<div class="d-flex justify-content-between py-3">
<h4 class="product-title">
<ins><span class="title text-white">Tadka</span></ins>
</h4>
<h4 class="product-price">
<ins><span class="money text-white">₹300.00</span></ins>
</h4>
</div>

<div class="d-flex align-items-center justify-content-between py-1">

<div class="basket">
<a href="#"><i class="fas fa-shopping-basket"></i></a>

ONLINE FOOD ORDERING SYSTEM Page No. 41


</div>
<a href="menu.php" class="fw-bolder text-decoration-underline text-black
">View Menu</a>
</div>

</div>
</div>

<div class="col-md-3 col-sm-6 mb-3">


<div class="item-product">
<a href="#" class="product-thumb-link">
<img src="images/1839_3.jfif" class="img-fluid">

</a>
</div>

<div class="product-info">
<div class="d-flex justify-content-between py-3">
<h4 class="product-title">
<ins><span class="title text-white">PASTA</span></ins>
</h4>
<h4 class="product-price">
<ins><span class="money text-white">₹300.00</span></ins>
</h4>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 42


<div class="d-flex align-items-center justify-content-between py-1">

<div class="basket">
<a href="#"><i class="fas fa-shopping-basket"></i></a>
</div>
<a href="foods.php" class="fw-bolder text-decoration-underline text-black
">View Menu</a>
</div>

</div>
</div>

</div>

</div>
</div>
</div>

</section>

<!-- review Section -->

ONLINE FOOD ORDERING SYSTEM Page No. 43


<!-- Section-5 testimonial-->
<section id="testimonial">
<div class="wrapper testimonial-section">
<div class="container text-center">
<div class="text-center ">
<h2>Gallery</h2>

</div>
<div class="row">
<div class="col-sm-12 col-lg-10 offset-lg-1">
<div id="carouselExampleDark" class="carousel slide" data-bs-ride="carousel">
<div class="carousel-indicators">
<button type="button" data-bs-target="#carouselExampleDark" data-bs-slide-
to="0" class="active"
aria-current="true" aria-label="Slide 1"></button>
<button type="button" data-bs-target="#carouselExampleDark" data-bs-slide-
to="1"
aria-label="Slide 2"></button>
<button type="button" data-bs-target="#carouselExampleDark" data-bs-slide-
to="2"
aria-label="Slide 3"></button>
</div>
<div class="carousel-inner">
<div class="carousel-item active">
<div class="carousel-caption">
<img src="images/large.jfif">
<img src="images/rice.jfif">

<p class="gallery">"we provide delicious &healthy fusion food by drawing on


the simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile "

ONLINE FOOD ORDERING SYSTEM Page No. 44


</p>

</div>
</div>
<div class="carousel-item">
<div class="carousel-caption">
<img src="images/tadka.jfif">
<img src="images/1839_3.jfif">

<p class="gallery">"we provide delicious &healthy fusion food by drawing on


the simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile "

</p>

</div>
</div>
<div class="carousel-item">
<div class="carousel-caption">
<img src="images/f7.png">

<img src="images/f8.png">

<p class="gallery">"we provide delicious &healthy fusion food by drawing on


the simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile "

</p>
<h5 class="gallery">Johnthan Doe - UX Designer</h5>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 45


</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>

<!-- review Section -->

<!-- contact us-->

<section id="contact-us">
<div class="contact-wrapper">
<div class="overlay">
<div class="row d-flex justify-content-center align-items-center">
<div class="col-md-9">
<div class="contact-us text-center">
<h7>GET IN TOUCH</h7>
<h1 class="get">Contact Us</h1>

<div class="row">
<div class="col-md-6">
<div class="mt-5 text-center px-3">
<div class="d-flex flex-row align-items-center"> <span class="icons"><i
class="fa fa-map-marker"></i></span>

ONLINE FOOD ORDERING SYSTEM Page No. 46


<div class="address text-left"> <span>Address</span>
<p>Bistupur,Jamshedpur</p>
</div>
</div>
<div class="d-flex flex-row align-items-center mt-3"> <span
class="icons"><i class="fa fa-phone"></i></span>
<div class="address text-left"> <span>Phone</span>
<p>9304494874 , 8797018830</p>
</div>
</div>
<div class="d-flex flex-row align-items-center mt-3"> <span
class="icons"><i class="fa fa-envelope-o"></i></span>
<div class="address text-left"> <span>email address</span>
<p>shubhamsingh93044@gmail.com</p>
</div>
</div>
</div>
</div>

<div class="col-md-6">
<div class="text-center px-1">
<div class="forms p-4 py-5 bg-white">
<h5 class="mes">Send Message</h5>
<div class="mt-4 inputs"> <input type="text" class="form-control"
placeholder="Name"> <input type="text" class="form-control" placeholder="Email">
<textarea class="form-control" placeholder="Type your message"></textarea> </div>
<div class="button mt-4 text-left"> <button class="btn btn-
dark">Send</button> </div>
</div>
</div>
</div>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 47


</div>
</div>
</div>
</div>
</div>
</section>

<div class="footer-dark">
<footer>
<div class="container">
<div class="row">
<div class="col-sm-6 col-md-3 item">
<h3 class="service">Services</h3>
<ul>
<li class="good"><a href="#">Good Food</a></li>
<li class="good"><a href="#">Best Delivery</a></li>
<li class="good"><a href="#">Hosting</a></li>
</ul>
</div>
<div class="col-sm-6 col-md-3 item">
<h3 class="about">About</h3>
<ul>
<li><a href="#">Company</a></li>
<li><a href="#">Team</a></li>
<li><a href="#">Careers</a></li>
</ul>
</div>
<div class="col-md-6 item text">
<h3 class="restro">Restro /839</h3>

ONLINE FOOD ORDERING SYSTEM Page No. 48


<p class="res">we provide delicious &healthy fusion food by drawing on the
simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile </p>
</div>
<div class="col item social">
<a href="#"><i class="icon ion-social-facebook"></i> <img
src="images/insta.jpeg" alt="" width="50" height="50"> </a>
<a href="#"><i class="icon ion-social-instagram"></i> <img
src="images/fb.jfif" alt="" width="50" height="50"> </a>
<a href="#"> <i class="icon ion-social-twitter"></i> <img
src="images/twitter.png" alt="" width="50" height="50"> </a>
<!-- <a href="#"><i class="icon ion-social-instagram"></i> <img
src="images/you.png" alt="" width="55" height="65"> </a> -->

</div>
</div>
<p class="copyright">Restro1839© </p>
</div>
</footer>
</div>

<script
src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js"></script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js"></script>

</body>
</html>

ONLINE FOOD ORDERING SYSTEM Page No. 49


About Page

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">

<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="Description" content="Enter your description here" />
<title>Pizza</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-
awesome/5.15.2/css/all.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Quicksand">

<style>

/===== Variable Define =====/


:root {
--primary-color: #FFC222;
--secondry-color: #00a149;
--white-color: #fff;
--text-color: #b0b0b0;
--black-color: #1E1D23;
--primary-font: 'Roboto', sans-serif;
--secondry-font: 'Quicksand', sans-serif;

ONLINE FOOD ORDERING SYSTEM Page No. 50


}

html {
scroll-behavior: smooth;
}

body {
font-family: var(--primary-font);
font-size: 100%;
font-weight: 400;
}

/*
=========================================
Custom Scrollbar
=========================================
*/

::-webkit-scrollbar {
width: 0.625rem;
}

::-webkit-scrollbar-track {
background: var(--white-color);
}

::-webkit-scrollbar-thumb {
background: var(--secondry-color);
}

ONLINE FOOD ORDERING SYSTEM Page No. 51


/*
==========================================
Custom CSS Design
==========================================
*/

h1 {
font-size: 58px;
font-weight: 900;
margin-bottom: 1rem;
color: var(--white-color);
text-shadow: 1px 0 6px #000;
}

h1 span {
color: var(--primary-color);
}

h2 {
font-weight: 700;
font-size: 2rem;
text-transform: capitalize;
font-family: var(--secondry-font);
color: var(--secondry-color);
line-height: 3rem;
}

h4 {
color: var(--secondry-color);
font-family: var(--secondry-font);

ONLINE FOOD ORDERING SYSTEM Page No. 52


text-transform: capitalize;
font-size: 1.125rem;
font-weight: 800;
margin-bottom: 0.5rem;
}

h5 {
color: var(--black-color);
text-transform: capitalize;
font-family: var(--secondry-font);
font-size: 1rem;
font-weight: 700;
margin-bottom: 0.5rem;
}

p{
font-size: 1rem;
color: var(--text-color);
font-weight: 400;
line-height: 1.75rem;
letter-spacing: 1px;
}

.main-btn {
display: inline-block;
padding: 0.625rem 1.875rem;
line-height: 1.5625rem;
background-color: var(--primary-color);
border: 0.1875rem solid var(--primary-color);
color: var(--black-color);

ONLINE FOOD ORDERING SYSTEM Page No. 53


font-size: 0.9375rem;
font-weight: 600;
text-transform: capitalize;
border-radius: 0.5rem;
box-shadow: 0px 2px 10px -1px rgb(0 0 0 / 19%);
-webkit-transition: all .4s ease-out 0s;
-o-transition: all .4s ease-out 0s;
-moz-transition: all .4s ease-out 0s;
transition: all .4s ease-out 0s;
}

.main-btn:hover {
background-color: transparent;
color: var(--primary-color);
}

.wrapper {
padding-top: 4.25rem;
padding-bottom: 4.25rem;
}

.text-content {
width: 70%;
margin: auto;
}

/*
==========================================
Header Design
==========================================

ONLINE FOOD ORDERING SYSTEM Page No. 54


*/
.navigation-wrap{
position:fixed;
width:100%;
left:0;
z-index:1000;
-webkit-transition:all 0.3s ease-out;
transition:all 0.3s ease-out;
}
.navigation-wrap .nav-item{
padding:0 0.625rem;
transition:all 0.3s linear;
}
.navbar-toggler:focus{
outline:unset;
border:unset;
box-shadow: none;
}
.nav-link{
font-size: 0.9375rem;
font-weight: 600;
text-transform: capitalize;
color:var(--white-color);
letter-spacing:1px;
}
.nav-link:hover,
.nav-link.active{
color:var(--primary-color) !important;
}
.navigation-wrap .main-btn{

ONLINE FOOD ORDERING SYSTEM Page No. 55


padding:0.3125rem 1.4375rem;
box-shadow: none;
margin-left:0.625rem;
}

/* Change navbar styling on scroll */


.navigation-wrap.scroll-on{
position:fixed;
background-color:var(--white-color);
top:0;
left:0;
width:100%;
box-shadow: 0 0.125rem 1.75rem 0 rgb(0,0,0,0.09);
transition: all 0.15s ease-in-out 0s;
}
.navigation-wrap.scroll-on .nav-link{
color:var(--black-color);
}
.navigation-wrap.scroll-on .nav-link:hover,
.navigation-wrap.scroll-on .nav-link.active{
color:var(--primary-color);
}

/*
==========================================
top-banner Design
==========================================
*/
.top-banner{

ONLINE FOOD ORDERING SYSTEM Page No. 56


width:100%;
background:url('images/shubham.jfif') no-repeat center;
background-size: cover;
padding:16.875rem 0 9.375rem;
}
.top-banner p{
color:var(--white-color);
}

/about/

#about {
min-width: 100vw;
min-height: 100vh;
display: flex;
justify-content: center;
align-items: center;
background-image: url('images/shubham.jfif');
background-size:cover;
}
.mb-5{
color:aliceblue;
}

.choose{
color:darkorange;
}

ONLINE FOOD ORDERING SYSTEM Page No. 57


.write{
color:darkorange;
padding-top:70px;
}

.container .card {
max-width: 300px;
height: 215px;
margin: 30px 10px;
padding: 20px 15px;
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5);
transition: 0.3s ease-in-out;
margin-right:20px;

.container .card:hover {
height: 450px;
}

.container .card .imgContainer {


position: relative;
width: 250px;
height: 250px;
top: -50px;

ONLINE FOOD ORDERING SYSTEM Page No. 58


left: 10px;
z-index: 1;
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
}

.container .card .imgContainer img {


max-width: 100%;
border-radius: 10px;
}

.container .card .content {


position: relative;
margin-top: -140px;
padding: 10px 15px;
text-align: center;
color: #111;
visibility: hidden;
opacity: 0;
pointer-events: none;
transition: 0.3s ease-in-out;
}

.container .card .content .content-text{


color:orangered;
}

.container .card:hover .content {


visibility: visible;
opacity: 1;

ONLINE FOOD ORDERING SYSTEM Page No. 59


margin-top: -40px;
transition-delay: 0.3s;
}

@media (max-width: 330px) {


.container .card .imgContainer {
left: -2px;
}
}

/Responsive Design/

@media (max-width: 991px) {

/*custom classes */
.text-content{
width:100%;
}

/* navbar brand */
.navigation-wrap .navbar-brand img{
height:3.8125rem
}
.navigation-wrap{
text-align: center;
background-color: var(--white-color);
}
.navigation-wrap .nav-link{
line-height: 1.875rem;
color:var(--black-color);

ONLINE FOOD ORDERING SYSTEM Page No. 60


}

/* Banner Design */
.top-banner{

padding:9.375rem 0 9.375rem;
}

/* carousel design */
.testimonial-section .carousel-caption p{
padding:0;
}

/* footer link */
.footer .footer-social a i{
padding:0 0.75rem;
}
}

@media (max-width: 767px) {

/* custom css */
h1 {
font-size: 2.8rem;
}

h2 {
font-size: 1.3rem;
line-height: 28px;
}

ONLINE FOOD ORDERING SYSTEM Page No. 61


/* top banner */
.top-banner{
padding:10.375rem 0 9.375rem;
}

/* carousel design */
.testimonial-section .carousel-item{
padding:11rem 3.125rem;
}
}

@media (max-width:330px) {

/* carousel design */
.testimonial-section .carousel-item{
padding:13rem 3.125rem;
}
}

.footer-dark {
padding:50px 0;
color:#f0f9ff;
background-color:black;
}

.footer-dark h3 {
margin-top:0;
margin-bottom:12px;

ONLINE FOOD ORDERING SYSTEM Page No. 62


font-weight:bold;
font-size:16px;
}

.footer-dark ul {
padding:0;
list-style:none;
line-height:1.6;
font-size:14px;
margin-bottom:0;
}

.footer-dark ul a {
color:inherit;
text-decoration:none;
opacity:0.6;
}

.footer-dark ul a:hover {
opacity:0.8;
}

@media (max-width:767px) {
.footer-dark .item:not(.social) {
text-align:center;
padding-bottom:20px;
}
}

.footer-dark .item.text {

ONLINE FOOD ORDERING SYSTEM Page No. 63


margin-bottom:36px;
}

@media (max-width:767px) {
.footer-dark .item.text {
margin-bottom:0;
}
}

.footer-dark .item.text p {
opacity:0.6;
margin-bottom:0;
}

</style>
</head>

<body data-bs-spy="scroll" data-bs-target=".navbar" data-bs-offset="100">


<!-- header design -->
<header>
<nav class="navbar navbar-expand-lg navigation-wrap">
<div class="container">
<a class="navbar-brand" href="#">
<img src="images/restro.png" height="50px" width="50px" class="img-fluid">
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-
target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle
navigation">
<!-- <span class="navbar-toggler-icon"></span> -->
<i class="fas fa-stream navbar-toggler-icon"></i>

ONLINE FOOD ORDERING SYSTEM Page No. 64


</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto mb-2 mb-lg-0">

<li class="nav-item">
<a class="nav-link active" aria-current="page" href="index.php">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="about.php">About Us</a>
</li>
<li class="nav-item">
<a class="nav-link" href="foods.php">Our Menu</a>
</li>

<li class="nav-item">
<a class="nav-link" href="contact.php">Contact Us</a>
</li>
<li> <a href="signin.php" class="main-btn">Log In</a></li>
</ul>
</div>
</div>
</nav>
</header>

<section id="about">
<div class="row d-flex justify-content-center align-items-center">
<div class="col-md-12">
<div class="About-us text-center">

ONLINE FOOD ORDERING SYSTEM Page No. 65


<h2 class="write">About Us</h2>
<p class="mb-5 text-black">We celebrate people, revel processes, share receipt, and
most of all, We have fun.</p>

<h2 class="choose">Choose Us</h2>


<h4 class="why text-black">Why choose Us ?</h4>
<br/>

<div class="container d-flex align-items-center justify-content-center position-relative


flex-wrap">
<div class="card d-flex position-relative flex-column">
<div class='imgContainer'>
<img src="images/1839_3.jfif"/> </div>
<div class="content">
<h2>1. Delicious Food</h2>

<p class="content-text">we provide delicious &healthy fusion food by drawing on


the simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile .</p>

</div>
</div>
<div class="card d-flex position-relative flex-column">
<div class='imgContainer'>
<img src="images/1839_4.jfif" /> </div>
<div class="content">
<h2>2. Expert Chefs</h2>
<p class="content-text">Cooks will usually occupy entry-level positions in a kitchen
and experience training from the specialized chefs. </p>
</div>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 66


<div class="card d-flex position-relative flex-column">
<div class='imgContainer'>

<img src="images/1839_5.jfif" /> </div>


<div class="content">
<h2>3. Friendly People</h2>
<p class="content-text">We treat employees fairly and conduct business in a way
that's friendly to the environment and compassionate towards animals.</p>
</div>
</div>
</div>

</div>
</div>
</div>
</section>

<div class="footer-dark">
<footer>
<div class="container">
<div class="row">
<div class="col-sm-6 col-md-3 item">
<h3 class="service">Services</h3>
<ul>
<li class="good"><a href="#">Good Food</a></li>
<li class="good"><a href="#">Best Delivery</a></li>
<li class="good"><a href="#">Hosting</a></li>
</ul>
</div>
<div class="col-sm-6 col-md-3 item">
<h3 class="about">About</h3>

ONLINE FOOD ORDERING SYSTEM Page No. 67


<ul>
<li><a href="#">Company</a></li>
<li><a href="#">Team</a></li>
<li><a href="#">Careers</a></li>
</ul>
</div>
<div class="col-md-6 item text">
<h3 class="restro">Restro /839</h3>
<p class="res">we provide delicious &healthy fusion food by drawing on the
simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile </p>
</div>
<div class="col item social">
<a href="#"><i class="icon ion-social-facebook"></i> <img
src="images/insta.jpeg" alt="" width="50" height="50"> </a>
<a href="#"><i class="icon ion-social-instagram"></i> <img
src="images/fb.jfif" alt="" width="50" height="50"> </a>
<a href="#"> <i class="icon ion-social-twitter"></i> <img
src="images/twitter.png" alt="" width="50" height="50"> </a>
<!-- <a href="#"><i class="icon ion-social-instagram"></i> <img
src="images/you.png" alt="" width="55" height="65"> </a> -->

</div>
</div>
<p class="copyright">Restro1839© </p>
</div>
</footer>
</div>

<script
src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js"></script>

ONLINE FOOD ORDERING SYSTEM Page No. 68


<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js"></script>

<script>
// Scrollbar navbar
let nav = document.querySelector(".navigation-wrap");
window. () {
if (document.documentElement.scrollTop > 20) {
nav.classList.add("scroll-on");
} else {
nav.classList.remove("scroll-on");
}
}

// nav hide
let navBar = document.querySelectorAll(".nav-link");
let navCollapse = document.querySelector(".navbar-collapse.collapse");
navBar.forEach(function (a) {
a.addEventListener("click", function () {
navCollapse.classList.remove("show");
})
})

</script>

</body>
</html>

Contact Page

ONLINE FOOD ORDERING SYSTEM Page No. 69


<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="Description" content="Enter your description here" />
<title>Pizza</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-
awesome/5.15.2/css/all.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Quicksand">

<style>
*,
*:after,
*:before {
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
}

:active,
:hover,
:focus {
outline: 0 !important;
outline-offset: 0;

ONLINE FOOD ORDERING SYSTEM Page No. 70


}

a,
a:hover {
text-decoration: none;
}

a:hover {
color: var(--primary-color) !important;
}

ul,
ol {
margin: 0;
padding: 0;
}

/===== Variable Define =====/


:root {
--primary-color: #FFC222;
--secondry-color: #00a149;
--white-color: #fff;
--text-color: #b0b0b0;
--black-color: #1E1D23;
--primary-font: 'Roboto', sans-serif;
--secondry-font: 'Quicksand', sans-serif;
}

html {
scroll-behavior: smooth;

ONLINE FOOD ORDERING SYSTEM Page No. 71


}

body {
font-family: var(--primary-font);
font-size: 100%;
font-weight: 400;
}

/*
=========================================
Custom Scrollbar
=========================================
*/

::-webkit-scrollbar {
width: 0.625rem;
}

::-webkit-scrollbar-track {
background: var(--white-color);
}

::-webkit-scrollbar-thumb {
background: var(--secondry-color);
}

/*
==========================================
Custom CSS Design
==========================================

ONLINE FOOD ORDERING SYSTEM Page No. 72


*/

h1 {
font-size: 58px;
font-weight: 900;
margin-bottom: 1rem;
color: var(--white-color);
text-shadow: 1px 0 6px #000;
}

h1 span {
color: var(--primary-color);
}

h2 {
font-weight: 700;
font-size: 2rem;
text-transform: capitalize;
font-family: var(--secondry-font);
color: var(--secondry-color);
line-height: 3rem;
}

h4 {
color: var(--secondry-color);
font-family: var(--secondry-font);
text-transform: capitalize;
font-size: 1.125rem;
font-weight: 800;
margin-bottom: 0.5rem;

ONLINE FOOD ORDERING SYSTEM Page No. 73


}

h5 {
color: var(--black-color);
text-transform: capitalize;
font-family: var(--secondry-font);
font-size: 1rem;
font-weight: 700;
margin-bottom: 0.5rem;
}

p{
font-size: 1rem;
color: var(--text-color);
font-weight: 400;
line-height: 1.75rem;
letter-spacing: 1px;
}

.main-btn {
display: inline-block;
padding: 0.625rem 1.875rem;
line-height: 1.5625rem;
background-color: var(--primary-color);
border: 0.1875rem solid var(--primary-color);
color: var(--black-color);
font-size: 0.9375rem;
font-weight: 600;
text-transform: capitalize;
border-radius: 0.5rem;

ONLINE FOOD ORDERING SYSTEM Page No. 74


box-shadow: 0px 2px 10px -1px rgb(0 0 0 / 19%);
-webkit-transition: all .4s ease-out 0s;
-o-transition: all .4s ease-out 0s;
-moz-transition: all .4s ease-out 0s;
transition: all .4s ease-out 0s;
}

.main-btn:hover {
background-color: transparent;
color: var(--primary-color);
}

.wrapper {
padding-top: 4.25rem;
padding-bottom: 4.25rem;
}

.text-content {
width: 70%;
margin: auto;
}

/*
==========================================
Header Design
==========================================
*/
.navigation-wrap{
position:fixed;
width:100%;

ONLINE FOOD ORDERING SYSTEM Page No. 75


left:0;
z-index:1000;
-webkit-transition:all 0.3s ease-out;
transition:all 0.3s ease-out;
}
.navigation-wrap .nav-item{
padding:0 0.625rem;
transition:all 0.3s linear;
}
.navbar-toggler:focus{
outline:unset;
border:unset;
box-shadow: none;
}
.nav-link{
font-size: 0.9375rem;
font-weight: 600;
text-transform: capitalize;
color:var(--white-color);
letter-spacing:1px;
}
.nav-link:hover,
.nav-link.active{
color:var(--primary-color) !important;
}
.navigation-wrap .main-btn{
padding:0.3125rem 1.4375rem;
box-shadow: none;
margin-left:0.625rem;
}

ONLINE FOOD ORDERING SYSTEM Page No. 76


/* Change navbar styling on scroll */
.navigation-wrap.scroll-on{
position:fixed;
background-color:var(--white-color);
top:0;
left:0;
width:100%;
box-shadow: 0 0.125rem 1.75rem 0 rgb(0,0,0,0.09);
transition: all 0.15s ease-in-out 0s;
}
.navigation-wrap.scroll-on .nav-link{
color:var(--black-color);
}
.navigation-wrap.scroll-on .nav-link:hover,
.navigation-wrap.scroll-on .nav-link.active{
color:var(--primary-color);
}

/*
==========================================
top-banner Design
==========================================
*/
.top-banner{
width:100%;
background:url('943258.jpg') no-repeat center;
background-size: cover;
padding:16.875rem 0 9.375rem;

ONLINE FOOD ORDERING SYSTEM Page No. 77


}
.top-banner p{
color:var(--white-color);
}

.wrapper {
height: 100vh;
background: #000;
background: url("images/contact.jfif") ;
background-size: cover;
width: 100%

.overlay {
width: 100%;
height: 100vh;
background: rgba(0, 0, 0, 0.8)

.contact-us {
margin-top: 50px;
margin-bottom: 50px;
}

.contact-us h3,
p{
color: #fff;
}

ONLINE FOOD ORDERING SYSTEM Page No. 78


.address {
margin-top: 14px !important;
margin-left: 10px
}

.address span {
color:darkorange;
}

.icons {
width: 50px;
height: 50px;
border-radius: 50%;
display:flex;
display: inline-block;
display: flex;
justify-content: center;
align-items: center;
}

.icons i {
font-size: 20px
}

.forms {
padding: 20px
}

.inputs input {

ONLINE FOOD ORDERING SYSTEM Page No. 79


margin-bottom: 13px;
border: none;
border-bottom: 2px solid #eee
}

.inputs input:focus {
margin-bottom: 13px;
border: none;
border-bottom: 2px solid #7B1FA2;
box-shadow: none
}

.inputs textarea {
margin-bottom: 13px;
border: none;
border-bottom: 2px solid #eee;
width: 100%;
resize: none
}

.inputs textarea:focus {
margin-bottom: 13px;
border: none;
border-bottom: 2px solid #7B1FA2;
box-shadow: none;
resize: none
}

.form-control {
padding: .375rem .25rem

ONLINE FOOD ORDERING SYSTEM Page No. 80


}
.color{
color:orange;
}
.col-md-9{
color:whitesmoke;
}

.get{
color:darkorange;
}
.mes{
color:black;

}
/Responsive Design/

@media (max-width: 991px) {

/*custom classes */
.text-content{
width:100%;
}

/* navbar brand */
.navigation-wrap .navbar-brand img{
height:3.8125rem
}
.navigation-wrap{

ONLINE FOOD ORDERING SYSTEM Page No. 81


text-align: center;
background-color: var(--white-color);
}
.navigation-wrap .nav-link{
line-height: 1.875rem;
color:var(--black-color);
}

/* Banner Design */
.top-banner{
padding:9.375rem 0 9.375rem;
}

/* carousel design */
.testimonial-section .carousel-caption p{
padding:0;
}

/* footer link */
.footer .footer-social a i{
padding:0 0.75rem;
}
}

@media (max-width: 767px) {

/* custom css */
h1 {
font-size: 2.8rem;
}

ONLINE FOOD ORDERING SYSTEM Page No. 82


h2 {
font-size: 1.3rem;
line-height: 28px;
}

/* top banner */
.top-banner{
padding:10.375rem 0 9.375rem;
}

/* carousel design */
.testimonial-section .carousel-item{
padding:11rem 3.125rem;
}
}

@media (max-width:330px) {

/* carousel design */
.testimonial-section .carousel-item{
padding:13rem 3.125rem;
}
}

.footer-dark {
padding:50px 0;
color:#f0f9ff;
background-color:black;
}

ONLINE FOOD ORDERING SYSTEM Page No. 83


.footer-dark h3 {
margin-top:0;
margin-bottom:12px;
font-weight:bold;
font-size:16px;
}

.footer-dark ul {
padding:0;
list-style:none;
line-height:1.6;
font-size:14px;
margin-bottom:0;
}

.footer-dark ul a {
color:inherit;
text-decoration:none;
opacity:0.6;
}

.footer-dark ul a:hover {
opacity:0.8;
}

@media (max-width:767px) {
.footer-dark .item:not(.social) {
text-align:center;
padding-bottom:20px;

ONLINE FOOD ORDERING SYSTEM Page No. 84


}
}

.footer-dark .item.text {
margin-bottom:36px;
}

@media (max-width:767px) {
.footer-dark .item.text {
margin-bottom:0;
}
}

.footer-dark .item.text p {
opacity:0.6;
margin-bottom:0;
}

.footer-dark .item.social {
text-align:center;
}

@media (max-width:991px) {
.footer-dark .item.social {
text-align:center;
margin-top:20px;
}
}

.footer-dark .item.social > a {

ONLINE FOOD ORDERING SYSTEM Page No. 85


font-size:20px;
width:36px;
height:36px;
line-height:36px;
display:inline-block;
text-align:center;
border-radius:50%;
box-shadow:0 0 0 1px rgba(255,255,255,0.4);
margin:0 8px;
color:#fff;
opacity:0.75;
}

.footer-dark .item.social > a:hover {


opacity:0.9;
}

.footer-dark .copyright {
text-align:center;
padding-top:24px;
opacity:0.3;
font-size:13px;
margin-bottom:0;
}
.service{
color:darkorange;
}
.about{
color:darkorange;
}

ONLINE FOOD ORDERING SYSTEM Page No. 86


.restro{
color:darkorange;
}
.good{
color:ghostwhite;
}
.res{
color:black;
}

</style>
</head>

<body data-bs-spy="scroll" data-bs-target=".navbar" data-bs-offset="100">


<!-- header design -->
<header>
<nav class="navbar navbar-expand-lg navigation-wrap" style="background:white;" >
<div class="container">
<a class="navbar-brand" href="#">
<img src="images/restro.png" height="50px" width="50px" class="img-fluid">
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-
target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle
navigation">
<!-- <span class="navbar-toggler-icon"></span> -->
<i class="fas fa-stream navbar-toggler-icon"></i>
</button>

ONLINE FOOD ORDERING SYSTEM Page No. 87


<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="index.php">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="about.php">About Us</a>
</li>
<li class="nav-item">
<a class="nav-link" href="foods.php">Our Menu</a>
</li>

<li class="nav-item">
<a class="nav-link" href="contact.php">Contact Us</a>
</li>
<li> <a href="login.php" class="main-btn">Sign In</a></li>
</ul>
</div>
</div>
</nav>
</header>

<section id="contact-us">
<div class="wrapper">
<div class="overlay">
<div class="row d-flex justify-content-center align-items-center">
<div class="col-md-9">
<div class="contact-us text-center">
<h7>GET IN TOUCH</h7>

ONLINE FOOD ORDERING SYSTEM Page No. 88


<h1 class="get">Contact Us</h1>
<div class="row">
<div class="col-md-6">
<div class="mt-5 text-center px-3">
<div class="d-flex flex-row align-items-center"> <span class="icons"><i
class="fa fa-map-marker"></i></span>
<div class="address text-left"> <span>Address</span>
<p>Bistupur,Jamshedpur</p>
</div>
</div>
<div class="d-flex flex-row align-items-center mt-3"> <span
class="icons"><i class="fa fa-phone"></i></span>
<div class="address text-left"> <span>Phone</span>
<p>9304494874 , 8797018830</p>
</div>
</div>
<div class="d-flex flex-row align-items-center mt-3"> <span
class="icons"><i class="fa fa-envelope-o"></i></span>
<div class="address text-left"> <span>email address</span>
<p>shubhamsingh93044@gmail.com</p>
</div>
</div>
</div>
</div>

<div class="col-md-6">
<div class="text-center px-1">
<div class="forms p-4 py-5 bg-white">
<h5 class="mes">Send Message</h5>
<div class="mt-4 inputs"> <input type="text" class="form-control"
name="username" placeholder="Username">

ONLINE FOOD ORDERING SYSTEM Page No. 89


<input type="text" class="form-control" name="email"
placeholder="Email">
<input Type="text" class="form-control" name="msg"
placeholder="Type your message"> </div>
<div class="button mt-4 text-left"> <input type="submit"
name="submit" value="SEND"> </div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>

<div class="footer-dark">
<footer>
<div class="container">
<div class="row">
<div class="col-sm-6 col-md-3 item">
<h3 class="service">Services</h3>
<ul>
<li class="good"><a href="#">Good Food</a></li>
<li class="good"><a href="#">Best Delivery</a></li>
<li class="good"><a href="#">Hosting</a></li>
</ul>
</div>
<div class="col-sm-6 col-md-3 item">

ONLINE FOOD ORDERING SYSTEM Page No. 90


<h3 class="about">About</h3>
<ul>
<li><a href="#">Company</a></li>
<li><a href="#">Team</a></li>
<li><a href="#">Careers</a></li>
</ul>
</div>
<div class="col-md-6 item text">
<h3 class="restro">Restro /839</h3>
<p class="res">we provide delicious &healthy fusion food by drawing on the
simple traditions of cuisines from all over the globe.We beleive delicious good food offer
great smile </p>
</div>
<div class="col item social">
<a href="#"><i class="icon ion-social-facebook"></i> <img
src="images/insta.jpeg" alt="" width="50" height="50"> </a>
<a href="#"><i class="icon ion-social-instagram"></i> <img
src="images/fb.jfif" alt="" width="50" height="50"> </a>
<a href="#"> <i class="icon ion-social-twitter"></i> <img
src="images/twitter.png" alt="" width="50" height="50"> </a>
<!-- <a href="#"><i class="icon ion-social-instagram"></i> <img
src="images/you.png" alt="" width="55" height="65"> </a> -->

</div>
</div>
<p class="copyright">Restro1839© </p>
</div>
</footer>
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 91


<script
src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js"></script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js"></script>

<script>
// Scrollbar navbar
let nav = document.querySelector(".navigation-wrap");
window. () {
if (document.documentElement.scrollTop > 20) {
nav.classList.add("scroll-on");
} else {
nav.classList.remove("scroll-on");
}
}

// nav hide
let navBar = document.querySelectorAll(".nav-link");
let navCollapse = document.querySelector(".navbar-collapse.collapse");
navBar.forEach(function (a) {
a.addEventListener("click", function () {
navCollapse.classList.remove("show");
})
})
</script>
<?php
if(isset($_POST['submit']))
{

ONLINE FOOD ORDERING SYSTEM Page No. 92


$sql = "INSERT INTO `contact`
VALUES('','$_POST[username]','$_POST[email]','$_POST[msg]');";
if(mysqli_query($db,$sql))
{
$q = "SELECT * FROM `contact` ORDER BY `contact`.`id` DESC";
$res= mysqli_query($db,$q);

echo "<table class='table table-bordered'>";


while ($row = mysqli_fetch_assoc($res))
{
echo "<tr>";
echo "<td>"; echo $row['contact']; echo "</td>";
echo "</tr>";
}
echo "</table>";
}
else{
$q = "SELECT * FROM `contact` ORDER BY `contact`.`id` DESC";
$res= mysqli_query($db,$q);

echo "<table class='table table-bordered'>";


while ($row = mysqli_fetch_assoc($res))
{
echo "<tr>";
echo "<td>"; echo $row['contact']; echo "</td>";
echo "</tr>";
}
echo "</table>";
}
}
?>

ONLINE FOOD ORDERING SYSTEM Page No. 93


</body>
</html>

Order page

<?php include('partials-front/menu.php'); ?>

<?php
//CHeck whether food id is set or not
if(isset($_GET['food_id']))
{
//Get the Food id and details of the selected food

ONLINE FOOD ORDERING SYSTEM Page No. 94


$food_id = $_GET['food_id'];

//Get the DEtails of the SElected Food


$sql = "SELECT * FROM tbl_food WHERE id=$food_id";
//Execute the Query
$res = mysqli_query($conn, $sql);
//Count the rows
$count = mysqli_num_rows($res);
//CHeck whether the data is available or not
if($count==1)
{
//WE Have DAta
//GEt the Data from Database
$row = mysqli_fetch_assoc($res);

$title = $row['title'];
$price = $row['price'];
$image_name = $row['image_name'];
}
else
{
//Food not Availabe
//REdirect to Home Page
header('location:'.SITEURL);
}
}
else
{
//Redirect to homepage
header('location:'.SITEURL);

ONLINE FOOD ORDERING SYSTEM Page No. 95


}
?>

<!-- fOOD sEARCH Section Starts Here -->


<section class="food-search2">
<div class="container">

<h2 class="text-center text-white">Fill this form to confirm your order.</h2>

<form action="" method="POST" class="order">


<fieldset>
<legend>Selected Food</legend>

<div class="food-menu-img">
<?php

//CHeck whether the image is available or not


if($image_name=="")
{
//Image not Availabe
echo "<div class='error'>Image not Available.</div>";
}
else
{
//Image is Available
?>
<img src="<?php echo SITEURL; ?>images/food/<?php echo
$image_name; ?>" alt="Chicke Hawain Pizza" class="img-responsive img-curve">
<?php
}

ONLINE FOOD ORDERING SYSTEM Page No. 96


?>

</div>

<div class="food-menu-desc">
<h3><?php echo $title; ?></h3>
<input type="hidden" name="food" value="<?php echo $title; ?>">

<p class="food-price">Rs.<?php echo $price; ?></p>


<input type="hidden" name="price" value="<?php echo $price; ?>">

<div class="order-label">Quantity</div>
<input type="number" name="qty" class="input-responsive" value="1"
required>

</div>

</fieldset>

<fieldset>
<legend>Delivery Details</legend>
<div class="order-label">Full Name</div>
<input type="text" name="full-name" placeholder="E.g. William Moore"
class="input-responsive" required>

<div class="order-label">Phone Number</div>


<input type="tel" name="contact" placeholder="E.g. 7410000000" class="input-
responsive" required>

<div class="order-label">Email</div>
<input type="email" name="email" placeholder="E.g. william@codeastro.com"
class="input-responsive" required>

ONLINE FOOD ORDERING SYSTEM Page No. 97


<div class="order-label">Address</div>
<textarea name="address" rows="10" placeholder="E.g. Street, City, Country"
class="input-responsive" required></textarea>

<input type="submit" name="submit" value="Confirm Order" class="btn btn-


primary">
</fieldset>

</form>

<?php

//CHeck whether submit button is clicked or not


if(isset($_POST['submit']))
{
// Get all the details from the form

$food = $_POST['food'];
$price = $_POST['price'];
$qty = $_POST['qty'];

$total = $price * $qty; // total = price x qty

$order_date = date("Y-m-d h:i:sa"); //Order DAte

$status = "Ordered"; // Ordered, On Delivery, Delivered, Cancelled

$customer_name = $_POST['full-name'];
$customer_contact = $_POST['contact'];
$customer_email = $_POST['email'];

ONLINE FOOD ORDERING SYSTEM Page No. 98


$customer_address = $_POST['address'];

//Save the Order in Databaase


//Create SQL to save the data
$sql2 = "INSERT INTO tbl_order SET
food = '$food',
price = $price,
qty = $qty,
total = $total,
order_date = '$order_date',
status = '$status',
customer_name = '$customer_name',
customer_contact = '$customer_contact',
customer_email = '$customer_email',
customer_address = '$customer_address'
";

//echo $sql2; die();

//Execute the Query


$res2 = mysqli_query($conn, $sql2);

//Check whether query executed successfully or not


if($res2==true)
{
//Query Executed and Order Saved
$_SESSION['order'] = "<div class='success text-center'>Food Ordered
Successfully.</div>";
header('location:'.SITEURL);
}

ONLINE FOOD ORDERING SYSTEM Page No. 99


else
{
//Failed to Save Order
$_SESSION['order'] = "<div class='error text-center'>Failed to Order
Food.</div>";
header('location:'.SITEURL);
}

?>

</div>
</section>
<!-- fOOD sEARCH Section Ends Here -->

<?php include('partials-front/footer.php'); ?>

Foods Page

<?php include('partials-front/menu.php'); ?>

<!-- fOOD sEARCH Section Starts Here -->


<section class="food-search text-center">
<div class="container">

ONLINE FOOD ORDERING SYSTEM Page No. 100


<form action="<?php echo SITEURL; ?>food-search.php" method="POST">
<input type="search" name="search" placeholder="Search for Food.." required>
<input type="submit" name="submit" value="Search" class="btn btn-primary">
</form>

</div>
</section>
<!-- fOOD sEARCH Section Ends Here -->

<!-- fOOD MEnu Section Starts Here -->


<section class="food-menu">
<div class="container">
<h2 class="text-center">Food Menu</h2>

<?php
//Display Foods that are Active
$sql = "SELECT * FROM tbl_food WHERE active='Yes'";

//Execute the Query


$res=mysqli_query($conn, $sql);

//Count Rows
$count = mysqli_num_rows($res);

//CHeck whether the foods are availalable or not


if($count>0)
{

ONLINE FOOD ORDERING SYSTEM Page No. 101


//Foods Available
while($row=mysqli_fetch_assoc($res))
{
//Get the Values
$id = $row['id'];
$title = $row['title'];
$description = $row['description'];
$price = $row['price'];
$image_name = $row['image_name'];
?>

<div class="food-menu-box">
<div class="food-menu-img">
<?php
//CHeck whether image available or not
if($image_name=="")
{
//Image not Available
echo "<div class='error'>Image not Available.</div>";
}
else
{
//Image Available
?>
<img src="<?php echo SITEURL; ?>images/food/<?php echo
$image_name; ?>" alt="Chicke Hawain Pizza" class="img-responsive img-curve">
<?php
}
?>

</div>

ONLINE FOOD ORDERING SYSTEM Page No. 102


<div class="food-menu-desc">
<h4><?php echo $title; ?></h4>
<p class="food-price">Rs.<?php echo $price; ?></p>
<p class="food-detail">
<?php echo $description; ?>
</p>
<br>

<a href="<?php echo SITEURL; ?>order.php?food_id=<?php echo $id;


?>" class="btn btn-primary">Order Now</a>
</div>
</div>

<?php
}
}
else
{
//Food not Available
echo "<div class='error'>Food not found.</div>";
}
?>

<div class="clearfix"></div>

ONLINE FOOD ORDERING SYSTEM Page No. 103


</div>

</section>
<!-- fOOD Menu Section Ends Here -->

<?php include('partials-front/footer.php'); ?>

Food search page

<?php include('partials-front/menu.php'); ?>

<!-- fOOD sEARCH Section Starts Here -->


<section class="food-search text-center">
<div class="container">
<?php

//Get the Search Keyword


$search = $_POST['search'];

?>

<h2><a href="#" class="text-white">Foods on Your Search "<?php echo $search;


?>"</a></h2>

</div>
</section>
<!-- fOOD sEARCH Section Ends Here -->

ONLINE FOOD ORDERING SYSTEM Page No. 104


<!-- fOOD MEnu Section Starts Here -->
<section class="food-menu">
<div class="container">
<h2 class="text-center">Food Menu</h2>

<?php

//SQL Query to Get foods based on search keyword


$sql = "SELECT * FROM tbl_food WHERE title LIKE '%$search%' OR
description LIKE '%$search%'";

//Execute the Query


$res = mysqli_query($conn, $sql);

//Count Rows
$count = mysqli_num_rows($res);

//Check whether food available of not


if($count>0)
{
//Food Available
while($row=mysqli_fetch_assoc($res))
{
//Get the details
$id = $row['id'];
$title = $row['title'];
$price = $row['price'];
$description = $row['description'];

ONLINE FOOD ORDERING SYSTEM Page No. 105


$image_name = $row['image_name'];
?>

<div class="food-menu-box">
<div class="food-menu-img">
<?php
// Check whether image name is available or not
if($image_name=="")
{
//Image not Available
echo "<div class='error'>Image not Available.</div>";
}
else
{
//Image Available
?>
<img src="<?php echo SITEURL; ?>images/food/<?php echo
$image_name; ?>" alt="Chicke Hawain Pizza" class="img-responsive img-curve">
<?php

}
?>

</div>

<div class="food-menu-desc">
<h4><?php echo $title; ?></h4>
<p class="food-price">$<?php echo $price; ?></p>
<p class="food-detail">
<?php echo $description; ?>
</p>

ONLINE FOOD ORDERING SYSTEM Page No. 106


<br>

<a href="<?php echo SITEURL; ?>order.php?food_id=<?php echo $id;


?>" class="btn btn-primary">Order Now</a>
</div>
</div>

<?php
}
}
else
{
//Food Not Available
echo "<div class='error'>Food not found.</div>";
}

?>

<div class="clearfix"></div>

</div>

</section>
<!-- fOOD Menu Section Ends Here -->

<?php include('partials-front/footer.php'); ?>

ONLINE FOOD ORDERING SYSTEM Page No. 107


Food Categories Page

<?php include('partials-front/menu.php'); ?>

<!-- CAtegories Section Starts Here -->


<section class="categories">
<div class="container">
<h2 class="text-center">Explore Foods</h2>

<?php

//Display all the cateories that are active


//Sql Query
$sql = "SELECT * FROM tbl_category WHERE active='Yes'";

//Execute the Query

ONLINE FOOD ORDERING SYSTEM Page No. 108


$res = mysqli_query($conn, $sql);

//Count Rows
$count = mysqli_num_rows($res);

//CHeck whether categories available or not


if($count>0)
{
//CAtegories Available
while($row=mysqli_fetch_assoc($res))
{
//Get the Values
$id = $row['id'];
$title = $row['title'];
$image_name = $row['image_name'];
?>

<a href="<?php echo SITEURL; ?>category-foods.php?category_id=<?php


echo $id; ?>">
<div class="box-3 float-container">
<?php
if($image_name=="")
{
//Image not Available
echo "<div class='error'>Image not found.</div>";
}
else
{
//Image Available
?>

ONLINE FOOD ORDERING SYSTEM Page No. 109


<img src="<?php echo SITEURL; ?>images/category/<?php echo
$image_name; ?>" alt="Pizza" class="img-responsive img-curve">
<?php
}
?>

<h3 class="float-text text-white"><?php echo $title; ?></h3>


</div>
</a>

<?php
}
}
else
{
//CAtegories Not Available
echo "<div class='error'>Category not found.</div>";
}

?>

<div class="clearfix"></div>
</div>
</section>
<!-- Categories Section Ends Here -->

<?php include('partials-front/footer.php'); ?>

ONLINE FOOD ORDERING SYSTEM Page No. 110


Categories food

<?php include('partials-front/menu.php'); ?>

<?php
//CHeck whether id is passed or not
if(isset($_GET['category_id']))
{
//Category id is set and get the id
$category_id = $_GET['category_id'];
// Get the CAtegory Title Based on Category ID
$sql = "SELECT title FROM tbl_category WHERE id=$category_id";

//Execute the Query


$res = mysqli_query($conn, $sql);

ONLINE FOOD ORDERING SYSTEM Page No. 111


//Get the value from Database
$row = mysqli_fetch_assoc($res);
//Get the TItle
$category_title = $row['title'];
}
else
{
//CAtegory not passed
//Redirect to Home page
header('location:'.SITEURL);
}
?>

<!-- fOOD sEARCH Section Starts Here -->


<section class="food-search text-center">
<div class="container">

<h2><a href="#" class="text-white">Foods on "<?php echo $category_title;


?>"</a></h2>

</div>
</section>
<!-- fOOD sEARCH Section Ends Here -->

<!-- fOOD MEnu Section Starts Here -->


<section class="food-menu">
<div class="container">

ONLINE FOOD ORDERING SYSTEM Page No. 112


<h2 class="text-center">Food Menu</h2>

<?php

//Create SQL Query to Get foods based on Selected CAtegory


$sql2 = "SELECT * FROM tbl_food WHERE category_id=$category_id";

//Execute the Query


$res2 = mysqli_query($conn, $sql2);

//Count the Rows


$count2 = mysqli_num_rows($res2);

//CHeck whether food is available or not


if($count2>0)
{
//Food is Available
while($row2=mysqli_fetch_assoc($res2))
{
$id = $row2['id'];
$title = $row2['title'];
$price = $row2['price'];
$description = $row2['description'];
$image_name = $row2['image_name'];
?>

<div class="food-menu-box">
<div class="food-menu-img">
<?php
if($image_name=="")

ONLINE FOOD ORDERING SYSTEM Page No. 113


{
//Image not Available
echo "<div class='error'>Image not Available.</div>";
}
else
{
//Image Available
?>
<img src="<?php echo SITEURL; ?>images/food/<?php echo
$image_name; ?>" alt="Chicke Hawain Pizza" class="img-responsive img-curve">
<?php
}
?>

</div>

<div class="food-menu-desc">
<h4><?php echo $title; ?></h4>
<p class="food-price">$<?php echo $price; ?></p>
<p class="food-detail">
<?php echo $description; ?>
</p>
<br>

<a href="<?php echo SITEURL; ?>order.php?food_id=<?php echo $id;


?>" class="btn btn-primary">Order Now</a>
</div>
</div>

<?php
}

ONLINE FOOD ORDERING SYSTEM Page No. 114


}
else
{
//Food not available
echo "<div class='error'>Food not Available.</div>";
}

?>

<div class="clearfix"></div>

</div>

</section>
<!-- fOOD Menu Section Ends Here -->

<?php include('partials-front/footer.php'); ?>

ONLINE FOOD ORDERING SYSTEM Page No. 115


Menu Page

<?php include('config/constants.php'); ?>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<!-- Important to make website responsive -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Online Food Order System</title>

<!-- Link our CSS file -->


<link rel="stylesheet" href="css/style.css">
</head>

<body>
<!-- Navbar Section Starts Here -->
<section class="navbar">
<div class="container">
<div class="logo">
<a href="#" title="Logo">
<img src="images/restro.png" alt="Restaurant Logo" class="img-responsive">
</a>
</div>

<div class="menu text-right">

ONLINE FOOD ORDERING SYSTEM Page No. 116


<ul>
<li>
<a href="<?php echo SITEURL; ?>">Home</a>
</li>
<li>
<a href="<?php echo SITEURL; ?>categories.php">Categories</a>
</li>
<li>
<a href="<?php echo SITEURL; ?>foods.php">Foods</a>
</li>
<li>
<a href="<?php echo SITEURL; ?>contact.php">Contact</a>
</li>
<li>
<a href="<?php echo SITEURL; ?>about.php">About us</a>
</li>
</ul>
</div>

<div class="clearfix"></div>
</div>
</section>
<!-- Navbar Section Ends Here -->

Add Admin

<?php include('partials/menu.php'); ?>

ONLINE FOOD ORDERING SYSTEM Page No. 117


<div class="main-content">
<div class="wrapper">
<h1>Add Admin</h1>

<br><br>

<?php
if(isset($_SESSION['add'])) //Checking whether the SEssion is Set of Not
{
echo $_SESSION['add']; //Display the SEssion Message if SEt
unset($_SESSION['add']); //Remove Session Message
}
?>

<form action="" method="POST">

<table class="tbl-30">
<tr>
<td>Full Name: </td>
<td>
<input type="text" name="full_name" placeholder="Enter Your Name">
</td>
</tr>

<tr>
<td>Username: </td>
<td>
<input type="text" name="username" placeholder="Your Username">
</td>

ONLINE FOOD ORDERING SYSTEM Page No. 118


</tr>

<tr>
<td>Password: </td>
<td>
<input type="password" name="password" placeholder="Your Password">
</td>
</tr>

<tr>
<td colspan="2">
<input type="submit" name="submit" value="Add Admin" class="btn-
secondary">
</td>
</tr>

</table>

</form>

</div>
</div>

<?php include('partials/footer.php'); ?>

<?php
//Process the Value from Form and Save it in Database

//Check whether the submit button is clicked or not

ONLINE FOOD ORDERING SYSTEM Page No. 119


if(isset($_POST['submit']))
{
// Button Clicked
//echo "Button Clicked";

//1. Get the Data from form


$full_name = $_POST['full_name'];
$username = $_POST['username'];
$password = md5($_POST['password']); //Password Encryption with MD5

//2. SQL Query to Save the data into database


$sql = "INSERT INTO tbl_admin SET
full_name='$full_name',
username='$username',
password='$password'
";

//3. Executing Query and Saving Data into Datbase


$res = mysqli_query($conn, $sql) or die(mysqli_error());

//4. Check whether the (Query is Executed) data is inserted or not and display
appropriate message
if($res==TRUE)
{
//Data Inserted
//echo "Data Inserted";
//Create a Session Variable to Display Message
$_SESSION['add'] = "<div class='success'>Admin Added Successfully.</div>";
//Redirect Page to Manage Admin
header("location:".SITEURL.'admin/manage-admin.php');

ONLINE FOOD ORDERING SYSTEM Page No. 120


}
else
{
//FAiled to Insert DAta
//echo "Faile to Insert Data";
//Create a Session Variable to Display Message
$_SESSION['add'] = "<div class='error'>Failed to Add Admin.</div>";
//Redirect Page to Add Admin
header("location:".SITEURL.'admin/add-admin.php');
}

?>

Add Categories

<?php include('partials/menu.php'); ?>

<div class="main-content">
<div class="wrapper">
<h1>Add Category</h1>

<br><br>

<?php

if(isset($_SESSION['add']))

ONLINE FOOD ORDERING SYSTEM Page No. 121


{
echo $_SESSION['add'];
unset($_SESSION['add']);
}

if(isset($_SESSION['upload']))
{
echo $_SESSION['upload'];
unset($_SESSION['upload']);
}

?>

<br><br>

<!-- Add CAtegory Form Starts -->


<form action="" method="POST" enctype="multipart/form-data">

<table class="tbl-30">
<tr>
<td>Title: </td>
<td>
<input type="text" name="title" placeholder="Category Title">
</td>
</tr>

<tr>
<td>Select Image: </td>
<td>
<input type="file" name="image">

ONLINE FOOD ORDERING SYSTEM Page No. 122


</td>
</tr>

<tr>
<td>Featured: </td>
<td>
<input type="radio" name="featured" value="Yes"> Yes
<input type="radio" name="featured" value="No"> No
</td>
</tr>

<tr>
<td>Active: </td>
<td>
<input type="radio" name="active" value="Yes"> Yes
<input type="radio" name="active" value="No"> No
</td>
</tr>

<tr>
<td colspan="2">
<input type="submit" name="submit" value="Add Category" class="btn-
secondary">
</td>
</tr>

</table>

</form>
<!-- Add CAtegory Form Ends -->

ONLINE FOOD ORDERING SYSTEM Page No. 123


<?php

//CHeck whether the Submit Button is Clicked or Not


if(isset($_POST['submit']))
{
//echo "Clicked";

//1. Get the Value from CAtegory Form


$title = $_POST['title'];

//For Radio input, we need to check whether the button is selected or not
if(isset($_POST['featured']))
{
//Get the VAlue from form
$featured = $_POST['featured'];
}
else
{
//SEt the Default VAlue
$featured = "No";
}

if(isset($_POST['active']))
{
$active = $_POST['active'];
}
else
{
$active = "No";
}

ONLINE FOOD ORDERING SYSTEM Page No. 124


//Check whether the image is selected or not and set the value for image name
accoridingly
//print_r($_FILES['image']);

//die();//Break the Code Here

if(isset($_FILES['image']['name']))
{
//Upload the Image
//To upload image we need image name, source path and destination path
$image_name = $_FILES['image']['name'];

// Upload the Image only if image is selected


if($image_name != "")
{

//Auto Rename our Image


//Get the Extension of our image (jpg, png, gif, etc) e.g. "specialfood1.jpg"
$ext = end(explode('.', $image_name));

//Rename the Image


$image_name = "Food_Category_".rand(000, 999).'.'.$ext; // e.g.
Food_Category_834.jpg

$source_path = $_FILES['image']['tmp_name'];

$destination_path = "../images/category/".$image_name;

//Finally Upload the Image

ONLINE FOOD ORDERING SYSTEM Page No. 125


$upload = move_uploaded_file($source_path, $destination_path);

//Check whether the image is uploaded or not


//And if the image is not uploaded then we will stop the process and redirect
with error message
if($upload==false)
{
//SEt message
$_SESSION['upload'] = "<div class='error'>Failed to Upload Image.
</div>";
//Redirect to Add CAtegory Page
header('location:'.SITEURL.'admin/add-category.php');
//STop the Process
die();
}

}
}
else
{
//Don't Upload Image and set the image_name value as blank
$image_name="";
}

//2. Create SQL Query to Insert CAtegory into Database


$sql = "INSERT INTO tbl_category SET
title='$title',
image_name='$image_name',
featured='$featured',
active='$active'
";

ONLINE FOOD ORDERING SYSTEM Page No. 126


//3. Execute the Query and Save in Database
$res = mysqli_query($conn, $sql);

//4. Check whether the query executed or not and data added or not
if($res==true)
{
//Query Executed and Category Added
$_SESSION['add'] = "<div class='success'>Category Added

Successfully.</div>";
//Redirect to Manage Category Page
header('location:'.SITEURL.'admin/manage-category.php');
}
else
{
//Failed to Add CAtegory
$_SESSION['add'] = "<div class='error'>Failed to Add Category.</div>";
//Redirect to Manage Category Page
header('location:'.SITEURL.'admin/add-category.php');
}
}

?>

</div>
</div>

<?php include('partials/footer.php'); ?>

ONLINE FOOD ORDERING SYSTEM Page No. 127


Add Food Admin

<?php include('partials/menu.php'); ?>

<div class="main-content">
<div class="wrapper">
<h1>Add Food</h1>

<br><br>

<?php
if(isset($_SESSION['upload']))
{
echo $_SESSION['upload'];
unset($_SESSION['upload']);
}

ONLINE FOOD ORDERING SYSTEM Page No. 128


?>

<form action="" method="POST" enctype="multipart/form-data">

<table class="tbl-30">

<tr>
<td>Title: </td>
<td>
<input type="text" name="title" placeholder="Title of the Food">
</td>
</tr>

<tr>
<td>Description: </td>
<td>
<textarea name="description" cols="30" rows="5" placeholder="Description
of the Food."></textarea>
</td>
</tr>

<tr>
<td>Price: </td>
<td>
<input type="number" name="price">
</td>
</tr>

<tr>
<td>Select Image: </td>
<td>

ONLINE FOOD ORDERING SYSTEM Page No. 129


<input type="file" name="image">
</td>
</tr>

<tr>
<td>Category: </td>
<td>
<select name="category">

<?php
//Create PHP Code to display categories from Database
//1. CReate SQL to get all active categories from database
$sql = "SELECT * FROM tbl_category WHERE active='Yes'";

//Executing qUery
$res = mysqli_query($conn, $sql);

//Count Rows to check whether we have categories or not


$count = mysqli_num_rows($res);

//IF count is greater than zero, we have categories else we donot have
categories
if($count>0)
{
//WE have categories
while($row=mysqli_fetch_assoc($res))
{
//get the details of categories
$id = $row['id'];
$title = $row['title'];

ONLINE FOOD ORDERING SYSTEM Page No. 130


?>

<option value="<?php echo $id; ?>"><?php echo $title;


?></option>

<?php
}
}
else
{
//WE do not have category
?>
<option value="0">No Category Found</option>
<?php
}

//2. Display on Drpopdown


?>

</select>
</td>
</tr>

<tr>
<td>Featured: </td>
<td>
<input type="radio" name="featured" value="Yes"> Yes
<input type="radio" name="featured" value="No"> No
</td>
</tr>

ONLINE FOOD ORDERING SYSTEM Page No. 131


<tr>
<td>Active: </td>
<td>
<input type="radio" name="active" value="Yes"> Yes
<input type="radio" name="active" value="No"> No
</td>
</tr>

<tr>
<td colspan="2">
<input type="submit" name="submit" value="Add Food" class="btn-
secondary">
</td>
</tr>

</table>

</form>

<?php

//CHeck whether the button is clicked or not


if(isset($_POST['submit']))
{
//Add the Food in Database
//echo "Clicked";

//1. Get the DAta from Form


$title = $_POST['title'];

ONLINE FOOD ORDERING SYSTEM Page No. 132


$description = $_POST['description'];
$price = $_POST['price'];
$category = $_POST['category'];

//Check whether radion button for featured and active are checked or not
if(isset($_POST['featured']))
{
$featured = $_POST['featured'];
}
else
{
$featured = "No"; //SEtting the Default Value
}

if(isset($_POST['active']))
{
$active = $_POST['active'];
}
else
{
$active = "No"; //Setting Default Value
}

//2. Upload the Image if selected


//Check whether the select image is clicked or not and upload the image only if the
image is selected
if(isset($_FILES['image']['name']))
{
//Get the details of the selected image
$image_name = $_FILES['image']['name'];

ONLINE FOOD ORDERING SYSTEM Page No. 133


//Check Whether the Image is Selected or not and upload image only if selected
if($image_name!="")
{
// Image is SElected
//A. REnamge the Image
//Get the extension of selected image (jpg, png, gif, etc.)
$ext = end(explode('.', $image_name));

// Create New Name for Image


$image_name = "Food-Name-".rand(0000,9999).".".$ext; //New Image Name
May Be "Food-Name-657.jpg"

//B. Upload the Image


//Get the Src Path and DEstinaton path

// Source path is the current location of the image


$src = $_FILES['image']['tmp_name'];

//Destination Path for the image to be uploaded


$dst = "../images/food/".$image_name;

//Finally Uppload the food image


$upload = move_uploaded_file($src, $dst);

//check whether image uploaded of not


if($upload==false)
{
//Failed to Upload the image
//REdirect to Add Food Page with Error Message
$_SESSION['upload'] = "<div class='error'>Failed to Upload
Image.</div>";

ONLINE FOOD ORDERING SYSTEM Page No. 134


header('location:'.SITEURL.'admin/add-food.php');
//STop the process
die();
}

}
else
{
$image_name = ""; //SEtting DEfault Value as blank
}

//3. Insert Into Database

//Create a SQL Query to Save or Add food


// For Numerical we do not need to pass value inside quotes '' But for string value it
is compulsory to add quotes ''
$sql2 = "INSERT INTO tbl_food SET
title = '$title',
description = '$description',
price = $price,
image_name = '$image_name',
category_id = $category,
featured = '$featured',
active = '$active'
";

//Execute the Query


$res2 = mysqli_query($conn, $sql2);

ONLINE FOOD ORDERING SYSTEM Page No. 135


//CHeck whether data inserted or not
//4. Redirect with MEssage to Manage Food page
if($res2 == true)
{
//Data inserted Successfullly
$_SESSION['add'] = "<div class='success'>Food Added Successfully.</div>";
header('location:'.SITEURL.'admin/manage-food.php');
}
else
{
//FAiled to Insert Data
$_SESSION['add'] = "<div class='error'>Failed to Add Food.</div>";
header('location:'.SITEURL.'admin/manage-food.php');
}

?>

</div>
</div>

<?php include('partials/footer.php'); ?>

Delete Admin

<?php

ONLINE FOOD ORDERING SYSTEM Page No. 136


//Include constants.php file here
include('../config/constants.php');

// 1. get the ID of Admin to be deleted


$id = $_GET['id'];

//2. Create SQL Query to Delete Admin


$sql = "DELETE FROM tbl_admin WHERE id=$id";

//Execute the Query


$res = mysqli_query($conn, $sql);

// Check whether the query executed successfully or not


if($res==true)
{
//Query Executed Successully and Admin Deleted
//echo "Admin Deleted";
//Create SEssion Variable to Display Message
$_SESSION['delete'] = "<div class='success'>Admin Deleted Successfully.</div>";
//Redirect to Manage Admin Page
header('location:'.SITEURL.'admin/manage-admin.php');
}
else
{
//Failed to Delete Admin
//echo "Failed to Delete Admin";

$_SESSION['delete'] = "<div class='error'>Failed to Delete Admin. Try Again

ONLINE FOOD ORDERING SYSTEM Page No. 137


Later.</div>";
header('location:'.SITEURL.'admin/manage-admin.php');
}

//3. Redirect to Manage Admin page with message (success/error)

?>

Delete Category

<?php
//Include Constants File
include('../config/constants.php');

//echo "Delete Page";


//Check whether the id and image_name value is set or not
if(isset($_GET['id']) AND isset($_GET['image_name']))
{
//Get the Value and Delete
//echo "Get Value and Delete";
$id = $_GET['id'];
$image_name = $_GET['image_name'];

//Remove the physical image file is available


if($image_name != "")
{
//Image is Available. So remove it
$path = "../images/category/".$image_name;

ONLINE FOOD ORDERING SYSTEM Page No. 138


//REmove the Image
$remove = unlink($path);

//IF failed to remove image then add an error message and stop the process
if($remove==false)
{
//Set the SEssion Message
$_SESSION['remove'] = "<div class='error'>Failed to Remove Category
Image.</div>";
//REdirect to Manage Category page
header('location:'.SITEURL.'admin/manage-category.php');
//Stop the Process
die();
}
}

//Delete Data from Database


//SQL Query to Delete Data from Database
$sql = "DELETE FROM tbl_category WHERE id=$id";

//Execute the Query


$res = mysqli_query($conn, $sql);

//Check whether the data is delete from database or not


if($res==true)
{
//SEt Success MEssage and REdirect
$_SESSION['delete'] = "<div class='success'>Category Deleted Successfully.</div>";
//Redirect to Manage Category
header('location:'.SITEURL.'admin/manage-category.php');
}

ONLINE FOOD ORDERING SYSTEM Page No. 139


else
{
//SEt Fail MEssage and Redirecs
$_SESSION['delete'] = "<div class='error'>Failed to Delete Category.</div>";
//Redirect to Manage Category
header('location:'.SITEURL.'admin/manage-category.php');
}

}
else
{
//redirect to Manage Category Page
header('location:'.SITEURL.'admin/manage-category.php');
}
?>

Delete Food

<?php
//Include COnstants Page
include('../config/constants.php');

//echo "Delete Food Page";

ONLINE FOOD ORDERING SYSTEM Page No. 140


if(isset($_GET['id']) && isset($_GET['image_name'])) //Either use '&&' or 'AND'
{
//Process to Delete
//echo "Process to Delete";

//1. Get ID and Image NAme


$id = $_GET['id'];
$image_name = $_GET['image_name'];

//2. Remove the Image if Available


//CHeck whether the image is available or not and Delete only if available
if($image_name != "")
{
// IT has image and need to remove from folder
//Get the Image Path
$path = "../images/food/".$image_name;

//REmove Image File from Folder


$remove = unlink($path);

//Check whether the image is removed or not


if($remove==false)
{
//Failed to Remove image
$_SESSION['upload'] = "<div class='error'>Failed to Remove Image File.</div>";
//REdirect to Manage Food
header('location:'.SITEURL.'admin/manage-food.php');
//Stop the Process of Deleting Food
die();

ONLINE FOOD ORDERING SYSTEM Page No. 141


}

//3. Delete Food from Database


$sql = "DELETE FROM tbl_food WHERE id=$id";
//Execute the Query
$res = mysqli_query($conn, $sql);

//CHeck whether the query executed or not and set the session message respectively
//4. Redirect to Manage Food with Session Message
if($res==true)
{
//Food Deleted
$_SESSION['delete'] = "<div class='success'>Food Deleted Successfully.</div>";
header('location:'.SITEURL.'admin/manage-food.php');
}
else
{
//Failed to Delete Food
$_SESSION['delete'] = "<div class='error'>Failed to Delete Food.</div>";
header('location:'.SITEURL.'admin/manage-food.php');
}

}
else
{
//Redirect to Manage Food Page

ONLINE FOOD ORDERING SYSTEM Page No. 142


//echo "REdirect";
$_SESSION['unauthorize'] = "<div class='error'>Unauthorized Access.</div>";
header('location:'.SITEURL.'admin/manage-food.php');
}

?>

Index Admin

<?php include('partials/menu.php'); ?>

<!-- Main Content Section Starts -->


<div class="main-content">
<div class="wrapper">
<h1>Administrator Dashboard</h1>
<br><br>
<?php
if(isset($_SESSION['login']))
{
echo $_SESSION['login'];
unset($_SESSION['login']);
}
?>
<br><br>

<div class="col-4 text-center">

ONLINE FOOD ORDERING SYSTEM Page No. 143


<?php
//Sql Query
$sql = "SELECT * FROM tbl_category";
//Execute Query
$res = mysqli_query($conn, $sql);
//Count Rows
$count = mysqli_num_rows($res);
?>

<h1><?php echo $count; ?></h1>


<br />
Food Categories
</div>

<div class="col-4 text-center">

<?php
//Sql Query
$sql2 = "SELECT * FROM tbl_food";
//Execute Query
$res2 = mysqli_query($conn, $sql2);
//Count Rows
$count2 = mysqli_num_rows($res2);
?>

<h1><?php echo $count2; ?></h1>


<br />
Foods
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 144


<div class="col-4 text-center">

<?php
//Sql Query
$sql3 = "SELECT * FROM tbl_order";
//Execute Query
$res3 = mysqli_query($conn, $sql3);
//Count Rows
$count3 = mysqli_num_rows($res3);
?>

<h1><?php echo $count3; ?></h1>


<br />
Total Orders
</div>

<div class="col-4 text-center">

<?php
//Creat SQL Query to Get Total Revenue Generated
//Aggregate Function in SQL
$sql4 = "SELECT SUM(total) AS Total FROM tbl_order WHERE
status='Delivered'";

//Execute the Query


$res4 = mysqli_query($conn, $sql4);

//Get the VAlue


$row4 = mysqli_fetch_assoc($res4);

//GEt the Total REvenue

ONLINE FOOD ORDERING SYSTEM Page No. 145


$total_revenue = $row4['Total'];

?>

<h1>$<?php echo $total_revenue; ?></h1>


<br />
Revenue Generated
</div>

<div class="col-4 text-center">

<?php
//Sql Query
$sql6 = "SELECT * FROM tbl_order WHERE status = 'Ordered'";
//Execute Query
$res6 = mysqli_query($conn, $sql6);
//Count Rows
$count6 = mysqli_num_rows($res6);
?>

<h1><?php echo $count6; ?></h1>


<br />
Pending Orders
</div>

<div class="col-4 text-center">

<?php
//Sql Query
$sql7 = "SELECT * FROM tbl_order WHERE status = 'On Delivery'";

ONLINE FOOD ORDERING SYSTEM Page No. 146


//Execute Query
$res7 = mysqli_query($conn, $sql7);
//Count Rows
$count7 = mysqli_num_rows($res7);
?>

<h1><?php echo $count7; ?></h1>


<br />
On Delivery Orders
</div>

<div class="col-4 text-center">

<?php
//Sql Query
$sql7 = "SELECT * FROM tbl_order WHERE status = 'Cancelled'";
//Execute Query
$res7 = mysqli_query($conn, $sql7);
//Count Rows
$count7 = mysqli_num_rows($res7);
?>

<h1><?php echo $count7; ?></h1>


<br />
Cancelled Orders
</div>

<div class="col-4 text-center">

ONLINE FOOD ORDERING SYSTEM Page No. 147


<?php
//Sql Query
$sql8 = "SELECT * FROM tbl_admin";
//Execute Query
$res8 = mysqli_query($conn, $sql8);
//Count Rows
$count8 = mysqli_num_rows($res8);
?>

<h1><?php echo $count8; ?></h1>


<br />
System Administrator
</div>

<div class="clearfix"></div>

</div>
</div>
<!-- Main Content Setion Ends -->

<?php include('partials/footer.php') ?>

Login Page Admin

<?php include('partials/menu.php'); ?>

ONLINE FOOD ORDERING SYSTEM Page No. 148


<!-- Main Content Section Starts -->
<div class="main-content">
<div class="wrapper">
<h1>Administrator Dashboard</h1>
<br><br>
<?php
if(isset($_SESSION['login']))
{
echo $_SESSION['login'];
unset($_SESSION['login']);
}
?>
<br><br>

<div class="col-4 text-center">

<?php
//Sql Query
$sql = "SELECT * FROM tbl_category";
//Execute Query
$res = mysqli_query($conn, $sql);
//Count Rows
$count = mysqli_num_rows($res);
?>

<h1><?php echo $count; ?></h1>


<br />
Food Categories
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 149


<div class="col-4 text-center">

<?php
//Sql Query
$sql2 = "SELECT * FROM tbl_food";
//Execute Query
$res2 = mysqli_query($conn, $sql2);
//Count Rows
$count2 = mysqli_num_rows($res2);
?>

<h1><?php echo $count2; ?></h1>


<br />
Foods
</div>

<div class="col-4 text-center">

<?php
//Sql Query
$sql3 = "SELECT * FROM tbl_order";
//Execute Query
$res3 = mysqli_query($conn, $sql3);
//Count Rows
$count3 = mysqli_num_rows($res3);
?>

<h1><?php echo $count3; ?></h1>


<br />
Total Orders

ONLINE FOOD ORDERING SYSTEM Page No. 150


</div>

<div class="col-4 text-center">

<?php
//Creat SQL Query to Get Total Revenue Generated
//Aggregate Function in SQL
$sql4 = "SELECT SUM(total) AS Total FROM tbl_order WHERE
status='Delivered'";

//Execute the Query


$res4 = mysqli_query($conn, $sql4);

//Get the VAlue


$row4 = mysqli_fetch_assoc($res4);

//GEt the Total REvenue


$total_revenue = $row4['Total'];

?>

<h1>$<?php echo $total_revenue; ?></h1>


<br />
Revenue Generated
</div>

<div class="col-4 text-center">

<?php
//Sql Query
$sql6 = "SELECT * FROM tbl_order WHERE status = 'Ordered'";

ONLINE FOOD ORDERING SYSTEM Page No. 151


//Execute Query
$res6 = mysqli_query($conn, $sql6);
//Count Rows
$count6 = mysqli_num_rows($res6);
?>

<h1><?php echo $count6; ?></h1>


<br />
Pending Orders
</div>

<div class="col-4 text-center">

<?php
//Sql Query
$sql7 = "SELECT * FROM tbl_order WHERE status = 'On Delivery'";
//Execute Query
$res7 = mysqli_query($conn, $sql7);
//Count Rows
$count7 = mysqli_num_rows($res7);
?>

<h1><?php echo $count7; ?></h1>


<br />
On Delivery Orders
</div>

<div class="col-4 text-center">

ONLINE FOOD ORDERING SYSTEM Page No. 152


<?php
//Sql Query
$sql7 = "SELECT * FROM tbl_order WHERE status = 'Cancelled'";
//Execute Query
$res7 = mysqli_query($conn, $sql7);
//Count Rows
$count7 = mysqli_num_rows($res7);
?>

<h1><?php echo $count7; ?></h1>


<br />
Cancelled Orders
</div>

<div class="col-4 text-center">

<?php
//Sql Query
$sql8 = "SELECT * FROM tbl_admin";
//Execute Query
$res8 = mysqli_query($conn, $sql8);
//Count Rows
$count8 = mysqli_num_rows($res8);
?>

<h1><?php echo $count8; ?></h1>


<br />
System Administrator
</div>

ONLINE FOOD ORDERING SYSTEM Page No. 153


<div class="clearfix"></div>

</div>
</div>
<!-- Main Content Setion Ends -->

<?php include('partials/footer.php') ?>

Logout Page Admin

<?php
//Include constants.php for SITEURL
include('../config/constants.php');

ONLINE FOOD ORDERING SYSTEM Page No. 154


//1. Destory the Session
session_destroy(); //Unsets $_SESSION['user']

//2. REdirect to Login Page


header('location:'.SITEURL.'admin/login.php');

?>

Manage Admin

<?php include('partials/menu.php'); ?>

<!-- Main Content Section Starts -->


<div class="main-content">
<div class="wrapper">
<h1>Manage Admin</h1>

<br />

<?php
if(isset($_SESSION['add']))
{
echo $_SESSION['add']; //Displaying Session Message
unset($_SESSION['add']); //REmoving Session Message
}

if(isset($_SESSION['delete']))

ONLINE FOOD ORDERING SYSTEM Page No. 155


{
echo $_SESSION['delete'];
unset($_SESSION['delete']);
}

if(isset($_SESSION['update']))
{
echo $_SESSION['update'];
unset($_SESSION['update']);
}

if(isset($_SESSION['user-not-found']))
{
echo $_SESSION['user-not-found'];
unset($_SESSION['user-not-found']);
}

if(isset($_SESSION['pwd-not-match']))
{
echo $_SESSION['pwd-not-match'];
unset($_SESSION['pwd-not-match']);
}

if(isset($_SESSION['change-pwd']))
{
echo $_SESSION['change-pwd'];
unset($_SESSION['change-pwd']);
}

?>

ONLINE FOOD ORDERING SYSTEM Page No. 156


<br><br><br>

<!-- Button to Add Admin -->


<a href="add-admin.php" class="btn-primary">Add Admin</a>

<br /><br /><br />

<table class="tbl-full">
<tr>
<th>S.N.</th>
<th>Full Name</th>
<th>Username</th>
<th>Actions</th>
</tr>

<?php
//Query to Get all Admin
$sql = "SELECT * FROM tbl_admin";
//Execute the Query
$res = mysqli_query($conn, $sql);

//CHeck whether the Query is Executed of Not


if($res==TRUE)
{
// Count Rows to CHeck whether we have data in database or not
$count = mysqli_num_rows($res); // Function to get all the rows in database

$sn=1; //Create a Variable and Assign the value

ONLINE FOOD ORDERING SYSTEM Page No. 157


//CHeck the num of rows
if($count>0)
{
//WE HAve data in database
while($rows=mysqli_fetch_assoc($res))
{
//Using While loop to get all the data from database.
//And while loop will run as long as we have data in database

//Get individual DAta


$id=$rows['id'];
$full_name=$rows['full_name'];
$username=$rows['username'];

//Display the Values in our Table


?>

<tr>
<td><?php echo $sn++; ?>. </td>
<td><?php echo $full_name; ?></td>
<td><?php echo $username; ?></td>
<td>
<a href="<?php echo SITEURL; ?>admin/update-
password.php?id=<?php echo $id; ?>" class="btn-primary">Change Password</a>
<a href="<?php echo SITEURL; ?>admin/update-
admin.php?id=<?php echo $id; ?>" class="btn-secondary">Update Admin</a>
<a href="<?php echo SITEURL; ?>admin/delete-
admin.php?id=<?php echo $id; ?>" class="btn-danger">Delete Admin</a>
</td>
</tr>

ONLINE FOOD ORDERING SYSTEM Page No. 158


<?php

}
}
else
{
//We Do not Have Data in Database
}
}

?>

</table>

</div>
</div>
<!-- Main Content Setion Ends -->

<?php include('partials/footer.php'); ?>

Manage Category

<?php include('partials/menu.php'); ?>

<div class="main-content">
<div class="wrapper">

ONLINE FOOD ORDERING SYSTEM Page No. 159


<h1>Manage Food Category</h1>

<br /><br />


<?php

if(isset($_SESSION['add']))
{
echo $_SESSION['add'];
unset($_SESSION['add']);
}

if(isset($_SESSION['remove']))
{
echo $_SESSION['remove'];
unset($_SESSION['remove']);
}

if(isset($_SESSION['delete']))
{
echo $_SESSION['delete'];
unset($_SESSION['delete']);
}

if(isset($_SESSION['no-category-found']))
{
echo $_SESSION['no-category-found'];
unset($_SESSION['no-category-found']);
}

if(isset($_SESSION['update']))

ONLINE FOOD ORDERING SYSTEM Page No. 160


{
echo $_SESSION['update'];
unset($_SESSION['update']);
}

if(isset($_SESSION['upload']))
{
echo $_SESSION['upload'];
unset($_SESSION['upload']);
}

if(isset($_SESSION['failed-remove']))
{
echo $_SESSION['failed-remove'];
unset($_SESSION['failed-remove']);
}

?>
<br><br>

<!-- Button to Add Admin -->


<a href="<?php echo SITEURL; ?>admin/add-category.php" class="btn-
primary">Add Category</a>

<br /><br /><br />

<table class="tbl-full">
<tr>
<th>S.N.</th>
<th>Title</th>
<th>Image</th>

ONLINE FOOD ORDERING SYSTEM Page No. 161


<th>Featured</th>
<th>Active</th>
<th>Actions</th>
</tr>

<?php

//Query to Get all CAtegories from Database


$sql = "SELECT * FROM tbl_category";
//Execute Query
$res = mysqli_query($conn, $sql);
//Count Rows
$count = mysqli_num_rows($res);
//Create Serial Number Variable and assign value as 1
$sn=1;
//Check whether we have data in database or not
if($count>0)
{
//We have data in database
//get the data and display
while($row=mysqli_fetch_assoc($res))
{
$id = $row['id'];
$title = $row['title'];
$image_name = $row['image_name'];
$featured = $row['featured'];
$active = $row['active'];

?>

ONLINE FOOD ORDERING SYSTEM Page No. 162


<tr>
<td><?php echo $sn++; ?>. </td>
<td><?php echo $title; ?></td>

<td>

<?php
//Chcek whether image name is available or not
if($image_name!="")
{
//Display the Image
?>

<img src="<?php echo SITEURL; ?>images/category/<?php


echo $image_name; ?>" width="100px" >

<?php
}
else
{
//DIsplay the MEssage
echo "<div class='error'>Image not Added.</div>";
}
?>

</td>

<td><?php echo $featured; ?></td>


<td><?php echo $active; ?></td>
<td>

ONLINE FOOD ORDERING SYSTEM Page No. 163


<a href="<?php echo SITEURL; ?>admin/update-
category.php?id=<?php echo $id; ?>" class="btn-secondary">Update Category</a>
<a href="<?php echo SITEURL; ?>admin/delete-
category.php?id=<?php echo $id; ?>&image_name=<?php echo $image_name; ?>"
class="btn-danger">Delete Category</a>
</td>
</tr>

<?php

}
}
else
{
//WE do not have data
//We'll display the message inside table
?>

<tr>
<td colspan="6"><div class="error">No Category Added.</div></td>
</tr>

<?php
}

?>

</table>

ONLINE FOOD ORDERING SYSTEM Page No. 164


</div>

</div>

<?php include('partials/footer.php'); ?>

Manage Food Admin

<?php include('partials/menu.php'); ?>

<div class="main-content">
<div class="wrapper">
<h1>Manage Food Items</h1>

<br /><br />

<!-- Button to Add Admin -->


<a href="<?php echo SITEURL; ?>admin/add-food.php" class="btn-primary">Add
Food</a>

ONLINE FOOD ORDERING SYSTEM Page No. 165


<br /><br /><br />

<?php
if(isset($_SESSION['add']))
{
echo $_SESSION['add'];
unset($_SESSION['add']);
}

if(isset($_SESSION['delete']))
{
echo $_SESSION['delete'];
unset($_SESSION['delete']);
}

if(isset($_SESSION['upload']))
{
echo $_SESSION['upload'];
unset($_SESSION['upload']);
}

if(isset($_SESSION['unauthorize']))
{
echo $_SESSION['unauthorize'];
unset($_SESSION['unauthorize']);
}

if(isset($_SESSION['update']))
{

ONLINE FOOD ORDERING SYSTEM Page No. 166


echo $_SESSION['update'];
unset($_SESSION['update']);
}

?>

<table class="tbl-full">Page | 167


<tr>
<th>S.N.</th>
<th>Title</th>
<th>Price</th>
<th>Image</th>
<th>Featured</th>
<th>Active</th>
<th>Actions</th>
</tr>

<?php
//Create a SQL Query to Get all the Food
$sql = "SELECT * FROM tbl_food";

//Execute the qUery


$res = mysqli_query($conn, $sql);

//Count Rows to check whether we have foods or not


$count = mysqli_num_rows($res);

//Create Serial Number VAriable and Set Default VAlue as 1


$sn=1;

ONLINE FOOD ORDERING SYSTEM Page No. 167


if($count>0)
{
//We have food in Database
//Get the Foods from Database and Display
while($row=mysqli_fetch_assoc($res))
{
//get the values from individual columns
$id = $row['id'];
$title = $row['title'];
$price = $row['price'];
$image_name = $row['image_name'];
$featured = $row['featured'];
$active = $row['active'];
?>

<tr>
<td><?php echo $sn++; ?>. </td>
<td><?php echo $title; ?></td>
<td>Rs.<?php echo $price; ?></td>
<td>
<?php
//CHeck whether we have image or not
if($image_name=="")
{
//WE do not have image, DIslpay Error Message
echo "<div class='error'>Image not Added.</div>";
}
else
{
//WE Have Image, Display Image

ONLINE FOOD ORDERING SYSTEM Page No. 168


?>
<img src="<?php echo SITEURL; ?>images/food/<?php echo
$image_name; ?>" width="100px">
<?php
}
?>
</td>
<td><?php echo $featured; ?></td>
<td><?php echo $active; ?></td>
<td>
<a href="<?php echo SITEURL; ?>admin/update-
food.php?id=<?php echo $id; ?>" class="btn-secondary">Update Food</a>
<a href="<?php echo SITEURL; ?>admin/delete-
food.php?id=<?php echo $id; ?>&image_name=<?php echo $image_name; ?>" class="btn-
danger">Delete Food</a>
</td>
</tr>
<?php
}
}
else
{
echo "<tr> <td colspan='7' class='error'> Food not Added Yet. </td> </tr>";
}
?>
</table>
</div>

</div>

<?php include('partials/footer.php'); ?>

ONLINE FOOD ORDERING SYSTEM Page No. 169


Manage Order Admin

<?php include('partials/menu.php'); ?>

<div class="main-content">
<div class="wrapper">
<h1>Manage Food Order</h1>
<?php
if(isset($_SESSION['update']))
{
echo $_SESSION['update'];
unset($_SESSION['update']);
}
?>

<table class="tbl-full">
<tr>
<th width="5%">#</th>
<th width="10%">Order Date</th>
<th width="10%">Food</th>
<th width="5%">Price</th>
<th width="5%">Qty</th>
<th width="6%">Total</th>
<th width="8%">Status</th>
<th width="10%">Customer</th>
<th width="10%">Contact</th>
<th width="15%">Email</th>
<th width="10%">Address</th>
<th>Actions</th>
</tr>

ONLINE FOOD ORDERING SYSTEM Page No. 170


<?php
//Get all the orders from database
$sql = "SELECT * FROM tbl_order ORDER BY id DESC"; // DIsplay the
Latest Order at First
//Execute Query
$res = mysqli_query($conn, $sql);
//Count the Rows
$count = mysqli_num_rows($res);

$sn = 1; //Create a Serial Number and set its initail value as 1

if($count>0)
{
//Order Available
while($row=mysqli_fetch_assoc($res))
{
//Get all the order details
$id = $row['id'];
$food = $row['food'];
$price = $row['price'];
$qty = $row['qty'];
$total = $row['total'];
$order_date = $row['order_date'];
$status = $row['status'];
$customer_name = $row['customer_name'];
$customer_contact = $row['customer_contact'];
$customer_email = $row['customer_email'];
$customer_address = $row['customer_address'];

?>

ONLINE FOOD ORDERING SYSTEM Page No. 171


<tr>
<td><?php echo $sn++; ?> </td>
<td><?php echo $order_date; ?></td>
<td><?php echo $food; ?></td>
<td><?php echo 'Rs.'.$price; ?></td>
<td><?php echo $qty; ?></td>
<td><?php echo 'Rs.'.$total; ?></td>
<td>
<?php
// Ordered, On Delivery, Delivered, Cancelled

if($status=="Ordered")
{
echo "<label style='color: blue;'>$status</label>";
}
elseif($status=="On Delivery")
{
echo "<label style='color: orange;'>$status</label>";
}
elseif($status=="Delivered")
{
echo "<label style='color: green;'><b>$status</b></label>";
}
elseif($status=="Cancelled")
{
echo "<label style='color: red;'>$status</label>";
}
?>
</td>

ONLINE FOOD ORDERING SYSTEM Page No. 172


<td><?php echo $customer_name; ?></td>
<td><?php echo $customer_contact; ?></td>
<td><?php echo $customer_email; ?></td>
<td><?php echo $customer_address; ?></td>
<td>
<a href="<?php echo SITEURL; ?>admin/update-
order.php?id=<?php echo $id; ?>" class="btn-secondary">Update Order</a>
</td>
</tr>
<?php
}
}
else
{
echo "<tr><td colspan='12' class='error'>Orders not Available</td></tr>";
}
?>
</table>
</div>

</div>

ONLINE FOOD ORDERING SYSTEM Page No. 173


4.2 TESTING APPROACH

To build up our project we use software testing process for executing a program with the
intent of finding errors that is uncovering errors in a program makes it a feasible task and also
trying to find the error in a program as it is destructive process.

4.2.1 TYPE OF TESTING

Type of testing we Use in Our Project Here we just mentioned that how the testing is related
to this software and in which way we have test the software? In our project we have used 4
types of testing these are listed below –

 Unit testing: Unit testing where individual program unit or object classes are tested
here by using this testing we have focused on testing the functionality of methods.
 Module Testing : Where this is the combination of unit is called module. Here we
tested the unit program is where the module program have dependency
 Sub- system Testing : The we combined some module for the preliminary system
testing in our project
 System Testing : where it is the combination of two or more sub – system and then it
is tested. Here we tested and entire system as per the requirements.

4.2.2 USE CASE

A use case is a methodology used in system analysis to identify, clarify and organize system
requirements. The use case is made up of a set of possible sequences of interactions between
systems and users in a particular environment and related to a particular goal.

Every use case contains three essential elements:

 The actor. The system user -- this can be a single person or a group of people
interacting with the process.
 The goal. The final successful outcome that completes the process.
 The system. The process and steps taken to reach the end goal, including the
necessary functional requirements and their anticipated behaviours.

ONLINE FOOD ORDERING SYSTEM Page No. 174


The writing process includes:

 Identifying all system users and creating a profile for each one. This includes every
role played by a user who interacts with the system.
 Selecting one user and defining their goal -- or what the user hopes to accomplish by
interacting with the system. Each of these goals becomes a use case.
 Describing the course taken for each use case through the system to reach that goal.
 Considering every alternate course of events and extending use cases -- or the
different courses that can be taken to reach the goal.
 Identifying commonalities in journeys to create common course use cases and write
descriptions of each

ONLINE FOOD ORDERING SYSTEM Page No. 175


CHAPTER 5
RESULTS AND DISCUSSION

5.1 OUTPUT SCREEN

Home page

Admin Login Page

ONLINE FOOD ORDERING SYSTEM Page No. 176


User Login page

contactpage

ONLINE FOOD ORDERING SYSTEM Page No. 177


About page

Menu Page

ONLINE FOOD ORDERING SYSTEM Page No. 178


OrderPage

Manage Admin page

ONLINE FOOD ORDERING SYSTEM Page No. 179


Add Admin page

ONLINE FOOD ORDERING SYSTEM Page No. 180


CHAPTER 6

CONCLUSION

RESTRO 1839 (Food ordering System) has been computed successfully and was also tested
successfully bytaking "Test Cases". It is user friendly, and has required options, which can be
utilized by the user to perform the desired operations.
Food ordering System is developed using HTML, CSS, JS as front end and PHP, MySQL as
back end onwindows environment.

The goals that are achieved by the software are:


• User friendly
• Simplification of the operations
• Portable and flexible for further enhancement
• Less processing time and getting required information

ONLINE FOOD ORDERING SYSTEM Page No. 181


6.1 LIMITATION

 Registration Email Verification Not Available

 Portal is not SEO Friendly

 SMS Alert Facility Not available

 Risk Unauthorized Accessibility

6.2 FUTURE SCOPE


 Any education institute and government office’s can make use of it for providing
information about author, content of the available books etc.

 This project can further be extended by adding the facility of e-books to overcome the
problem of book stock in library.

ONLINE FOOD ORDERING SYSTEM Page No. 182


CHAPTER 7

REFERENCES

 HTML & CSS, and JavaScript


Book by Jon Duckett

 Microsoft SQL Server : A beginner’s guide,seventh


EditionBook by Dusan Petkovic

 Microsoft® SQL Server® Notes for Professionals book


https://books.goalkicker.com/MicrosoftSQLServerBook/

 W3 Schools https://www.w3schools.com/

ONLINE FOOD ORDERING SYSTEM Page No. 183

You might also like