You are on page 1of 50

A

Project Report
ON

“Clothes Shopping Website”

Submitted to
G H RAISONI INSTITUTE OF ENGINEERING & TECHNOLOGY,
Nagpur

In partial fulfillment for the requirement of the degree of


Master in Computer Application

Submitted by
Shweta Choudhary
Isha Loharkar
(MCA I Year, Semester II)

Guided by
Prof Sandhya Dahake
(Asst. Professor, Dept. of Computer Application, GHRIET, Nagpur)

Department of Computer Application


G H RAISONI INSTITUTE OF ENGINEERING & TECHNOLOGY
(Approved by AICTE, New Delhi and Recognized by DTE, Maharashtra)
An Autonomous Institute Affiliated to Rashtrasant Tukadoji Maharaj Nagpur University, Nagpur
Accredited by NAAC with A+ Grade
Email: - ghrietn@raisoni.net Web: - www.ghrietn.raisoni.net

Session 2021-2022
G. H. Raisoni Institute of Engineering & Technology, Nagpur
Department of Computer Application
2021-22

CERTIFICATE
This is to certify that the project dissertation titled as “Clothes Shopping
Website” has been submitted by Shweta Choudhary and Isha Loharkar in partial
fulfillment for the requirement of the degree of Master in Computer Applications
(MCA). This is an original work carried out by them under the guidance of Prof
Sandhya Dahake and she have undergone the requisite hours of project work as
specified by GHRIET, Nagpur.

Prof Sandhya Dahake


Asst. Professor, MCA Dept. Prof. Sandhya Dahake
GHRIET, Nagpur HOD, MCA Dept.
GHRIET, Nagpur

Dr. Vivek Kapur


Director,
GHRIET, Nagpur

(External Examiner)

Date –
Place – Nagpur
G. H. Raisoni Institute of Engineering & Technology, Nagpur
Department of Computer Application
2021-22

ACKNOWLEDGEMENT

We wish to thank our project guide Prof Sandhya Dahake for her
supervision and guidance in the development of this project.

We also extend our gratitude to our Principal, Dr. Vivek Kapur and
Head of Department Prof. Sandhya Dahake for her support.

We also thanks to our teachers and friends for their support in


developing this project.

Isha Loharkar
Shweta Choudhary
MCA Dept, GHRIET,
Nagpur
4

INDEX

CHAPTE
R TITLE PAGE
NO.
NO.
INTRODUCTION
1.1 Problem Definition 5
1.2 Overview of the present working system 5
1. 1.3 Drawbacks of the present working system 6
1.4 Overview of proposed system 6
1.5 Advantages of the proposed system 7
1.6 Scope of proposed system 7
SYSTEM ANALYSIS
2.1 Identification of Need 8
2.2 Preliminary Investigation 8
2.3 Feasibility Study 9
 Economic Feasibility 9
2.  Operational Feasibility 9
 Technical Feasibility 9
2.4 Project Planning 9
2.5 Software requirement 10
2.6 Entity Relationship Diagram 11
SYSTEM DESIGN (Whatever applicable)
3.1 Modularisation details 12
3.2 Database Design 13
16
3. 3.3 Data Dictionary
15
3.4 Data Flow Diagram 17
3.5 System Flowchart 19

4. CODING: Source Code 20


SYSTEM TESTING
5.1 Program Testing 35
5. 5.2 Module Testing 35
37
5.3 Integration Testing
38
5.4 System Testing
INPUT\OUTPUT SCREENS AND REPORTS
6. 6.1 Sample Input\Output Screens 39
6.2 Reports 47
LIMITATIONS AND FUTURE SCOPE
7. 7.1 Limitations of the System 48
7.2 Future Scope of the System 48
8. CONCLUSION 49
5

9. REFERENCES 50

CHAPTER 1

INTRODUCTION

1.1 Problem Definition

There are a lot of websites on internet whereby it offer a variety of product and services for
consumer can find and buy through online such as shoe, apparel, sun glasses and more Moreover,
the online also provides some of the services which is paying bill online, booking a transport ticket
and more. In this research, we are looking the problem addressed in this research which is the view
of online shopping by consumer.

However, there are several reason hinder in the consumer are involved in online shopping because
some of the consumer are not willing to take part in online purchased due to the valid reason because
there are worried about the quality of the product in online are not durable, moreover, there are not
confident.

This projects aims to develop an online shopping for customers with the goal so that it is very easy
to shop your loved things from an extensive number of online shopping sites available on the web.
With the help of this you can carry out an online shopping from your home. Here is no compelling
reason to go to the crowed stores or shopping centers during festival seasons. You simpy require a
PC or a laptop and one important payment sending option to shop online.To get to this online
shopping system all the customers will need to have an email and password to login and proceed
your shopping.

1.1 Overview of The Present Working System

The current system for shopping is to visit the shop manually and from the available product
choose the item customer want and buying the item by payment of the price of the item. There are
large numbers of commercial Online Shopping websites offering large number of products tailored
6

