My Final Year Project-Saabrin
My Final Year Project-Saabrin
On
E-Commerce Website
By
Saabrin Khanam
Enrollment No.-AJU/220677
2022-2025
1|P a ge
22-2025
A PROJECT REPORT ON
E-Commerce Website
OF
BATCH 2022-2025
SUBMITTED TO
2|P a ge
2022-2025
CERTIFICATE
This is to certify that the project entitled, Saabrin Khanam, is Bonafide work of Saabrin
Khanam bearing Enrollment No AJU/220677 under the guidance of Dr. Arvind Kumar Pandey,
Dean School of Engineering and IT submitted in partial fulfillment of the requirements for the award
of degree of BACHELOR OF COMPUTER APPLICATION from ARKA JAIN UNIVERSITY,
JHARKHAND during the academic year 2024-2025.
3|P a ge
COMPANY INTERNSHIP CERTIFICATE
4|P a ge
ABSTRACT
Online Shopping play a great importance in the modern business environment. Dream gate has
opened the door of opportunity and advantage to the firms. This paper analyzed the different issue
of online shopping. The project aims to provide theoretical contribution in misunderstanding the
present status of online shopping. The Study Discuss the consumers’ online shopping behaviors.
Paper also identify the problems face by the consumers when they want to accept internet
shopping. Present paper is an expressive study based on the detailed review of earlier pertinent
studies related to the various concepts of online shopping to discover the concept of online
shopping. Solitude and safety risk merge regularly as a reason for being cautious about internet
shopping. Shopping convenience, information seeking, social contact, and diversity affects the
consumer attitude towards online shopping. The impossibility of product testing, problems with
complaints, product return and missus of personal data are the main doubts regarding on-line
shopping Keywords E-Commerce is now seen as a reality for many businesses and a normal part of
a business plan. The immediate benefits, in terms of cost savings, efficiencies and enhanced
profitability are clear at every stage in the supply chain. Adopting e-business is no longer a
competitive advantage, but a normal business process, without which an enterprise is unlikely to
survive in the New economy . Year 2000 saw many Dot-com companies built up and many
companies going into E-commerce however now it is a different story, more and more companies
are failing, and investors are becoming cautious to invest money into Internet ventures.88.
5|P a ge
ACKNOWLEDGEMENTS
After completion of my final year project, I would like to take this chance to express my sincere
gratitude to my project guide and Dean, School of Engineering and IT, Dr. Arvind Kumar Pandey
who has guided me a lot throughout my project development. Without him, I think I could not have
finished the project on time. In addition, while I met some logic problem or design problem, he was
always the one who gave me useful and logical answers.
I would like to thank Divya Paikaray for one more time for sharing his experience with me so that I
could get more logical understanding on how to develop chat application which is suitable for current
society.
Finally, I want to thank to all my friends and teachers, who helped and co-operated with me directly
or indirectly in the accomplishment of this project.
6|P a ge
DECLARATION
I, Saabrin Khanam hereby declare that the project entitled, E-Commerce done at ARKA JAIN
UNIVERSITY, has not been in any case duplicated to submit to any other university for the award of
any degree. To the best of my knowledge other than me, no one has submitted to any other university.
The project is done in partial fulfillment of the requirements for the award of degree of BACHLEOR
OF COMPUTER APPLICATION to be submitted as final semester project as part of our curriculum.
SAABRIN KHANAM
AJU/220677
7|P a ge
TABLE OF CONTENTS
Chapter 1
Introduction......................................................................................................................................10
1.2 Objectives……………….................................................................................................11
Chapter 2
System Design............................................................................................................................20-25
8|P a ge
Chapter 4
4.1 Coding.....................................................................................................................26-96
Chapter 5
Chapter 6
Conclusion....................................................................................................................................120
Chapter 7
References....................................................................................................................................121
9|P a ge
Chapter 1
INTRODUCTION
In today’s fast-paced digital era, the way people shop for fashion has undergone a significant
transformation. E-commerce has emerged as a powerful platform, offering convenience, variety, and
accessibility at the click of a button. Amidst this evolution, the demand for specialized and curated
shopping experiences has grown, particularly in the men’s fashion segment. Our e-commerce website
is designed to cater exclusively to the modern man-someone who values style, comfort, and
individuality.
This platform aims to bridge the gap between premium quality and affordable fashion by offering a
wide range of men’s wear including casual outfits, formal attire, ethnic wear, sportswear, and
accessories. Whether you're dressing for a boardroom meeting, a weekend getaway, or a traditional
celebration, our site brings together the latest trends, timeless classics, and trusted brands in one
convenient location.
User-friendly navigation, secure payment gateways, fast delivery, and excellent customer service are
at the core of our mission. We also emphasize sustainability by partnering with eco-conscious brands
and promoting ethical fashion practices. Our goal is not just to sell clothes, but to empower men to
express their identity and confidence through fashion.
1. 1 OVERVIEW
E-commerce website is built with one clear goal: to redefine how men shop for fashion online.
Designed exclusively for men, the platform brings together a wide selection of stylish and practical
clothing options—all in one place. From everyday casuals to sharp formals, from ethnic wear to
activewear, our collection is curated to suit the diverse wardrobe needs of today’s man.
The website offers a clean, user-friendly interface that makes browsing and purchasing simple and
hassle-free. Customers can easily filter products by size, style, color, or brand, and enjoy a smooth
checkout process with multiple secure payment options. With fast shipping, easy returns, and
responsive customer service, we ensure a trustworthy and satisfying shopping journey from start to
finish.
10 | P a g e
What sets us apart is our focus on men’s fashion alone—offering not just products, but inspiration.
Through curated collections, trend updates, and style tips, we aim to help every customer look and
feel confident. Whether shopping on a desktop or mobile device, users can enjoy a seamless
experience tailored for convenience and style.
1.2 OBJECTIVE
The primary objective of our men’s wear e-commerce website is to become a one-stop destination
for modern men seeking stylish, high-quality clothing and accessories. We aim to offer a wide and
versatile range of products that cater to various lifestyles, occasions, and fashion preferences. Our
focus is on delivering a smooth, user-friendly shopping experience that is accessible across all
devices, ensuring convenience and satisfaction at every step. By combining premium quality with
affordable pricing, we strive to make fashionable dressing accessible to every customer. At the heart
of our platform is a commitment to building lasting relationships through dependable service, prompt
deliveries, and responsive customer support. We also believe in empowering men to express their
personal style confidently, and our curated collections and style tips are designed to inspire and guide
them. Furthermore, we are committed to continuous growth by listening to customer feedback and
leveraging data to improve our offerings. As a responsible brand, we support ethical and sustainable
fashion practices by partnering with environmentally conscious labels, ensuring our impact extends
beyond style and sales to social and environmental responsibilities.
11 | P a g e
Chapter 2
12 | P a g e
Regulations:
• Consumer protection laws
• Data privacy (e.g., GDPR, CCPA)
• E-commerce laws (taxation, terms & conditions)
Assessment: As long as the website complies with relevant local and international laws
and includes clear policies, legal feasibility is achievable.
3. Operational Feasibility
Personnel:
• Developers, content creators, customer service reps
Business Operations:
• Order fulfillment, inventory management, customer support
Assessment: The operations can be managed in-house or outsourced to third-party
providers (e.g., fulfillment centers). Scalability is possible with proper planning
4. Schedule Feasibility
Estimated Timeline:
• Planning: 2 weeks
• Design & Development: 2–3 months
• Testing & Launch: 2 weeks
Assessment: The project can realistically be completed within 3–4 months depending on scope and
resource availability.
The following is the desired functionality of the new system. The proposed project would cover:
Customer Module
• Admin can provide username, email, password and your admin account will be created.
• After login, there is a dashboard where admin can see how many customers is registered, how
many products are there for sale, how many orders placed.
2.6.3 (DATABASE)
• MongoDB Atlas for Flexible Data Storage and Cloud Convenience.
• Efficient Handling of E-commerce Data.
• Seamless Integration with Node.js via Mongoose
.
15 | P a g e
2.8 Data Flow Diagram (DFD)
A data flow diagram is graphical tool used to describe and analyze movement of data through a
system. These are the central tool and the basis from which the other components are developed. The
transformation of data from input to output, through processed, may be described logically and
independently of physical components associated with the system. These are known as the logical
data flow diagrams. The physical data flow diagrams show the actual implements and movement of
data between people, departments and workstations.
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.
Data Flow – Data flow are pipelines through the packets of information
16 | P a g e
2.8.2 DFD level 1
17 | P a g e
2.8.3 DFD level 2
1.2
Insert Item
Manage D3 Item
Item Reply
1.4
Manage
Report
18 | P a g e
DFD Level 2 Continued:
1.2
Insert Item
Manage D3 Item
Item
Reply
19 | P a g e
Chapter 3
SYSTEM DESIGN
3.1 ER DIAGRAM
20 | P a g e
3.2 DATA 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 normalization in SQL is
to eliminate redundant(repetitive) data and ensure data is stored logically.
21 | P a g e
3.3 DATA DICTIONARY
The data in the system has to be stored and retrieved from database. Designing the database is part of
system design. Data elements and data structures to be stored have been identified at analysis stage.
They are structured and put together to design the data storage and retrieval system. A database is a
collection of interrelated data stored with minimum redundancy to serve many users quickly and
efficiently. The general objective is to make database access easy, quick, inexpensive and flexible for
the user. Relationships are established between the data items and unnecessary data items are
removed. Normalization is done to get an internal consistency of data and to have minimum
redundancy and maximum stability. This ensures minimizing data storage required, minimizing
chances of data inconsistencies and optimizing for updates. The MS Access database has been chosen
for developing the relevant databases.
table:
22 | P a g e
user table:
payment table:
23 | P a g e
cart table:
shopping table:
Field_Name Data_Type Field_length Constraints Description
24 | P a g e
Order details table:
25 | P a g e
Chapter 4
4.1 CODING
<?php session_start(); error_reporting(0);
$_GET['action']=="add"){
$id=intval($_GET['id']); if(isset($_SESSION['cart'][$id])){
$_SESSION['cart'][$id]['quantity']++;
}else{
$query_p=mysqli_query($con,$sql_p); if(mysqli_num_rows($query_p)!=0){
$row_p=mysqli_fetch_array($query_p);
=> $row_p['productPrice']);
}else{
$message="Product ID is invalid";
</script>"; }
?>
<!DOCTYPE html>
<html lang="en">
26 | P a g e
<head>
<meta charset="utf-8">
27 | P a g e
<link href="assets/css/red.css" rel="alternate stylesheet" title="Red <link
<link
href='http://fonts.googleapis.com/css?family=Roboto:300,400,500,700' rel='stylesheet'
type='text/css'>
</head>
<body class="cnt-home">
<!-- ==============================================
<header class="header-style-1">
<?php include('includes/top-header.php');?>
<?php include('includes/main-header.php');?>
<?php include('includes/menu-bar.php');?>
</header>
<div class="container">
<div class="row">
28 | P a g e
<!-- ==================================
<?php include('includes/side-menu.php');?>
================================== -->
<!--
========================================= -->
<div class="full-width-slider">
<div class="full-width-slider">
</div>
<!--
29 | P a g e
============================================== INFO BOXES
============================================== -->
<div class="info-boxes-inner">
<div class="row">
<div class="info-box">
<div class="row">
<div class="col-xs-2">
</div>
class="info-box-heading
green">money back</h4>
</div>
</div>
Guarantee.</h6>
</div>
<div class="info-box">
<div class="row">
fa-truck"></i> orange">free
shipping</h4> </div>
30 | P a g e
<div class="col-xs-10">
<h4 class="info-box-heading
</div>
</div>
600.00</h6>
</div>
<div class="info-box">
<div class="row">
fa fa-gift"></i> red">Special
Sale</h4>
</div>
<div class="col-xs-10">
<h4 class="info-box-heading
</div>
</div>
</h6>
</div>
31 | P a g e
</div><!-- /.info-boxes -->
<!-- ==============================================
Products</h3>
products-1"> toggle="tab">All</a></li>
toggle="tab">Furniture</a></li>
</div>
<?php
($row=mysqli_fetch_array($ret))
32 | P a g e
{
# code...
?>
<div class="products">
<div class="product">
<div class="product-image">
<div class="image">
htmlentities($row['id']);?>"><?php echo
htmlentities($row['productName']);?></a></h3>
<div class="description"></div>
<div class="product-price">
33 | P a g e
htmlentities($row['productPrice']);?> </span> <span class="price-
before-discount">Rs.<?php echo
htmlentities($row['productPriceBeforeDiscount']);?> </span>
<div class="action"><a
primary">Add to Cart</a></div>
style="color:red">Out of Stock</div>
<?php } ?>
<?php } ?>
</div>
owl-theme">
<?php
($row=mysqli_fetch_array($ret))
34 | P a g e
{
# code...
?>
<div class="products">
<div class="product">
<div class="product-image">
<div class="image">
height="300" alt=""></a>
info text-left">
htmlentities($row['id']);?>"><?php echo
htmlentities($row['productName']);?></a></h3>
<div class="description"></div>
<div class="product-price">
discount">Rs.<?php echo
htmlentities($row['productPriceBeforeDiscount']);?></span>
35 | P a g e
</div><!-- /.product-price -->
<div class="action"><a
primary">Add to Cart</a></div>
style="color:red">Out of Stock</div>
<?php } ?>
carousel -->
</div>
</div><!-- /.home-owl-
<?php
($row=mysqli_fetch_array($ret))
?>
36 | P a g e
<div class="products">
<div class="product">
<div class="product-image">
<div class="image">
alt=""></a>
</div>
</div>
htmlentities($row['id']);?>"><?php echo
htmlentities($row['productName']);?></a></h3>
<div class="description"></div>
price">
discount">Rs.<?php echo
htmlentities($row['productPriceBeforeDiscount']);?></span>
</div>
</div>
37 | P a g e
<div class="action"><a
primary">Add to Cart</a></div>
style="color:red">Out of Stock</div>
<?php } ?>
</div>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
</div>
</div>
============================================== -->
<div class="row">
<div class="col-md-6">
<section class="section">
theme" data-item="2">
<?php
38 | P a g e
$ret=mysqli_query($con,"select * from products where category=4 and subCategory=4");
while ($row=mysqli_fetch_array($ret))
?>
<div class="products">
<div class="product">
<div class="product-image">
<div class="image">
htmlentities($row['id']);?>"><?php echo
htmlentities($row['productName']);?></a></h3>
<div class="description"></div>
price">
39 | P a g e
htmlentities($row['productPrice']);?> </span> <span class="price-before-
discount">Rs.<?php echo
htmlentities($row['productPriceBeforeDiscount']);?></span>
</div>
</div>
<div class="action"><a
primary">Add to Cart</a></div>
style="color:red">Out of Stock</div>
<?php } ?>
<?php }?>
</div>
</div>
</div> </section>
title">Laptops</h3>
</div>
</div>
<div class="col-md-6">
<section class="section">
<h3 class="section-
40 | P a g e
while ($row=mysqli_fetch_array($ret))
?>
<div class="products">
<div class="product">
<div class="product-image">
<div class="image">
htmlentities($row['id']);?>"><?php echo
htmlentities($row['productName']);?></a></h3>
<div class="description"></div>
<div class="product-price">
htmlentities($row['productPrice']);?> </span>
htmlentities($row['productPriceBeforeDiscount']);?></span>
41 | P a g e
</div>
</div>
$row['id']; ?>"
style="color:red">Out of Stock</div>
<?php } ?>
<?php }?>
</div>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
<!-- ==============================================
<h3 class="section-title">Fashion</h3>
<?php
42 | P a g e
$ret=mysqli_query($con,"select * from products where category=6"); while
($row=mysqli_fetch_array($ret))
# code...
?>
<div class="item">
class="product"> product-micro-
row">
<div class="product-micro">
<div class="row
<div class="image">
echo="admin/productimages/<?php echo
height="174" alt="">
<div class="zoom-overlay"></div>
</a>
/.product-image -->
<div class="product-info">
43 | P a g e
<h3 class="name"><a href="product-details.php?pid=<?php echo htmlentities($row['id']);?>"><?php
echo htmlentities($row['productName']);?></a></h3>
<div class="product-price">
<span class="price">
</span>
</div>
<div class="action"><a
primary">Add to Cart</a></div>
style="color:red">Out of Stock</div>
<?php } ?>
</div>
</div>
</div>
</div><?php } ?>
</div>
</section>
<?php include('includes/brands-slider.php');?>
44 | P a g e
</div>
</div>
<?php include('includes/footer.php');?>
<script src="assets/js/jquery-1.11.1.min.js"></script>
<script src="assets/js/bootstrap.min.js"></script>
<script src="assets/js/bootstrap-hover-dropdown.min.js"></script>
<script src="assets/js/owl.carousel.min.js"></script>
<script src="assets/js/echo.min.js"></script>
<script src="assets/js/jquery.easing-1.3.min.js"></script>
<script src="assets/js/bootstrap-slider.min.js"></script>
<script src="assets/js/jquery.rateit.min.js"></script>
<script src="assets/js/bootstrap-select.min.js"></script>
<script src="assets/js/wow.min.js"></script>
<script src="assets/js/scripts.js"></script>
<script src="switchstylesheet/switchstylesheet.js"></script>
<script>
$(document).ready(function(){
$(".changecolor").switchstylesheet( { seperator:"color"} );
$('.show-theme-options').click(function(){
});
});
$(window).bind("load", function() {
45 | P a g e
$('.show-theme-options').delay(2000).trigger('click');
});
</script>
</body>
error_reporting(0);
include('includes/config.php'); //
if(isset($_POST['submit']))
$name=$_POST['fullname'];
$email=$_POST['emailid'];
$contactno=$_POST['contactno'];
$password=md5($_POST['password']);
} else{
if(isset($_POST['login'])) {
$email=$_POST['email'];
46 | P a g e
$password=md5($_POST['password']);
$extra="my-cart.php";
$_SESSION['login']=$_POST['email'];
$_SESSION['id']=$num['id'];
$_SESSION['username']=$num['name'];
$uip=$_SERVER['REMOTE_ADDR'];
$status=1;
values('".$_SESSION['login']."','$uip','$status')");
$host=$_SERVER['HTTP_HOST'];
$uri=rtrim(dirname($_SERVER['PHP_SELF']),'/\\');
$extra="login.php";
$email=$_POST['email'];
$uip=$_SERVER['REMOTE_ADDR'];
$status=0;
$host = $_SERVER['HTTP_HOST'];
$uri = rtrim(dirname($_SERVER['PHP_SELF']),'/\\');
header("location:http://$host$uri/$extra");
47 | P a g e
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
48 | P a g e
<link href="assets/css/lightbox.css" rel="stylesheet">
color"> color">
href='http://fonts.googleapis.com/css?family=Roboto:300,400,500,700' rel='stylesheet'
type='text/css'>
if(document.register.password.value!= document.register.confirmpassword.value)
49 | P a g e
} return true; }
userAvailability() {
$("#loaderIcon").show();
jQuery.ajax({
url: "check_availability.php",
success:function(data){
$("#user-availability-status1").html(data);
$("#loaderIcon").hide();
}, error:function (){}
});
</script>
</head>
<body class="cnt-home">
<!-- ==============================================
<header class="header-style-1">
<?php include('includes/top-header.php');?>
<?php include('includes/main-header.php');?>
<?php include('includes/menu-bar.php');?>
</header>
<div class="breadcrumb">
<div class="container">
<div class="breadcrumb-inner">
<li><a href="home.html">Home</a></li>
<li class='active'>Authentication</li>
</ul>
<div class="container">
<div class="row">
?>
</span>
<div class="form-group">
<span>*</span></label>
id="exampleInputEmail1" >
</div>
<div class="form-group">
<span>*</span></label>
id="exampleInputPassword1" >
</div>
Password?</a>
</div>
name="login">Login</button>
</form>
52 | P a g e
</div>
onSubmit="return valid();">
<div class="form-group">
<span>*</span></label>
</div>
<div class="form-group">
<span>*</span></label>
</div>
<div class="form-group">
<span>*</span></label>
53 | P a g e
<input type="text" class="form-control unicase-form-control text-input" id="contactno"
</div>
<div class="form-group">
<span>*</span></label>
</div>
<div class="form-group">
<span>*</span></label>
</div>
id="submit">Sign Up</button>
</form>
Able To : </span>
<div class="checkbox">
<label class="checkbox">
</label>
54 | P a g e
<label class="checkbox"> Track your
orders easily.
</label>
<label class="checkbox">
</label>
</div>
</div>
</div>
<?php include('includes/brands-slider.php');?>
</div>
</div>
<?php include('includes/footer.php');?>
<script src="assets/js/jquery-1.11.1.min.js"></script>
<script src="assets/js/bootstrap.min.js"></script>
<script src="assets/js/bootstrap-hover-dropdown.min.js"></script>
<script src="assets/js/owl.carousel.min.js"></script>
<script src="assets/js/echo.min.js"></script>
<script src="assets/js/jquery.easing-1.3.min.js"></script>
<script src="assets/js/bootstrap-slider.min.js"></script>
<script src="assets/js/jquery.rateit.min.js"></script>
<script src="assets/js/bootstrap-select.min.js"></script>
<script src="assets/js/wow.min.js"></script>
<script src="assets/js/scripts.js"></script>
55 | P a g e
<!-- For demo purposes – can be removed on production -->
<script src="switchstylesheet/switchstylesheet.js"></script>
<script>
$(document).ready(function(){
$(".changecolor").switchstylesheet( { seperator:"color"} );
$('.show-theme-options').click(function(){
});
});
$(window).bind("load", function() {
$('.show-theme-options').delay(2000).trigger('click');
});
</script>
</body>
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['login'])==0)
{ header('location:login.php');
else{
$wid=intval($_GET['del']); if(isset($_GET['del']))
56 | P a g e
$query=mysqli_query($con,"delete from wishlist where id='$wid'");
$id=intval($_GET['id']);
$_SESSION['cart'][$id]['quantity']++;
}else{
$query_p=mysqli_query($con,$sql_p); if(mysqli_num_rows($query_p)!=0){
$row_p=mysqli_fetch_array($query_p);
} else{ }
$message="Product ID is invalid";
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
57 | P a g e
<meta name="author" content="">
<title>My Wishlist</title>
title="Orange color">
58 | P a g e
<link rel="stylesheet" href="assets/css/font-awesome.min.css">
href='http://fonts.googleapis.com/css?family=Roboto:300,400,500,700' rel='stylesheet'
type='text/css'>
</head>
<body class="cnt-home">
<header class="header-style-1">
<?php include('includes/top-header.php');?>
<?php include('includes/main-header.php');?>
============================================== -->
<?php include('includes/menu-bar.php');?>
</header>
<div class="breadcrumb">
<div class="container">
<div class="breadcrumb-inner">
59 | P a g e
<ul class="list-inline list-unstyled">
<li><a href="home.html">Home</a></li>
<li class='active'>Wishlish</li>
</ul>
<div class="container">
<div class="row">
<div class="table-responsive">
<table class="table">
<thead>
<tr>
Index.html
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Favicon-->
<head>
<body>
<!-- Navigation-->
61 | P a g e
href="#">Home</a></li>
</ul>
</li>
</ul>
<div class="text-center">
Product name->
62 | P a g e
$40.00-$80.00
</div>
</div>
options</a></div>
</div>
</div>
</div>
0.5rem">Sale</div>
<!-Product image->
<img
class="card-img-top"
src="https://dummyimage.com/450x300/dee2c6/6c757d.jpg" alt=""/
63 | P a g e
<!--Product details->
<div class="text-center">
<-Product reviews->
<div class="bi-star-fill"></div>
<div class="bi-star-fill"></div>
<div class="bi-star-fill"></div>
<div class="bi-star-fill"></div>
<div class="bi-star-fill"></div>
</div>
$18.00
</div>
</div>
cart</a></div>
</div>
</div>
</div>
0.5rem">Sale</div>
<img class="card-img-top"
?>
<tr>
<td class="col-md-2"><img
src="admin/productimages/<?php echo htmlentities($row['pid']);?>/<?php echo
htmlentities($row['pimage']);?>" alt="<?php echo htmlentities($row['pname']);?>" width="60"
height="100"></td> <td class="col-md-6"> <div class="product-name"><a href="product-
details.php?pid=<?php echo htmlentities($pd=$row['pid']);?>"><?php echo
htmlentities($row['pname']);?></a></div>
$num=mysqli_num_rows($rt);
{ ?> rate"></i>
<div
class="rating">
</div>
<?php } ?>
66 | P a g e
<div class="price">Rs. <?php echo
htmlentities($row['pprice']);?>.00
</td>
</div>
<span>$900.00</span>
<td class="col-md-2">
</td>
wishlist.php?del=<?php
</td>
</tr>
<tr>
</tr>
<?php } ?>
</tbody>
</table>
</div>
67 | P a g e
</div><!-- /.sigin-in-->
<?php include('includes/brands-slider.php');?>
</div>
</div>
<?php include('includes/footer.php');?>
<script src="assets/js/jquery-1.11.1.min.js"></script>
<script src="assets/js/bootstrap.min.js"></script>
<script src="assets/js/bootstrap-hover-dropdown.min.js"></script>
<script src="assets/js/owl.carousel.min.js"></script>
<script src="assets/js/echo.min.js"></script>
<script src="assets/js/jquery.easing-1.3.min.js"></script>
<script src="assets/js/bootstrap-slider.min.js"></script>
<script src="assets/js/jquery.rateit.min.js"></script>
<script src="assets/js/bootstrap-select.min.js"></script>
<script src="assets/js/wow.min.js"></script>
<script src="assets/js/scripts.js"></script>
<script src="switchstylesheet/switchstylesheet.js"></script>
<script>
$(document).ready(function(){
$(".changecolor").switchstylesheet( { seperator:"color"} );
$('.show-theme-options').click(function(){
});
68 | P a g e
});
$(window).bind("load", function() {
$('.show-theme-options').delay(2000).trigger('click');
});
</script>
</body>
</html>
<div class="text-center">
$25.00
</div>
</div>
69 | P a g e
<div class="text-center"><a class="btn btn-outline-dark mt-auto" href="#">Add
cart</a></div>
</div>
</div>
</div>
<!--Product image->
<img
class="card-img-top"
<div class="text-center">
540.00
70 | P a g e
<div>
</div>
<Product actions-->
and/div>
</div>
<div>
</div>
13mm Sale</div>
<!--Product image->
<img
71 | P a g e
class="card-img-top
60
<div class="text-center">
<!--Product name->
<h5 class="fw-bolder">Sale Item</h5>
<Product price-->
$25.00
</div>
</div>
<!-Product actions->
cart</a></div>
</div>
</div>
</div>
72 | P a g e
<div class="col mb-5">
<img
class="card-img-top"
61
https://dummyimage.com/450x300/dee2e6/6c757d.jpg" alt="..." />
<div class="text-center">
$120.00-$280.00
</div>
</div>
<!--Product actions-->
$18.00
</div>
</div>
73 | P a g e
<div class="card-footer p-4 pt-0 border-top-0 bg-transparent">
to cart</a></div>
</div>
</div>
</div>
<img
class="card-img-top"
63
<div class="text-center">
<div class="bi-star-fill"></div>
74 | P a g e
<div class="bi-star-fill"></div>
<div class="bi-star-fill"></div>
<div class="bi-star-fill"></div>
<div class="bi-star-fill"></div>
$40.00
</div>
</div>
<Product actions-->
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Footer->
75 | P a g e
</footer>
<script
"https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/js/bootstrap.bundle.min.js"></script>
<script src="js/scripts.js"></script>
</body>
<html>
Orders.js
<yle>
fumi modal modal-content.modal-footer, #uni modal modal-content modal-header
display:none;
1
style>
<div class="container-fluid">
<div class="row">
<span class="float-right">
<span aria-hidden="true">×</span>
76 | P a g e
</button>
</span>
</h3>
</div>
<div class="form-group">
required>
</div>
<div class="form-group">
if(strlen($_SESSION['login'])==0)
{ header('location:login.php');
} else{
?>
<!DOCTYPE html> <html lang="en"> <head> modal modal-content.modal-footer, #uni
modal modal-content modal-header
77 | P a g e
display:none ;
sple
div class="container-fluid">
<div class="row">
<span class="float-right">
<span aria-hidden="true">×</span>
</button>
</span>
</h3>
</div>
78 | P a g e
<div class="form-group">
required>
</div>
<div class="form-group">
</div>
<div class="form-group">
</div>
<div class="form-group">
<option>Male</option>
<option>Female</option>
</select>
</div>
</div>
79 | P a g e
<div class="col-lg-7">
<div class="form-group">
name="default_delivery_address"></textarea>
<textarea
class="form-control
form"
rows=3
66
</div>
<div class="form-group">
de"form-group">
display:none;
<style>
<div class="container-fluid">
<form action="" id="registration">
80 | P a g e
<div class="row">
<span class="float-right">
<span aria-hidden="true">×</span>
</button>
</span>
</h3>
<hr>
</div>
</div>
<div class="form-group">
</div>
<div class="form-group">
81 | P a g e
<select name="gender" id="" class="custom-select select" required> <option>Male</option>
<option>Female</option>
</select>
</div>
</div>
<div class="col-lg-7">
<div class="form-group">
name="default_delivery_address"></textarea>
<textarea
class="form-control
form"
rows=3
70
</div>
<div class="form-group">
display:none;
<style>
82 | P a g e
div class="container-fluid">
<div class="row">
43 class="text-center">Create New Account
<span class="float-right">
<span aria-hidden="true">×</span>
</button>
</span>
<h3>
<br>
</div>
<div class="form-group">
required>
</div>
<div class="form-group">
modal modal-content.modal-footer,#uni modal.modal-content modal-header
83 | P a g e
display:none;
<style>
div class="container-fluid">
<div class="row">
<span class="float-right">
<span aria-hidden="true">×</span>
</button>
</span>
<h3>
<br>
</div>
<div class="form-group">
84 | P a g e
required>
</div>
<div class="form-group">
</div>
<div class="form-group">
<div class="form-group">
<option>Male</option>
<option>Female</option>
</select>
</div>
</div>
<div class="col-lg-7">
<div class="form-group">
me="default_delivery_address"></textarea>
85 | P a g e
<textarea
class="form-control
form"
rows="3"
73
</div>
<div class="form-group">
required> </div>
</div>
</div>
</div>
</form>
<div>
<script>
$(function(){
$(login-show').click(function(){
86 | P a g e
uni_modal("", "login.php")
))
$('#registration').submit(function(e) {
e.preventDefault();
start_loader()
if($('.err-msg').length > 0)
('.err-msg').remove();
$.ajax({
url:base_url+"classes/Master.php?f=register",
method: "POST",
data:$(this).serialize(),
dataType:"json",
error:err=>{
console.log(err)
alert toast("an error occured" 'error')
end_loader()
success: function(resp) {
setTimeout(function(){
location.reload()
87 | P a g e
1,2000)
var_err_el = $('<div>')
$("[name="password"]").after(_err_el)
end_loader()
}else{
console.log(resp)
end_loader()
})
})
))
Sirip</div>
</div>
</div>
88 | P a g e
</div>
</form>
<div>
<script>
$(function(){
$(login-show').click(function(){
uni_modal("", "login.php")
))
$('#registration').submit(function(e) {
e.preventDefault();
start_loader()
if($('.err-msg').length > 0)
('.err-msg').remove();
$.ajax({
url:base_url+"classes/Master.php?f=register",
method: "POST",
data:$(this).serialize(),
dataType:"json",
error:err=>{
</div>
89 | P a g e
<div class="form-group">
</div>
<div class="form-group">
<option>Male</option>
<option>Female</option>
</select>
</div>
</div>
<div class="col-lg-7">
<div class="form-group">
me="default_delivery_address"></textarea>
<textarea
class="form-control
form"
rows="3"
90 | P a g e
73
</div>
<div class="form-group">
display:none;
<style>
div class="container-fluid">
<div class="row">
<span class="float-right">
<span aria-hidden="true">×</span>
</button>
</span>
<h3>
<br>
</div>
91 | P a g e
<div class="row align-items-center h-100">
required>
</div>
<div class="form-group">mquired>
</div>
<div class="form-group">
</div>
<div class="form-group">
<option>Male</option>
<option>Female</option>
</select>
</div>
92 | P a g e
</div>
<div class="col-lg-7">
<div class="form-group">
<textarea
class="form-control
form"
rows=3
70
</div>
<div class="form-group">
<meta charset="utf-8">
<title>Order History</title>
93 | P a g e
<link rel="stylesheet" href="assets/css/main.css">
<link
href='http://fonts.googleapis.com/css?family=Roboto:300,400,500,700' rel='stylesheet'
type='text/css'>
94 | P a g e
if(popUpWin)
if(!popUpWin.closed) popUpWin.close();
popUpWin = open(URLStr,'popUpWin',
'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizabl
e=no,copyhistory=yes,width='+600+',height='+600+',left='+left+',
top='+top+',screenX='+left+',screenY='+top+'');
</script>
</head>
<body class="cnt-home">
<!-- ==============================================
<header class="header-style-1">
<?php include('includes/top-header.php');?>
<?php include('includes/main-header.php');?>
<?php include('includes/menu-bar.php');?>
</header>
<div class="breadcrumb">
<div class="container">
<div class="breadcrumb-inner">
95 | P a g e
<ul class="list-inline list-unstyled">
<li><a href="#">Home</a></li>
</ul>
<div class="container">
<div class="shopping-cart">
<div class="table-responsive">
<thead>
<tr>
Name</th>
unit</th>
96 | P a g e
<th class="cart-sub-total item">Shipping
Charge</th>
Method</th>
Date</th>
</tr>
<tbody>
pname,products.id as proid,orders.productId as
<div class="shopping-cart">
<div class="table-responsive">
<thead>
<tr>
Name</th>
97 | P a g e
<th class="cart-qty item">Quantity</th>
unit</th>
Charge</th>
Method</th>
Date</th>
</tr>
<tbody>
$cnt=1;
while($row=mysqli_fetch_array($query))
?>
<tr>
98 | P a g e
<td class="cart-image">
<a class="entry-thumbnail"
href="detail.html">
</a>
</td>
$row['opid'];?>">
</td>
<td class="cart-product-quantity">
</td>
(($qty*$price)+$shippcharge);?></td>
99 | P a g e
<td>
Track</td>
</tr>
</div>
</div>
</form>
<!-- ==============================================
BRANDS CAROUSEL
============================================== -->
<?php include('includes/footer.php');?>
<script src="assets/js/jquery-1.11.1.min.js"></script>
<script src="assets/js/bootstrap.min.js"></script>
<script src="assets/js/bootstrap-hover-dropdown.min.js"></script>
100 | P a g e
<script src="assets/js/owl.carousel.min.js"></script>
<script src="assets/js/echo.min.js"></script>
<script src="assets/js/jquery.easing-1.3.min.js"></script>
<script src="assets/js/bootstrap-slider.min.js"></script>
<script src="assets/js/jquery.rateit.min.js"></script>
<script src="assets/js/bootstrap-select.min.js"></script>
<script src="assets/js/wow.min.js"></script>
<script src="assets/js/scripts.js"></script>
<script src="switchstylesheet/switchstylesheet.js"></script>
<script>
$(document).ready(function(){
$(".changecolor").switchstylesheet( { seperator:"color"} );
$('.show-theme-options').click(function(){
});
});
$(window).bind("load", function() {
$('.show-theme-options').delay(2000).trigger('click');
});
</script>
</body>
</html>
101 | P a g e
<?php } ?>
include('includes/config.php');
if(strlen($_SESSION['login'])==0)
{ header('location:login.php');
} else{
if(isset($_POST['update']))
$name=$_POST['name'];
id='".$_SESSION['id']."'");
$num=mysqli_fetch_array($sql); if($num>0)
102 | P a g e
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>My Account</title>
103 | P a g e
<link rel="stylesheet" href="assets/css/rateit.css">
<link
href='http://fonts.googleapis.com/css?family=Roboto:300,400,500,700' rel='stylesheet'
type='text/css'>
if(document.chngpwd.cpass.value=="")
else if(document.chngpwd.newpass.value=="")
104 | P a g e
}
else if(document.chngpwd.cnfpass.value=="")
} return true; }
</script>
</head>
<body class="cnt-home">
<header class="header-style-1">
<?php include('includes/main-header.php');?>
============================================== -->
<?php include('includes/menu-bar.php');?>
</header>
105 | P a g e
<!-- ============================================== HEADER :
<div class="breadcrumb">
<div class="container">
<div class="breadcrumb-inner">
<li><a href="#">Home</a></li>
<li class='active'>Checkout</li>
</ul>
<div class="container">
<div class="row">
<div class="col-md-8">
<div class="panel-heading">
<h4 class="unicase-checkout-title">
106 | P a g e
<span>1</span>My Profile
</a>
</h4>
</div>
<div class="panel-body">
<div class="row">
<h4>Personal info</h4>
<?php
while($row=mysqli_fetch_array($query))
?>
<div class="form-group">
<label class="info-title"
for="name">Name<span>*</span></label> <input
name="name" required="required">
</div>
107 | P a g e
<div class="form-group"> <label class="info-title" for="exampleInputEmail1">Email
$row['email'];?>" readonly>
</div>
<div class="form-group">
</div>
</form>
<?php } ?>
</div>
</div>
</div>
</div>
108 | P a g e
<!-- checkout-step-02 --> <div
step-02">
<div class="panel-heading">
<span>2</span>Change Password
</a>
</h4>
</div>
<div class="panel-body">
<div class="form-group">
</div>
<div class="form-group">
</div>
109 | P a g e
<div class="form-group">
</div>
page-button">Change </button>
</form>
</div>
</div>
</div>
</div>
<?php include('includes/myaccount-sidebar.php');?>
<?php include('includes/brands-slider.php');?>
</div>
</div>
<?php include('includes/footer.php');?>
<script src="assets/js/jquery-1.11.1.min.js"></script>
<script src="assets/js/bootstrap.min.js"></script>
<script src="assets/js/bootstrap-hover-dropdown.min.js"></script>
<script src="assets/js/owl.carousel.min.js"></script>
110 | P a g e
<script src="assets/js/echo.min.js"></script>
<script src="assets/js/jquery.easing-1.3.min.js"></script>
<script src="assets/js/bootstrap-slider.min.js"></script>
<script src="assets/js/jquery.rateit.min.js"></script>
<script src="assets/js/bootstrap-select.min.js"></script>
<script src="assets/js/wow.min.js"></script>
<script src="assets/js/scripts.js"></script>
<script src="switchstylesheet/switchstylesheet.js"></script>
<script>
$(document).ready(function(){
$(".changecolor").switchstylesheet( { seperator:"color"} );
$('.show-theme-options').click(function(){
});
});
$(window).bind("load", function() {
$('.show-theme-options').delay(2000).trigger('click');
});
</script>
</body>
</html>
<?php } ?>
111 | P a g e
4.2 TESTING APPROACH
Software testing is a critical element of software quality assurance and represents the ultimate review
of specification, design and coding. In fact, testing is the one step in the software engineering process
that could be viewed as destructive rather than constructive.
UNIT TESTING
Unit testing focuses verification effort on the smallest unit of software design, the module. The unit
testing we have is white box oriented and some modules the steps are conducted in parallel.
WHITE BOX TESTING
This type of testing ensures that
* All independent paths have been exercised at least once
* All logical decisions have been exercised on their true and false sides
This type of testing selects the path of the program according to the location of definition and use of
variables. This kind of testing was used only when some local variable were declared. The definition-
use chain method was used in this type of testing. These were particularly useful in nested statements.
LOOP TESTING
* In this type of testing all the loops are tested to all the limits possible. The following exercise was
adopted for all loops:
* All the loops were tested at their limits, just above them and just below them.
* All the loops were skipped at least once.
* For nested loops test the inner most loop first and then work outwards
112 | P a g e
INTEGRATION TESTING
Established technique of flow graph with Cyclomatic complexity was used to derive test cases for all
the functions. The main steps in deriving test cases were:
Use the design of the code and draw correspondent flow graph.
Determine the Cyclomatic complexity of resultant flow graph, using formula:
V(G)=E-N+2 or
V(G)=P+1 or
V(G)=Number Of Regions
Where V(G) is Cyclomatic complexity
113 | P a g e
Chapter 5
114 | P a g e
115 | P a g e
116 | P a g e
117 | P a g e
118 | P a g e
119 | P a g e
5.2 Future Scope
The following section describes the work that will be implemented with future releases of E- commerce
websites System.
• Enhance User Interface by adding more user interactivefeatures. Provide Deals and promotional
• Offer details to home page. Provide product of the week/ day to home page .
• Payment Options : Add different payment options such as online , cart , cash etc .
• Oder process Estimate: Provide customer a visual graphical order status bar .
120 | P a g e
CHAPTER 6
Conclusion
The E- commerce website system has been computed successfully and was also tested successfully by taking
“ Test Cases “ . It is user friendly, and has required options, which can be utilized by the the user to perform
the desried operations.
E- commerce website system is developed using HTML, CSS, JS as front end and PHP, MYSQL as back end on
windows environment.
• User friendly
121 | P a g e
CHAPTER 7
References
• Microsoft SQL server : Abeginner’s guide , seventh Edition Book by Dusan petkovic • Microsoft SQL
• W3 Schools http://www.w3schools.com/
www.youtube.com
122 | P a g e