Jonnala Naresh New 1
Jonnala Naresh New 1
Jonnala Naresh New 1
By
JONNALA NARESH
(22A21F0077)
CERTIFICATE
This is to certify that this project work entitled “ONLINE BAKERY MANAGEMENT
SYSTEM” is the bonafied work of Mr. JONNALA NARESH who carried out the work
under my supervision, and submitted in partial fulfillment of the requirements for the
award of the degree, Master of Computer Applications, during the academic year
2022-2024.
Head of Department
Mr. A.N.L. KUMAR
Head, Department of MCA
DECLARATION
I certify that
The work contained in the project work is original and has been done by me
under the guidance of my supervisor The work has not been submitted to any
other University for the award of any degree or diploma .The guidelines of the
University are followed in writing this report.
(22A21F0077)
ACKNOWLEDGEMENT
JONNALA NARESH
REG NO :22A21F0077
ONLINE BEKARY MANAGEMENT SYSTEM
ABSTRACT
The Online Bakery Management System is a digital solution designed to
streamline and enhance the operations of bakery businesses. This web-based
platform offers a comprehensive set of features to manage various aspects of bakery
operations, including inventory management, order processing, customer
engagement, and financial tracking. By providing an efficient and user-friendly
interface, this system allows bakery owners and staff to better organize their tasks,
reduce manual errors, improve customer service, and ultimately, grow their
business. This abstract provides an overview of the key functionalities and benefits
of the Online Bakery Management System, which plays a vital role in the
modernization of bakery enterprises in today's digital age.
INDEX
PAGE.NO
S.NO TOPIC
1-2
1 Introduction
2 Feasibility Study 3
System Analysis
3.1 Existing System
3 3.2 Proposed System 4-7
3.3 Software Requirements Specification Document
3.4 Use Case Diagrams
System Design 8
5 Implementation 15-39
6 Testing 40
8 Conclusion 45
1.INTRODUCTION
This project is an online bakery shop that allows users to check for different bakery
itemsavailable at the online shop and then purchase online. The project provides a list of
bakery products displayed online in various categories.The user may browse through
these items if the user wants to purchase any products. An online bakery shop software
project containing various bakery products. It provides customers online shopping
facilities from their homes.The project members contain admin and user. Admin plays a
major role in bakery maintain he can add items delete items and change price list. User
can enter the website and purchase items.
• Categories
• User details
• Bakery details
• Booking details
• Contact details
1.1 Purpose:
The purpose of the Online Bakery Management System is to provide an efficient and
comprehensive software solution for bakery businesses. It aims to streamline operations,
enhance customer experience, and optimize bakery management processes.
1
Intended Audience: This document is primarily intended for: - Bakery owners and
managers - Software developers and engineers - Project stakeholders and investors -
Reading Suggestions: Readers should start with the introduction to gain an overview ofthe
system and then refer to specific sections of interest.
1.4Product Scope: -
The product scope includes the development and implementation of an Online Bakery
Management System. It covers the entire spectrum of bakery operations, from orderplacement
to delivery, inventory management, and reporting. The system’s scope encompasses both
online and physical bakery outlets, ensuring seamless integration.
1.5References: -
This document may reference relevant industry standards, legal regulations, or prior
research related to bakery management systems. - It may also refer to specific software
tools or technologies used in Software Requirements Specification for Page 5 the development
process.
2
2.FEASIBILITY STUDY
The purpose feasibility study for an online bakery shop system involves9 assessing
the market demand and competition to identify potential niches, understanding the
technological requirements for an effective e-commerce platform and delivery logistics, and
evaluating the financial viability by estimating startup costs, revenue projections, and
break-even points. The feasibility study concentrates on the following, such as Technology and
Infrastructure Market Demand and Competition Financial Viability.
1.Market Demand and Competition:
In examining market demand and competition for an online bakery shop system, it is
essential to first gauge the growing consumer interest in online food purchases, especially
baked goods.
3.Financial Viability:
Ensuring the financial viability of an online bakery shop system involves calculating
startup costs, including website development, marketing, and inventory.
3
3.SYSTEM ANALYSIS
Explain the current methods, processes, and tools used by the bakery shop,whether
manual or automated.Highlight the limitations and shortcomings of the existing system.
Enumerate the issues, inefficiencies, or challenges faced by the bakery shop due to
thecurrent system.
Here, you outline the key features and components of the new online bakery shop
system,addressing the shortcomings of the existing system.
Provide a comprehensive overview of the proposed system, its purpose, and the
benefitsit will offer to the bakery shop and its customers.
List the essential features and functionalities the new system will have, such as
onlineproduct catalog, order placement, payment processing, user registration, and more.
4
3.3 Software Requirements Specification Document:
1. Project Description:
2. Project Goals:
3. Key Features:
Display a wide range of bakery products with images, descriptions, and prices. Allow
customers to place orders, track order status, and customize products. Securely process
payments online via various payment methods. Track and manage bakery product
inventory in real-time. Enable user registration, login, and profile management
forcustomers and staff. Provide bakery owners and staff with tools to manage products,
orders, and customer data. Generate reports on sales, inventory, and customer insights.
• Login
• User Friendly Dashboard
• Shopping Cart
• Admin Dashboard
• Reviews
5
Performance: The system should handle concurrent users and maintain fast
response times even during peak hours.
Scalability: Design the system to easily scale as the number of users and products
grows.
Reliability: Minimize downtime and system failures, and implement backup and
recovery procedures.
Usability: Make the system user-friendly with an intuitive interface for both
customers and administrators.
Accessibility: Ensure the system is accessible to users with disabilities, complying
with accessibility standards.
Data Backup and Recovery: Regularly backup data and have a plan for datarecovery
in case of data loss.
User Interfaces:-
1.User id
2.Password
All the interfaces will be running within the internet browser. The data must integrate
with the DB though SQL Interface, HTML for frontend, PHP for backend and tools are Visual
studio and Notepad
6
Use case diagram:
1. Customers 2. Admin
Objective: Most powerful actor of the website. He can access information like:
Objective: He is the creator or administrator of the website. He is the only one to modify
and manage all the content in the
7
4.SYSTEM DESIGN
Class diagram
Sequence diagram
Figure below shows a sequence diagram for the customer/admin validation. In order
to log in, the customer/admin need to key in their username and password. Then the
browser will send the information to the web server and validate the information with the
database. Successful validation will be sent to the web server, and the server will display the
Main home page according to the user type. As for unsuccessful validation, the server will
send an error login page to the monitor.
8
Customer:
9
Admin:
10
Activity Diagram
The below figure shows the activity diagram for customer login, customer register ,
viewtheir personal details. If the student wants to view their personal details, view their
menu items. The customer whenever fill the registration form their details automatically
stored into the customer details. Validation of the form will be carried out before the data
is stored in the database.
11
ER DIAGRAM
12
DATABASE DESIGN
• CUSTOMER TABLE
• BOOKING TABLE
• CONTACT TABLE
13
4.IMPLEMENTATION
User login:
<?php
if (isset($_GET['login_error']) && $_GET['login_error'] == 1) {
echo "<script>alert('Username or Password does not exist!')</script>";echo
"<script>window.location.assign('login_users.php')</script>";
}
?>
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>OCS - Login</title>
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<link href="fonts/circular-std/style.css" rel="stylesheet">
<link rel="stylesheet" href="css/style.css">
<link rel="stylesheet" href="fonts/fontawesome/css/fontawesome-all.css">
<style>
html,
body {
height: 100%;
}
body {
display: -ms-flexbox;
display: flex;
14
-ms-flex-align: center;
align-items: center;
padding-top: 40px;
padding-bottom: 40px;
}
</style>
</head>
<body>
<!-- login page -->
<div class="splash-container">
<div class="card ">
<div class="card-header text-center"><a href="#"><h2 class="text-primary">Online bakery
Shop</h2></a><span class="splash-description">Please enter your user information.</span></div>
<div class="card-body">
<form id="form" data-parsley-validate="" method="post" action="login_check_users.php">
<div class="form-group">
<input class="form-control form-control-lg" type="text" name="users_username" data-
parsley-trigger="change" required="" placeholder="Username" autocomplete="off">
</div>
<div class="form-group">
<input class="form-control form-control-lg" id="pass1" type="password" required=""
placeholder="Password" name="users_password">
</div>
<button type="submit" class="btn btn-primary btn-lg btn-block">Sign in</button>
</form>
</div>
<div class="card-footer bg-white p-0 ">
<div class="card-footer-item card-footer-item-bordered">
<a href="register.php" class="footer-link">Create An Account</a></div>
<div class="card-footer-item card-footer-item-bordered">
<a href="#" class="footer-link">Forgot Password</a>
</div>
</div>
15
</div>
</div>
<!-- end login page -->
<!-- Optional JavaScript -->
<script src="js/jquery-3.3.1.min.js"></script>
<script src="js/bootstrap.bundle.js"></script>
<script src="js/parsley.js"></script>
<script>
$('#form').parsley();
</script>
</body>
</html>
User registration:
<?php
if (isset($_GET['register_msg']) && $_GET['register_msg'] == 1) {
echo "<script>alert('Username already assigned!!!')</script>"; echo
"<script>window.location.assign('register.php')</script>";
}
?>
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>OCS - Sign Up</title>
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<link href="fonts/circular-std/style.css" rel="stylesheet">
<link rel="stylesheet" href="css/style.css">
<link rel="stylesheet" href="fonts/fontawesome/css/fontawesome-all.css">
<style>
16
html,
body {
height: 100%;
}
body {
display: -ms-flexbox;
display: flex;
-ms-flex-align: center;
align-items: center;
padding-top: 20px;
padding-bottom: 20px;
}
</style>
</head>
<!-- signup form -->
<body>
<!-- signup form -->
<form id="form" class="splash-container" data-parsley-validate="" method="post"
action="insert_users.php">
<div class="card">
<div class="card-header">
<h3 class="mb-1">Registrations Form</h3>
<p>Please enter your user information.</p>
</div>
<div class="card-body">
<div class="form-group">
<input class="form-control form-control-lg" type="text" name="users_username" data-parsley-
trigger="change" required="" placeholder="Username" autocomplete="off">
</div>
<div class="form-group">
<input class="form-control form-control-lg" type="email" name="users_email" data-parsley-
trigger="change" required="" placeholder="E-mail" autocomplete="off">
</div>
17
<div class="form-group">
<input class="form-control form-control-lg" id="pass1" type="password" required=""
placeholder="Password" name="users_password">
</div>
<div class="form-group">
<input class="form-control form-control-lg" data-parsley-equalto="#pass1" type="password"
required="" placeholder="Confirm password">
</div>
<div class="form-group">
<input class="form-control form-control-lg" type="tel" name="users_mobile" data-parsley-
trigger="change" required="" placeholder="Mobile no." pattern="[0-9]{10}" autocomplete="off">
</div>
<div class="form-group">
<input class="form-control form-control-lg" type="text" name="users_address" data-parsley-
trigger="change" required="" placeholder="Address" autocomplete="off">
</div>
<div class="form-group pt-2">
<button class="btn btn-block btn-primary" type="submit">Register</button>
</div>
</div>
<div class="card-footer bg-white">
<p>Already member? <a href="login_users.php" class="text-secondary">Login Here.</a></p>
</div>
</div>
</form>
<script src="js/jquery-3.3.1.min.js"></script>
<script src="js/bootstrap.bundle.js"></script>
<script src="js/jquery.slimscroll.js"></script>
<script src="js/parsley.js"></script>
<script src="js/main-js.js"></script>
<script>
$('#form').parsley();
</script>
</body>
18
</html>
Dashboard:
<!DOCTYPE html>
<html>
<head>
<style>
/* Header styling*/
.header {
background-color:#aa076b;
padding:30px;
text-align:center;
color:white;
font-size:30px;
}
ul {
list-style-type: none;
margin: 0;
padding: 0; overflow:
hidden;
background-color:#808080;
}
li {
float: left;
}
li a {
display: block;
color:#800080;
text-align: center;
padding: 25px 20px;
text-decoration: none;
}
li a:hover:not(.active) {
background-color:white;
19
}
.active {
background-color:green;
}
</style>
</head>
<body>
<div class="header">
<h1 style="font-size:60px"><i>Bakery shop</i></h1>
</div>
<font size="5">
<ul>
<li><a class="active" href="#">Home</a></li>
<li><a href="about.html">About</a></li>
<li><a href="menu2.html">Menu</a></li>
<li><a href="contact.html">Contact</a></li>
<li style="float:right"><a class="" href="admin.php">Admin login</a></li>
</ul>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
img {
display: block;
margin-left: auto;
margin-right: auto;
}
</style>
</head>
<body>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style> body
{ margin: 0;
font-family: Arial, Helvetica, sans-serif;
20
}
.hero-image {
background-image:
url("https://i.pinimg.com/originals/3e/69/7b/3e697b10876c0b0e476682b8cc8bad40.jpg");
background-color: #cccccc;
height: 850px;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
position: relative;
}
.hero-text {
text-align: center;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
color: white;
}
</style>
</head>
<body>
<div class="hero-image">
<div class="hero-text">
</div>
</div>
</body>
</body>
</html>
Booking form:
<?php
session_start();
?>
21
<!DOCTYPE html>
<html>
<head>
<style>
*{
box-sizing: border-box;
width: 100%;
padding: 12px;
border-radius: 4px;
resize: vertical;
background-color: #F3C6DE ;
label {
display: inline-block;
input[type=submit] {
background-color:black;
color: white;
22
border: none;
border-radius: 4px;
cursor: pointer;
float: right;
input[type=submit]:hover {
background-color: #45a049;
.container {
border-radius: 1000px;
background-color: #72CEF7;
padding: 20px;
.col-25 { float:
left; width:
25%;
margin-top: 6px;
.col-75 { float:
left; width:
55%;
. margin-top: 6px;
.row:after {
content: "";
23
display: table;
clear: both;
/* Responsive layout - when the screen is less than 600px wide, make the two columns stack on top of each
other instead of next to each other */
width: 100%;
margin-top: 0;
</style>
</head>
<div class="container">
<h2><center>Booking form</center></h2>
<div class="row">
</div>
<div class="row">
<div class="col-25">
</div>
<div class="col-75">
</div>
</div>
<div class="row">
<div class="col-25">
24
<label for="lname">Full name</label>
</div>
<div class="col-75">
</div>
</div>
<div class="row">
<div class="col-25">
</div>
<div class="col-75">
</div>
</div>
<div class="row">
<div class="col-25">
</div>
<div class="col-75">
</div>
</div>
<div class="row">
<div class="col-25">
25
</div>
<div class="col-75">
</div>
</div>
<div class="row">
<div class="col-25">
<label for="subject">message</label>
</div>
<div class="col-75">
</div>
</div>
<div class="row">
</div>
</form>
</div>
</div>
</span>
</center>
</form>
</body>
</html>
26
<?php
if (isset($_GET['login_error']) && $_GET['login_error'] == 1) {
echo "<script>alert('Username or Password does not exist!')</script>";
echo "<script>window.location.assign('index.php')</script>";
}
?>
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>OCS - Login</title>
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="../css/bootstrap.min.css">
<link href="../fonts/circular-std/style.css" rel="stylesheet">
<link rel="stylesheet" href="../css/style.css">
<link rel="stylesheet" href="../fonts/fontawesome/css/fontawesome-all.css">
<style>
html,
body {
height: 100%;
}
body {
display: -ms-flexbox;
display: flex;
-ms-flex-align: center;
align-items: center;
padding-top: 40px;
padding-bottom: 40px;
}
</style>
</head>
<body>
<!-- ============================================================== -->
<!-- login page -->
<!-- ============================================================== -->
<div class="splash-container">
<div class="card ">
<div class="card-header text-center"><a href="#"><h2 class="text-primary">Online Cake
Shop</h2></a><span class="splash-description">Please enter your user information.</span></div>
<div class="card-body">
<form id="form" data-parsley-validate="" method="post" action="login_check.php">
<div class="form-group">
<input class="form-control form-control-lg" type="text" name="admin_username" data-parsley-
trigger="change" required="" placeholder="Username" autocomplete="off">
</div>
<div class="form-group">
<input class="form-control form-control-lg" id="pass1" type="password" required="" placeholder="Password"
27
name="admin_password">
</div>
<button type="submit" class="btn btn-primary btn-lg btn-block">Sign in</button>
</form>
</div>
<div class="card-footer bg-white p-0 ">
<div class="card-footer-item card-footer-item-bordered">
<a href="admin_signup.php" class="footer-link">Create An Account</a></div>
<div class="card-footer-item card-footer-item-bordered">
<a href="#" class="footer-link">Forgot Password</a>
</div>
</div>
</div>
</div>
</html>
div>
</div>
<!-- end login page -->
<!-- Optional JavaScript -->
<script src="js/jquery-3.3.1.min.js"></script>
<script src="js/bootstrap.bundle.js"></script>
<script src="js/parsley.js"></script>
<script>
$('#form').parsley();
</script>
</body>
</html>
<?php
28
if (isset($_GET['edit_success']) && $_GET['edit_success'] == 1) {
echo "<script>alert('Edited details!')</script>";
echo "<script>window.location.assign('account_admin.php')</script>";
}
?>
<?php
session_start();
if (isset($_SESSION['user_admin_id']) && $_SESSION['user_admin_id'] != null) {
$admin_username = $_SESSION['user_admin_username'];
?>
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>OCS - Admin Account</title>
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="../css/bootstrap.min.css">
<link href="../fonts/circular-std/style.css" rel="stylesheet">
<link rel="stylesheet" href="../css/style.css">
<link rel="stylesheet" href="../fonts/fontawesome/css/fontawesome-all.css">
</head>
<body>
<!-- ============================================================== -->
<!-- main wrapper -->
<!-- ============================================================== -->
<div class="dashboard-main-wrapper">
<!-- ============================================================== -->
<!-- navbar -->
<!-- ============================================================== -->
29
<div class="dashboard-header">
<nav class="navbar navbar-expand-lg bg-white fixed-top">
<a class="navbar-brand" href="#">Online Cake Shop</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span><i class="fas fa-bars mx-3
"></i></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav ml-auto navbar-right-top">
<li class="nav-item dropdown nav-user">
<a class="nav-link nav-user-img" href="#" id="navbarDropdownMenuLink2" data-toggle="dropdown" aria-
haspopup="true" aria-expanded="false"><img src="../uploads/default-image.jpg" alt="" class="user-avatar-md
rounded-circle"></a>
<div class="dropdown-menu dropdown-menu-right nav-user-dropdown" aria-
labelledby="navbarDropdownMenuLink2">
<div class="nav-user-info">
<h5 class="mb-0 text-white nav-user-name"><?php echo $admin_username;?></h5>
<span class="status"></span><span class="ml-2">Available</span>
</div>
<a class="dropdown-item" href="account_admin.php"><i class="fas fa-user mr-2"></i>Account</a>
<a class="dropdown-item" href="logout.php"><i class="fas fa-power-off mr-2"></i>Logout</a>
</div>
</li>
</ul>
</div>
</nav>
</div>
<!-- ============================================================== -->
<!-- end navbar -->
<!-- ============================================================== -->
<!-- ============================================================== -->
<!-- left sidebar -->
<!-- ============================================================== -->
<div class="nav-left-sidebar sidebar-dark">
30
<div class="menu-list">
<nav class="navbar navbar-expand-lg navbar-light">
<a class="d-xl-none d-lg-none" href="#">Dashboard</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-
controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav flex-column">
<li class="nav-divider">
Menu
</li>
<li class="nav-item ">
<a class="nav-link" href="dashboard.php"><i class="fa fa-fw fa-rocket"></i>Dashboard</a>
</li>
<li class="nav-item">
<a class="nav-link" href="view_users.php"><i class="fa fa-fw fa-user-circle"></i>Users</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" data-toggle="collapse" aria-expanded="false" data-target="#submenu-3" aria-
controls="submenu-3"><i class="fas fa-fw fa-chart-pie"></i>Category</a>
<div id="submenu-3" class="collapse submenu" style="">
<ul class="nav flex-column">
<li class="nav-item">
<a class="nav-link" href="view_category.php">View category</a>
</li>
<li class="nav-item">
<a class="nav-link" href="add_category.php">Add category</a>
</li>
</ul>
</div>
</li>
<li class="nav-item ">
<a class="nav-link" href="#" data-toggle="collapse" aria-expanded="false" data-target="#submenu-4" aria-
controls="submenu-4"><i class="fab fa-product-hunt
31
"></i>Products</a>
<div id="submenu-4" class="collapse submenu" style="">
<ul class="nav flex-column">
<li class="nav-item">
<a class="nav-link" href="view_product.php">View products</a>
</li>
<li class="nav-item">
<a class="nav-link" href="add_product.php">Add products</a>
</li>
</ul>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="view_orders.php"><i class="fas fa-shopping-cart
"></i>Orders</a>
</li>
</ul>
</div>
</nav>
</div>
</div>
<!-- ============================================================== -->
<!-- end left sidebar -->
<!-- ============================================================== -->
<!-- ============================================================== -->
<!-- wrapper -->
<!-- ============================================================== -->
<div class="dashboard-wrapper">
<div class="container-fluid dashboard-content">
<!-- ============================================================== -->
<!-- pageheader -->
<!-- ============================================================== -->
<div class="row">
<div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-12">
32
<div class="page-header">
<h2 class="pageheader-title">Admin Account</h2>
<p class="pageheader-text">Proin placerat ante duiullam scelerisque a velit ac porta, fusce sit amet vestibulum
mi. Morbi lobortis pulvinar quam.</p>
<div class="page-breadcrumb">
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="dashboard.php" class="breadcrumb-link">Dashboard</a></li>
<li class="breadcrumb-item active" aria-current="page">Admin account</li>
</ol>
</nav>
</div>
</div>
</div>
</div>
<!-- ============================================================== -->
<!-- end pageheader -->
<!-- ============================================================== -->
<div class="row">
<div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-12">
<?php
require_once("../config.php");
$admin_id = $_SESSION['user_admin_id'];
$select = "SELECT * FROM cake_shop_admin_registrations where admin_id = $admin_id";
$query = mysqli_query($conn, $select);
$res = mysqli_fetch_assoc($query);
?>
<form id="form" class="splash-container" method="post" action="update_admin.php">
<div class="card">
<div class="card-body">
<div class="form-group">
<input class="form-control form-control-lg" type="text" name="admin_username" required=""
autocomplete="off" value="<?php echo $res['admin_username'];?>">
</div>
<div class="form-group">
33
<input class="form-control form-control-lg" type="email" name="admin_email" required=""
autocomplete="off" value="<?php echo $res['admin_email'];?>">
</div>
<div class="form-group">
<input class="form-control form-control-lg" type="text" required="" name="admin_password" value="<?php
echo $res['admin_password'];?>">
</div>
<div class="form-group pt-2">
<input type="hidden" value="<?php echo $res['admin_id'];?>" name="hidden_admin_id">
<button class="btn btn-block btn-primary" type="submit">Change</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- ============================================================== -->
<!-- footer -->
<!-- ============================================================== -->
<div class="footer">
<div class="container-fluid">
<div class="row">
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-12">
Copyright © 2018 Concept. All rights reserved. Dashboard by <a
href="https://colorlib.com/wp/">Colorlib</a>.
</div>
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-12">
<div class="text-md-right footer-links d-none d-sm-block">
<a href="javascript: void(0);">About</a>
<a href="javascript: void(0);">Support</a>
<a href="javascript: void(0);">Contact Us</a>
</div>
</div>
</div>
34
</div>
</div>
<!-- ============================================================== -->
<!-- end footer -->
<!-- ============================================================== -->
</div>
<!-- ============================================================== -->
<!-- end main wrapper -->
<!-- ============================================================== -->
</div>
<!-- ============================================================== -->
<!-- end main wrapper -->
<!-- ============================================================== -->
<!-- Optional JavaScript -->
<script src="../js/jquery-3.3.1.min.js"></script>
<script src="../js/bootstrap.bundle.js"></script>
<script src="../js/jquery.slimscroll.js"></script>
<script src="../js/main-js.js"></script>
</body>
</html>
<?php
}
else {
header("Location: index.php");
}
?>
<?php
session_start();
if (!empty($_SESSION['cart'])) {
$printCount = count($_SESSION['cart']);
}
else {
$printCount = 0;
}
if (!empty($_SESSION['user_users_id']) && !empty($_SESSION['user_users_username'])) {
$printUsername = $_SESSION['user_users_username'];
}
35
else {
$printUsername = "None";
}
?>
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>OCS - About Us</title>
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<link href="fonts/circular-std/style.css" rel="stylesheet">
<link rel="stylesheet" href="css/style.css">
<link rel="stylesheet" href="css/userpage.css">
<link rel="stylesheet" href="fonts/fontawesome/css/fontawesome-all.css">
</head>
<body>
<!-- ============================================================== -->
<!-- main wrapper -->
<!-- ============================================================== -->
<div class="dashboard-main-wrapper">
<!-- ============================================================== -->
<!-- navbar -->
<!-- ============================================================== -->
<div class="dashboard-header">
<nav class="navbar navbar-expand-lg bg-white fixed-top">
<a class="navbar-brand" href="#">Online Cake Shop</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span><i class="fas fa-bars mx-3
"></i></span>
</button>
<div class="collapse navbar-collapse " id="navbarSupportedContent">
<ul class="navbar-nav ml-auto navbar-right-top">
<li class="nav-item">
<a class="nav-link" href="index.php">Home</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link" href="#" id="navbarDropdownMenuLink1" data-toggle="dropdown" aria-
haspopup="true" aria-expanded="false">Shop</a>
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdownMenuLink1">
<?php
require_once('config.php');
$select = "SELECT * FROM cake_shop_category";
$query = mysqli_query($conn, $select);
while ($res = mysqli_fetch_assoc($query)) {
?>
<a class="dropdown-item" href="shop.php?category=<?php echo $res['category_id'];?>">
36
<?php echo $res['category_name'];?>
</a>
<?php
}
?>
</div>
</li>
<li class="nav-item">
<a class="nav-link active" href="cart.php"><i class="fas fa-shopping-cart"></i> <span class="badge badge-
pill badge-secondary"><?php echo $printCount;?></span></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="contact.php">Contact</a>
</li>
<li class="nav-item dropdown nav-user">
<a class="nav-link nav-user-img" href="#" id="navbarDropdownMenuLink2" data-toggle="dropdown" aria-
haspopup="true" aria-expanded="false"><img src="uploads/default-image.jpg" alt="" class="user-avatar-md
rounded-circle"></a>
<div class="dropdown-menu dropdown-menu-right nav-user-dropdown" aria-
labelledby="navbarDropdownMenuLink2">
<div class="nav-user-info">
<h5 class="mb-0 text-white nav-user-name"><?php echo $printUsername;?></h5>
<span class="status"></span><span class="ml-2">Available</span>
</div>
<a class="dropdown-item" href="account_users.php"><i class="fas fa-user mr-2"></i>Account</a>
<a class="dropdown-item" href="login_users.php"><i class="fas fa-sign-in-alt mr-2"></i>Login</a>
<a class="dropdown-item" href="logout_users.php"><i class="fas fa-power-off mr-2"></i>Logout</a>
</div>
</li>
</ul>
</div>
</nav>
</div>
<!-- ============================================================== -->
<!-- end navbar -->
<!-- ============================================================== -->
<div class="row">
<div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-12">
<div class="page-header">
<h2 class="pageheader-title">Contact</h2>
<p class="pageheader-text">Proin placerat ante duiullam scelerisque a velit ac porta, fusce sit amet vestibulum
mi. Morbi lobortis pulvinar quam.</p>
37
<div class="page-breadcrumb">
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="index.php" class="breadcrumb-link">Home</a></li>
<li class="breadcrumb-item active" aria-current="page">Contact us</li>
</ol>
</nav>
</div>
</div>
</div>
</div>
</div>
<!-- ============================================================== -->
<!-- footer -->
<!-- ============================================================== -->
<div class="footer">
<div class="container-fluid">
<div class="row">
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-12">
Copyright © 2018 Concept. All rights reserved. Dashboard by <a
href="https://colorlib.com/wp/">Colorlib</a>.
</div>
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-12">
38
<div class="text-md-right footer-links d-none d-sm-block">
<a href="javascript: void(0);">About</a>
<a href="javascript: void(0);">Support</a>
<a href="javascript: void(0);">Contact Us</a>
</div>
</div>
</div>
</div>
</div>
<!-- ============================================================== -->
<!-- end footer -->
<!-- ============================================================== -->
<!-- </div> -->
</div>
<!-- ============================================================== -->
<!-- end main wrapper -->
<!-- ============================================================== -->
<!-- Optional JavaScript -->
<script src="js/jquery-3.3.1.min.js"></script>
<script src="js/bootstrap.bundle.js"></script>
<script src="js/jquery.slimscroll.js"></script>
<script src="js/main-js.js"></script>
</body>
</html>
39
5.TESTING
40
7. Results and Discussion
Home page:
The home page of our online bakery shop serves as the virtual
entrance to a world of culinary delights. As you land on the page, you'll
be greeted by a visually enticing display of our freshly baked goods,
from artisanal bread to exquisite pastries. Our goal is to create an
immersive experience that reflects the warmth and aroma of a
traditional bakery.
Login page:
Our login page is the secure gateway to a personalized experience at our online
bakery shop. Here, customers can access their accounts, ensuring a seamless and
convenient shopping journey. Upon reaching the login page, users are prompted to
enter their credentials, creating a secure connection to their individual profiles.
41
Registrations page:
42
Shopping cart
The shopping cart in our online bakery shop is a virtual basket where
customers gather and review their selected items before proceeding to checkout.
It serves as a user-friendly tool to manage and organize their desired products,
creating a seamless and convenient shopping experience.
43
Admin dashboard
The Admin Dashboard of our online bakery shop is a centralized control panel
tailored for administrative purposes. It provides a comprehensive overview and
management interface for the backend operations of the e-commerce platform.
44
8. CONCLUSION
This project is an online bakery shop that allows users to check for different bakery
items available at the online shop and then booking online. The project provides a list of
bakery products displayed online in various categories. The user may browse through these
items if the user wants to booking any products. An online bakery shop software project
containing various bakery products. It provides customers online shopping facilities from
their homes. the implementation of an online bakery management system brings about
numerous advantages and improvements to the overall efficiency and customer experience
within the bakery business.
45
References
FOR PHP :
https://www.php.net/
FOR MySQL :
https://www.mysql.com/
FOR XAMPP :
https://www.apachefriends.org/download.html
46