To meet the shopping interests of large number of customers. These online marketplaces have
thousands of products listed under various categories.

1.2 Drawbacks of The Present Working System

 The basic problems with the existing systems are the non-interactive environment they provide to
the users.
 The use of traditional user interfaces which make continuous post backs to the server; each post
back makes a call to the server, gets the response and then refreshes the entire web form to display
the result. This scenario adds an extra trade off causing a delay in displaying the results
 A search engine that would display the results without allowing the users to further filter the
results based on various parameters.
 Use of traditional and non user friendly interfaces that are hard to use.

1.4 Overview of The Proposed System

 The motive of this Online Shopping Website is to allow the user to play with the search tool and
create different combinatorial search criterion to perform exhaustive search.
 Making this website enabled gets rid of these unnecessary delays letting the user to perform
exhaustive search. The users of this website can easily feel the difference between the empowered
user interfaces vs. traditional user interfaces.
 Provide Interactive interface through which a user can interact with different areas of website
easily.
 A search engine that provides an easy and convenient way to search for products specific to their
needs. The search engine would list a set of products based on the search term and the user can
further filter the list based on various parameters.
 Provide Drag and Drop feature thereby allowing the user to add products to or remove products
from the shopping cart by dragging the products in to or out of the shopping cart.
7

1.5 Advantages of the Proposed System

 The main advantage of this website is that it saves time.


 By making product available online it saves energy and fuel as the customer need not to go outside
for purchasing.
 Its important advantage is that it is available 24/7 and customer can shop anytime they want.
 Comparision of the prices can be done by the customers.
 It is easy to search any product the customer want to buy.
 The customer don’t have to wait in the lines and whoever is too ashamed to buy can buy easily.

1.6 Scope of the Proposed System

 The current system can be extended to allow the users to create accounts and save products in to
wish list.
 The users could subscribe for price alerts which would enable them to receive messages when
price for products fall below a particular level.
 The current system is confined only to the shopping cart process. It can be extended to have an
easy to use check out process.
 Users can have multiple shipping and billing information saved. During checkout they can use the
drag and drop feature to select shipping and billing information.
8

CHAPTER 2

SYSTEM ANALYSIS

2.1 Identification of Need

As the goal of the application is ease of use and to provide an interactive interface, extensive
research has been done to gain an insight into the needs and behaviors of various users. The
working of the application is made convenient and easy to use for the end user

The user should be able to read the customer reviews for the product and the ratings provided.
They should be able to write their own reviews. They should be able to print out the specifications
for a product or email the product page to a friends etc. To increase the ease of use the user should
be able to add a product to the shopping cart by dragging a product and dropping it in the shopping
cart. A user should able to edit the contents of a shopping cart. They should be able to update the
quantities of the products added to the cart and remove the products from the cart. The user should
be able to remove the product from the shopping cart by dragging the product and dropping it
outside the cart.

2.2 Preliminary Investigation

While designing Clothing Shopping Website the essential step was to study primary requirements
of customer. Too much effort was done in this step. We personally interrogated with some the
shop owners to know their problem with the existing system. After collecting enough data we
started work on the system. Preliminary investigation in this project includes different finding
techniques.

 We used short questionnaires, interview with the customer and the owner of the job.
 We also did the onsite observation. We visited to the shops and saw the factors that will be require
in our project.
9

2.3 Feasibility Study

 Economic Feasibility

The project is economically feasible as the only cost involved is having a computer with
the minimum requirements mentioned earlier. For the users to access the application, the only cost
involved will be in getting access to the Internet.

 Operational Feasibility

This website is operationally feasible as the user can easily buy the clothes at home
instead of physically visiting the shop.
It provides the detailed information about the clothes.
The user can easily add product to the cart for purchasing the product.

 Technical Feasibllity

This project is technically feasible as the languages that are required for making this
project is HTML, CSS and JS for frontend and PHP for backend.
HTML is a hypertext markup language which consists of basic tags and it is very convinent
language to build the frontend.
CSS and JS are used along with HTML to make the website more attractive.
While PHP is a hypertext preprossor language which helps us to built the logic very easily.

2.4 Project Planning

The project planning started before work on actual project begins and continues
throughout the life cycle of the project. The main goal of the project planning is to plan the time,
cost and resources needed for the project and thus minimize risk. The main output of the project
planning process is the project plan which includes the project schedule as well as various
supporting plans. So while making this project we decided the timeline that in how much time we
10

Will require to make this project. So the timeline was of 25 days. In first 5 days we will work on
the database section and the login module with forget password, sign up and reset password in
project. After that from day 6 to 10 we decided to work on admin module of the project where the
admin can easily add new products or can edit details where most of the difficulties were found.
After that from day 11 to 20 we worked on the the main module of the project that is the user
module where user can access or view products. This is the final module where we are going to
perform all the activities of the project. After that from day 21 to 23 we will work on the testing
section of the project where testing of all the modules will be done. If any problem will occur in
any of the module we will fix this problem in day number 24 to 25 and implement it.

2.5 Software Requirement

Software:
Visual Code Editor
Xampp
Hardware:
Processor Intel core i3 Graphics 2GB
Ram 8 GB Screen 15.6inch
System type 64-bit operating system,
X64-based processor
11

2.6 Entity Relationship Diagram


12

CHAPTER 3
SYSTEM DESIGN

3.1 Modularisation Details

In this system, Users can register using personal details and user and login after it. User can
chose particular category of clothes with sub category and then user can add to cart the product
they want to buy and can purchase it. User can also wishlist the product they liked.

 Modules
 Admin
 Login: Admin can login itself.
 Manage Users: Admin can manage the users.
 Manage Products: Admin can add, update and delete products.
 Manage Order: Admin can manage the orders

 Users
 Register: User can register with the personal details.
 Login: User can login with user id and password.
 Order: User can place the order as much as they want.
 Cart: User can add the products in the cart.
 Wishlist: User can wishlist the product they want to save.

3.2 Database Design


13

 Front end interface

In front end interface we have first designed the front end and completed designing in
visual code with the help of html, css and javascript. In this website we have created two login
credentials .First is user login credential and another is admin login credentials. Administrators has
the authority to select, insert, update and delete the products and the user has the right to access it.

 Stored Procedure

After creating the front end interfaces, we created the database with the help of insert,
update and delete query.
We can run it directly with the query.
We have created stored procedure inserting all the table with the value type.

 Data Access Layer


14

Introduction
The goal of this is to design a Data Abstraction Layer (DAL) in PHP that will allow us to ignore
the intricacies of MySQL and focus our attention on our Application Layer and Business Logic.
Hopefully, by the end of this guide, you will have a working DAL and learn a little about PHP,
MySQL, and Object-Oriented design in the process.

Assumption
You know PHP and have is set up.
You know MySQL and have it set up.
You have a cursory knowledge of object-oriented methodologies.
You are not a smacktard.

Defining the Project


The purpose of this project is to create a working MySQL DAL to distance ourselves from the
menial tasks that are associated with PHP/MySQL systems, such as passing around connection
handles and iterating through result sets. We will create an object which will create and maintain
our connection to our database, provide us with the tools necessary to perform all of our required
SQL queries, properly handle errors, tidily present our data, and keep our application code clean.

Defining the Object


Our Database object will consist of local variables, a constructor, mutators, and methods. We will
leave out destructor and scoping from the database class, in order to maintain compatibility with
PHP4.

3.3 Data Dictionary


15

A Data Dictionary is a collection of names, definitions, and attributes about data elements that are
being used or captured in a database, information system, or part of a research project. It describes
the meanings and purposes of data elements within the context of a project, and provides guidance
on interpretation, accepted meanings and representation. A Data Dictionary also provides metadata
about data elements. The metadata included in a Data Dictionary can assist in defining the scope
and characteristics of data elements, as well the rules for their usage and application. 

Why Use a Data Dictionary?

Data Dictionaries are useful for a number of reasons. In short, they:

 Assist in avoiding data inconsistencies across a project


 Help define conventions that are to be used across a project
 Provide consistency in the collection and use of data across multiple members of a research team
 Make data easier to analyze
 Enforce the use of Data Standards.

Data Dictionary:

Name Null? Type Description

Username No Varchar(255) User Name of the admin


Password No Varchar(255) For the admin
Category Name No Varchar(255) Name of the category
Category Description No Varchar(255) Description of the category
User ID No Number Primary Key
Product ID No Number Primary Key
Quantity No Number Quantity of product
Order Date No Date Date of Order
Payment Method No Varchar(255) Payment Method
Order Status No Varchar(255) Status Order
Order ID No Number Primary Key
Status No Varchar(255) Status of Order
Remark No Varchar(255) Remark of Order
Price No Number Price of product
16

Value No Number Value


Name No Varchar(255) Name of the reviewer
Summary No Varchar(255) Summary of the reviewer
Review No Varchar(255) Review of the product
Review Date No Date Date of the review
Sub-Category No Number Number of sub-category
Product Name No Varchar(255) Name of the product
Product Company No Varchar(255) Name of the Company
Product Price No Number Price of the product
Product Price before discount No Number Product Price before discount
Product Description No Varchar(255) Description of the product
Product Price after discount No Number Product Price after discount
ProductImage1 No Varchar(255) First image of the product
ProductImage2 No Varchar(255) Second image of the product
ProductImage3 No Varchar(255) Third image of the product
Shipping Charge No Int(11) Charge of shipping
ProductAvailability No Varchar(255) Availabilityof Product
PostingDate No Timestamp Date of posting
UpdatingDate No Varchar(255) Date of Updating
Useremail No Varchar(255) Email of the user
LoginTime No Timestamp Time of login
Logout No Timestamp Time of logout
Contactno No Number Mobile number of user
ShippingAddress No Varchar(255) Address for shipping
Shippingstate No Varchar(255) State for shipping
Shippingcity No Varchar(255) City for shipping
ShippingPincode No Number Pincode for shipping
BillingAddress No Varchar(255) Address for Billing
Billingstate No Varchar(255) State for Billing
Billingcity No Varchar(255) City for Billing
BillingPincode No Number Pincode for Billing
regDate No Timestamp Date for registor
UpdationDate No Varchar(255) Date for updation
PostingDate No Timestamp The item in wishlist

3.4 Data Flow Diagram


17

0 Level DFD

USER

1 Level DFD
18

ADMIN

1Level DFD
19

3.4 System Flowchart


20

CHAPTER 4
CODING
index.php
<?php
session_start();
nclude('includes/config.php');
if(isset($_GET['action']) && $_GET['action']=="add"){
    $id=intval($_GET['id']);
    if(isset($_SESSION['cart'][$id])){
        $_SESSION['cart'][$id]['quantity']++;
    }else{
        $sql_p="SELECT * FROM products WHERE id={$id}";
        $query_p=mysqli_query($con,$sql_p);
        if(mysqli_num_rows($query_p)!=0){
            $row_p=mysqli_fetch_array($query_p);
            $_SESSION['cart'][$row_p['id']]=array("quantity" => 1, "price" => $row_p['productPrice']);
         }else{
            $message="Product ID is invalid";
    }
  } `
   echo "<script>alert('Product has been added to the cart')</script>";
        echo "<script type='text/javascript'> document.location ='my-cart.php'; </script>";
}
?>
<!DOCTYPE html>
<html lang="en">
    <head>
        <!-- Meta -->
        <meta charset="utf-8">
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
        <meta name="description" content="">
        <meta name="author" content="">
21

        <meta name="keywords" content="MediaCenter, Template, eCommerce">


        <meta name="robots" content="all">
        <title>The Fashion Gallery</title>
<!-- HEADER : -->
<div class="body-content outer-top-xs" id="top-banner-and-menu">
    <div class="container">
        <div class="furniture-container homepage-container">
        <div class="row">
        <div class="col-xs-12 col-sm-12 col-md-3 sidebar">
    <?php include('includes/side-menu.php');?>
<!-- TOP NAVIGATION : END = -->
            </div>
            <div class="col-xs-12 col-sm-12 col-md-9 homebanner-holder">
                <!-- SECTION – HERO -->
    <div class="headerr">      
<div id="hero" class="homepage-slider3">
    <div id="owl-main" class="owl-carousel owl-inner-nav owl-ui-sm">
        <div class="full-width-slider">
            <div class="item" style="background-image: url(assets/images/sliders/slider1.jpg);>
            </div></div>
        </div>
    </div></div>
            </div>           
        <div id="product-tabs-slider" class="scroll-tabs inner-bottom-vs  wow fadeInUp">
            <div class="more-info-tab clearfix">
               <h3 class="new-product-title pull-left">Featured Products</h3>
              </ul><!-- /.nav-tabs -->
            </div>            <div class="tab-content outer-top-xs">
                <div class="tab-pane in active" id="all">          
                    <div class="product-slider">
                        <div class="owl-carousel home-owl-carousel custom-carousel owl-theme" data-
item="4">
<?php
22

$ret=mysqli_query($con,"select * from products");


while ($row=mysqli_fetch_array($ret))
?>
<div class="item ">
            <div class="products">
            <div class="product">      
        <div class="product-image">
            <div class="image">
                <a href="product-details.php?pid=<?php echo htmlentities($row['id']);?>">
            </div><!-- /.product-price 
        </div><!-- /.product-info -->
                <?php if($row['productAvailability']=='In Stock'){?>
                    <div class="action"><a href="index.php?page=product&action=add&id=<?php echo
$row['id']; ?>" class="lnk btn btn-primary">Add to Cart</a></div>
                <?php } else {?>
                        <div class="action" style="color:red">Out of Stock</div>
                    <?php } ?>
login.php
<?php
session_start();
include('includes/config.php');
// Code user Registration
if(isset($_POST['submit']))
{
$name=$_POST['fullname'];
$email=$_POST['emailid'];
$contactno=$_POST['contactno'];
$password=md5($_POST['password']);
$query=mysqli_query($con,"insertintousers(name,email,contactno,password)
values('$name','$email','$contactno','$password')");
if($query)
{ echo "<script>alert('You are successfully register');</script>";
}else{
23

echo "<script>alert('Not register something went worng');</script>";


}}
// Code for User login
if(isset($_POST['login']))
{
   $email=$_POST['email'];
   $password=md5($_POST['password']);
$query=mysqli_query($con,"SELECT * FROM users WHERE email='$email' and
password='$password'");
$num=mysqli_fetch_array($query);
if($num>0)
{
$extra="my-cart.php";
$_SESSION['login']=$_POST['email'];
$_SESSION['id']=$num['id'];
$_SESSION['username']=$num['name'];
$uip=$_SERVER['REMOTE_ADDR'];
$status=1;
$log=mysqli_query($con,"insertintouserlog(userEmail,userip,status) values('".
$_SESSION['login']."','$uip','$status')");
$host=$_SERVER['HTTP_HOST'];
$uri=rtrim(dirname($_SERVER['PHP_SELF']),'/\\');
header("location:http://$host$uri/$extra");
exit();
}
else
{
$_SESSION['errmsg']="Invalid email id or Password";
exit();
}
}
?>
<!DOCTYPE html>
24

<html lang="en">
    <head>
        <link rel="stylesheet" href="assets/css/main.css">
    
<?php
echo htmlentities($_SESSION['errmsg']);
?>
<?php
echo htmlentities($_SESSION['errmsg']="");
?>
    </span>
        <div class="form-group">
            <label class="info-title" for="exampleInputEmail1">Email Address <span>*</span></label>
            <input type="email" name="email" class="form-control unicase-form-control text-input"
id="exampleInputEmail1" >
        </div>
        <div class="form-group">
            <label class="info-title" for="exampleInputPassword1">Password <span>*</span></label>
         <input type="password" name="password" class="form-control unicase-form-control text-input"
id="exampleInputPassword1" >
        </div>
        <div class="radio outer-xs">
            <a href="forgot-password.php" class="forgot-password pull-right">Forgot your Password?</a>
        </div>
        <button type="submit" class="btn-upper btn btn-primary checkout-page-button"
name="login">Login</button>
    </form>                
</div>
<!-- create a new account -->
<div class="col-md-6 col-sm-6 create-new-account">
    <h4 class="checkout-subtitle">create a new account</h4>
    <p class="text title-tag-line">Create your own Shopping account.</p>
25

    <form class="register-form outer-top-xs" role="form" method="post" name="register"


onSubmit="return valid();">
<div class="form-group">
            <label class="info-title" for="fullname">Full Name <span>*</span></label>
            <input type="text" class="form-control unicase-form-control text-input" id="fullname"
name="fullname" required="required">
               <div class="form-group">
            <label class="info-title" for="exampleInputEmail2">Email Address <span>*</span></label>
            <input type="email" class="form-control unicase-form-control text-input" id="email"
onBlur="userAvailability()" name="emailid" required >
                   <span id="user-availability-status1" style="font-size:12px;"></span>
        </div>

<div class="form-group">
            <label class="info-title" for="contactno">Contact No. <span>*</span></label>
            <input type="text" class="form-control unicase-form-control text-input" id="contactno"
name="contactno" maxlength="10" required >
        </div>

<div class="form-group">
            <label class="info-title" for="password">Password. <span>*</span></label>
            <input type="password" class="form-control unicase-form-control text-input" id="password"
name="password"  required >
        </div>

<div class="form-group">
            <label class="info-title" for="confirmpassword">Confirm Password. <span>*</span></label>
            <input type="password" class="form-control unicase-form-control text-input"
id="confirmpassword" name="confirmpassword" required >
        </div>

        <button type="submit" name="submit" class="btn-upper btn btn-primary checkout-page-button"


id="submit">Sign Up</button>
26

    </form>
    <span class="checkout-subtitle outer-top-xs">Sign Up Today And You'll Be Able To :  </span>
    <div class="checkbox">
        <label class="checkbox">
            Speed your way through the checkout.
        </label>
        <label class="checkbox">
        Track your orders easily.
        </label>
        <label class="checkbox">
 Keep a record of all your purchases.
        </label>
    </div>
</div>  
<!-- create a new account -->           </div><!-- /.row -->
        </div>
</div>
<?php include('includes/footer.php');?>
    <script src="assets/js/jquery-1.11.1.min.js"></script>
 <?php
session_start();
include('includes/config.php');
if(strlen($_SESSION['login'])==0)
  { 
header('location:login.php');
}
else{
    if(isset($_POST['update']))
  {
        $name=$_POST['name'];
        $contactno=$_POST['contactno'];
        $query=mysqli_query($con,"update users set name='$name',contactno='$contactno' where id='".
$_SESSION['id']."'");
27

        if($query)
    {
echo "<script>alert('Your info has been updated');</script>";
    }
  }
if(isset($_POST['submit']))
{
$sql=mysqli_query($con,"SELECT password FROM  users where
password='".md5($_POST['cpass'])."' && id='".$_SESSION['id']."'");
$num=mysqli_fetch_array($sql);
if($num>0)
{
 $con=mysqli_query($con,"update students set password='".md5($_POST['newpass'])."',
updationDate='$currentTime' where id='".$_SESSION['id']."'");
echo "<script>alert('Password Changed Successfully !!');</script>";
}
else
{
    echo "<script>alert('Current Password not match !!');</script>";
}
}
?>
my-cart.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(isset($_POST['submit'])){
        if(!empty($_SESSION['cart'])){
        foreach($_POST['quantity'] as $key => $val){
            if($val==0){
                unset($_SESSION['cart'][$key]);
            }else{
28

                $_SESSION['cart'][$key]['quantity']=$val;

      }
    }
            echo "<script>alert('Your Cart hasbeen Updated');</script>";
    }
  }
    }?> <!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>My Cart</title>
        <link rel="stylesheet" href="assets/css/main.css">
    </head>
    <body class="cnt-home">
  
    <div class="container">
        <div class="breadcrumb-inner">
            <ul class="list-inline list-unstyled">
                <li><a href="#">Home</a></li>
                <li class='active'>Shopping Cart</li>
            </ul>    </div><!-- /.container -->
</div>
<div class="body-content outer-top-xs">
    <div class="container">
        <div class="row inner-bottom-sm">
            <div class="shopping-cart">
                <div class="col-md-12 col-sm-12 shopping-cart-table ">
    <div class="table-responsive">
<form name="cart" method="post">    
<?php
if(!empty($_SESSION['cart'])){
    ?>
29

        <table class="table table-bordered">


            <thead>
                <tr>
                    <th class="cart-romove item">Remove</th>
                    <th class="cart-description item">Image</th>
                    <th class="cart-product-name item">Product Name</th>
                    <th class="cart-qty item">Quantity</th>
                    <th class="cart-sub-total item">Price Per unit</th>
                    <th class="cart-sub-total item">Shipping Charge</th>
                    <th class="cart-total last-item">Grandtotal</th>
                </tr>
      
                        <div class="form-group">
                        <label class="info-title" for="Billing State ">Billing State  <span>*</span></label>
             <input type="text" class="form-control unicase-form-control text-input" id="bilingstate"
name="bilingstate" value="<?php echo $row['billingState'];?>" required>
                      </div>
                      <div class="form-group">
                        <label class="info-title" for="Billing City">Billing City <span>*</span></label>
                        <input type="text" class="form-control unicase-form-control text-input" id="billingcity"
name="billingcity" required="required" value="<?php echo $row['billingCity'];?>" >
                      </div>
 <div class="form-group">
                        <label class="info-title" for="Billing Pincode">Billing Pincode <span>*</span></label>
                        <input type="text" class="form-control unicase-form-control text-input"
id="billingpincode" name="billingpincode" required="required" value="<?php echo
$row['billingPincode'];?>" >
                      </div>

                      <button type="submit" name="update" class="btn-upper btn btn-primary checkout-page-


button">Update</button>
      
                    <?php } ?>
30

    
                        </div>
          
                    </td>
                </tr>
        </tbody><!-- /tbody -->
    </table><!-- /table -->
</div>

<!DOCTYPE html>
<html lang="en">
    <head>
      <title> The Fashion Gallery | Payment Method</title>
    
    <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">
            <ul class="list-inline list-unstyled">
                <li><a href="home.html">Home</a></li>
                <li class='active'>Payment Method</li>
            </ul>
        </div>    </div><!-- /.container -->
<div class="body-content outer-top-bd">
    <div class="container">
        <div class="checkout-box faq-page inner-bottom-sm">
            <div class="row">
                <div class="col-md-12">
31

                    <h2>Choose Payment Method</h2>


                    <div class="panel-group checkout-steps" id="accordion">
                        <!-- checkout-step-01  -->
<div class="panel panel-default checkout-step-01">           <div class="panel-heading">
        <h4 class="unicase-checkout-title">
            <a data-toggle="collapse" class="" data-parent="#accordion" href="#collapseOne">
             Select your Payment Method
            </a>
         </h4>
    </div>
    <!-- panel-heading 
    <div id="collapseOne" class="panel-collapse collapse in">
        <!-- panel-body  -->
        <div class="panel-body">
        <form name="payment" method="post">
        <input type="radio" name="paymethod" value="COD" checked="checked"> Cash On Delivery
<br /><br />
         <input type="submit" value="submit" name="submit" class="btn btn-primary">
        </form>    
                    </div><!-- /.checkout-steps -->
                </div>
            </div><!-- /.row -->
        </div><!-- /.checkout-box 
</div><!-- /.body-content -->
<?php include('includes/footer.php');?>
    <script src="assets/js/jquery-1.11.1.min.js"></script>
        $(document).ready(function(){
            $(".changecolor").switchstylesheet( { seperator:"color"} );
            $('.show-theme-options').click(function(){
                $(this).parent().toggleClass('open');
                return false;
            });
        });
32

        $(window).bind("load", function() {
           $('.show-theme-options').delay(2000).trigger('click');
        });
    </script>
</body>
</html>
<?php } ?> product-details.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(isset($_GET['action']) && $_GET['action']=="add"){
    $id=intval($_GET['id']);
    if(isset($_SESSION['cart'][$id])){
        $_SESSION['cart'][$id]['quantity']++;
    }else{
        $sql_p="SELECT * FROM products WHERE id={$id}";
        $query_p=mysqli_query($con,$sql_p);
        if(mysqli_num_rows($query_p)!=0){
            $row_p=mysqli_fetch_array($query_p);
            $_SESSION['cart'][$row_p['id']]=array("quantity" => 1, "price" => $row_p['productPrice']);
                    echo "<script>alert('Product has been added to the cart')</script>";
        echo "<script type='text/javascript'> document.location ='my-cart.php'; </script>";
        }else{
            $message="Product ID is invalid";
    }
  }
}
$pid=intval($_GET['pid']);
if(isset($_GET['pid']) && $_GET['action']=="wishlist" ){
    if(strlen($_SESSION['login'])==0)
  { 
33

header('location:login.php');
}
else
{
mysqli_query($con,"insert into wishlist(userId,productId) values('".$_SESSION['id']."','$pid')");
echo "<script>alert('Product aaded in wishlist');</script>";
header('location:my-wishlist.php');
}
if(isset($_POST['submit']))
{
    $qty=$_POST['quality'];
    $price=$_POST['price'];
    $value=$_POST['value'];
    $name=$_POST['name'];
    $summary=$_POST['summary'];
    $review=$_POST['review'];
    mysqli_query($con,"insert into productreviews(productId,quality,price,value,name,summary,review)
values('$pid','$qty','$price','$value','$name','$summary','$review')");
}?>
<!DOCTYPE html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Order Tracking Details</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<link href="anuj.css" rel="stylesheet" type="text/css">
</head>
<body><div style="margin-left:50px;">
<form name="updateticket" id="updateticket" method="post">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
</tr>
<tr height="30">
<td  class="fontkink1"><b>order Id:</b></td>
<td  class="fontkink"><?php echo $oid;?></td>
34

</tr>
<?php
$ret = mysqli_query($con,"SELECT * FROM ordertrackhistory WHERE orderId='$oid'");
$num=mysqli_num_rows($ret);
if($num>0)
{
while($row=mysqli_fetch_array($ret))
{
?><?php } }
else{
?>
<tr>
<td colspan="2">Order Not Process Yet</td>
</tr>
<?php  }
$st='Delivered';
$rt = mysqli_query($con,"SELECT * FROM orders WHERE id='$oid'");
while($num=mysqli_fetch_array($rt))
{
$currrentSt=$num['orderStatus'];
}
if($st==$currrentSt)
{ ?>
<tr><td colspan="2"><b>
Product Delivered successfully </b></td>
<?php }?>
</table>
</form>
</div>
</body>
</html>
35

CHAPTER 5
SYSTEM TESTING

5.1 Program Testing

Errors in Website Development can be as trivial as minor typographical error as incorrect


information, improper organization or validation of intellectual property laws. Content Testing
attempt to uncover this and many other problems before the user encounter them.

In Online Clothing Website, program testing is being done on several phases like:
 For login validation if user enters a wrong username or password it will show an error
message. If user leaves any of the field username or password blank it will show waiting
message.
 For sign in code if users leave any of the field blank so program will not allow the user to
create a user in a system.
 While sign up if user enter confirm password and password different so it will show a
warning message.
 If user tries to enter existing user name so it will show a warning message that user already
exist.

 For checkout if user does not enter shipping address it will show a warning message

5.2 Module Testing

Different modules used in this project has been tested individually here.Two modules are used in
this project. They are User and Admin.First the Admin module has been tested.
In Admin module there are four sub modules.They are as follows:
Login, Manage Users, Manage Products, Manage Orders .These four modules have been tested
individually
36

Login Module : The source code of the login was tested that everything written in it is error free
and it is running without any warning error.The logic behind the code is giving the correct output
or not is been also tested.
Manage Users: The source code of the manage users was tested that everything written in it is
error free and it is running without any warning error.The logic behind the code is giving the
correct output or not is been also tested.
Manage Products: The source code of the manage product was tested that everything written in it
is error free and it is running without any warning error.The logic behind the code is giving the
correct output or not is been also tested.
Manage Orders: The source code of the manage orders was tested that everything written in it is
error free and it is running without any warning error.The logic behind the code is giving the
correct output or not is been also tested.

In User module there are five sub modules.They are as follows:


Register Module: The source code of the register was tested that everything written in it is error
free and it is running without any warning error.
Register, Login, Order, Cart, Wishlist .These five modules have been tested individually
Login Module :The source code of the login was tested that everything written in it is error free
and it is running without any warning error.
Order Module: The source code of the order was tested that everything written in it is error free
and it is running without any warning error and is checked.
Cart Module: The source code of the cart was tested that everything written in it is error free and it
is running without any warning error.
Wishlist Module: The source code of the wishlist was tested that everything written in it is error
free and it is running without any warning error.
37

5.3 Integration Testing

In our project we have done integration testing in a bottom up fashion i.e. in this project we have
started construction and testing with atomic modules. After unit testing the modules are integrated
one by one and then tested the system for problems arising from component interaction.

User Module and Admin module has been integrated together and has been tested here.Ater
integrating them we have seen the errors that were coming when both were combined
together.The errors we were facing was recovered here and the testing was done and the modules
have been successfully integrated here.

The following test categories and objective illustrate establish testing

 Interactivity – Are interaction mechanism easy to understand and use

 Layout – Are navigations mechanism, content and function place in a manner that allows

the user to find them quickly

 Readability – Is the text written and under stable

 Aesthetics – Do layout color, typeface and related characterstics lead to easy to use.

 Display Characterstics – Does the website make optimal use of screen size and resolution.

 Time Sensitivity – Can important features, functions and content be used in a timely

method.

 Accessibility – Is the website accessible to people who have disabilities.


38

5.4 System Testing

When a user interacts with the Website, the interaction occurs through one or more interface
mechanisms.

Links – Each link is tested to ensure that the proper content object or function is reached. The web
engineer builds a list of all links associated with interface layout and then execute each individually.

Forms – At the microscopic level, tests are performed to ensure that the labels correctly identified
With The form and that mandatory fields are identified visually for the user.

Client side scripting – Black box tests are conducted to uncover any error in processing as the script
Is Executed. These test are coupled with forms testing because scripts input is often derived from
Data provided as part of form processing.

Dynamic HTML – Each web page that contain dynamic HTML is executes to ensure that the dynamic
Display is correct. In addition compatibility test should be conducted to ensure that the dynamic
HTML Is working properly in the environment.

After integrating the modules the system testing has been done where the system is properly
Working or not has been checked. These four factors has been tested thoroughly.
39

CHAPTER 6
INPUT\OUTPUT SCREENS AND REPORTS

6.1 Sample Input/ Output Screens

Home page
40
41

User signup

Categories
42

Sub Category

Product Detail
43

Add to cart

Shopping Cart
44

Checkout

Payment detail
45

Order Placed

Admin login
46

Manage users
47

6.2 Reports

CHAPTER 7
48

LIMITATIONS AND FUTURE SCOPE

7.1 Limitations of the System

 This website is not been published as we have develop this website only for the learning
purpose that how the website is being developed and it is only for the education purpose.
 A strong internet connection is required for accessing the website.
 In this website if once the order is placed there is no option for the cancellation of the
order.
 This website does not have features by which user can set price ranges for products and
receive alerts once the price reaches the particular range.

7.2 Future Scope of the System

 As this website is not published, it can be extended to the area like all over in Nagpur or all
over in Maharashtra.
 As the system is scalable, more modules can be added as and when required.
 The features that can be modified and added to this system in the future involve its
implementation by local shopkeepers, where shops will be providing an online interface to
customers for shopping and placing orders.
 The current system can be extended to allow the users to create accounts and to review the
product and can be interactive.
 The users could subscribe for price alerts which would enable them to receive messages
when price for products fall below a particular level.
49

CHAPTER 8

CONCLUSION

 The ‘Clothing Shopping Website’ is designed to provide a web based application that
would make searching, viewing and selection of a product easier.
 This Website has been built by using different technologies such as HTML which is known
as Hypertext Markup Language, CSS which is known as Cascading Style Sheets and JS
which is known as Javascript for the frontend development.
 Another Technology that has been used is PHP which is Hypertext Preprocessor which was
used for developing logics and to built backend.
 MyphpAdmin database is also used for storing the data of the website.
 Different modules has been built such as user module and admin module.
 The admin can manage the user and also add new products to the website.
 The user can then view the complete specification of each product. They can also view the
product reviews.
 This project reduces the workload of both the admin and the user and will be very useful
for the ecommerce.

CHAPTER 9
50

REFERENCES

 The Joy of PHP Programming: A Beginner's Guide – by Alan Forbes.

 Learn Dynamic Web Development And DBMS With HTML, CSS, PHP In Dreamweaver CS5
And CS6, MySQL And MS Access 2013 And 2016 (David Max (You?)|2018)

 PHP & MySQL Novice to Ninja – by Kevin Yank.

 HTML5 and CSS3 All-in-One For Dummies – by Andy Harris.

 Head First PHP & MySQL – by Lynn Beighley & Michael Morrison.

 PHP: A Beginner's Guide – by Vikram Vaswani.

 HTML and CSS: Design and Build Websites – by Jon Duckett

 Head First HTML and CSS: A Learner’s Guide to Creating Standards-Based Web Pages – by
Elisabeth Robson & Eric Freeman

 A Smarter Way to Learn HTML & CSS: Learn it faster. Remember it longer – by Mark Myers

 E-Commerce-Strategy, Technologies & Applications by David Whitley, TMH

 PHP for the web:Author Name: Larry Ullman Publisher: Peachpit Press

 Murach's PHP & MySQL – by Joel Murach & Ray Harris.

  Get Coding!: Learn HTML, CSS & JavaScript & Build a Website, App & Game – by Young
Rewired State

 HTML, CSS, and JavaScript All in One: Covering HTML5, CSS3, and ES6, Sams Teach
Yourself – by Julie C. Meloni and Jennifer Kyrin

You might also like