THE require understanding and studying a lot of

THE DESIGN AND IMPLEMENTATION OF AN
E-COMMERCE SITE

 

A
Master’s Project

Presented
to

Department
of Computer and Information Sciences

SUNY
Polytechnic Institute

Utica,
New York

In
Partial Fulfilment of the requirements for the Master of Science Degree

By

Narendhar
Reddy Malgireddy

(U00290594)

December
2017

 

 

 

 

 

 

 

 

THE DESIGN AND IMPLEMENTATION OF AN
E-COMMERCE SITE

Master of Science project in Computer
and Information Sciences

Department of Computer Sciences

SUNY Polytechnic Institute

 

 

Approved and recommended for acceptance as
a project in partial fulfillment of the requirements for the degree of Master
of Science in Computer and Information Sciences

 

 

                                                                                                                                                Date

 

                                                                                                           

Chen-Fu Chiang,
Ph. D. (Adviser)

 

 

                                                                                                                          Jorge Novillo, Ph. D.

 

                                                                                                                             

 

THE DESIGN AND IMPLEMENTATION OF AN
E-COMMERCE SITE

 

Declaration

I
declare that this project is my own work and has not been submitted in any form
for another degree or diploma at any university or other institute of tertiary
education. Information derived from the published and unpublished work of
others has been acknowledged in the text and a list of references is given.

 

 

 

Narendhar
Reddy Malgireddy

         

 

 

 

 

 

 

 

Abstract

 

            The Main goal of the ecommerce website is to sell goods
and services online. There are a lot advantages for taking conventional
business online, this involves eliminating the geographical limitation, gaining
new customers to your business with use of digital marketing, low cost maintenance.
Converting a retail stone online need a proper plan and involves basic understating
in a lot of technologies.

The
main idea of this project is to create a ecommerce website and creating an easy
interface for retailer to take his business online. creating a ecommerce
require understanding and studying a lot of technologies. These include
frontend coding language like html, ROR, database query language like SQL and
backend or server-side scripting language like php, java script. The basic
objective of the ecommerce website is to run a full-fledged website where
customer can buy the items or services by making the payments online. In this
report I will go through the working of the ecom website and thee technologies
used in implementing it

 

 

 

 

 

 

 

Contents
Introduction. 5
Technologies involved: 6
Html 6
PHP: 7
My SQL. 7
Project design. 8
Functional Decomposition Diagram.. 8
Database. 10
User interface: 12
Integrating website and database: 18
Functional
Features. 19
Features of a good ecommerce website. 19
Features included in this website and their functionality. 19
PHP Impact Nominal Index configuration for mail 20
References: 21
 

 

 

 

 

Introduction

E-commerce is fast
gaining widely used business model for taking conventional stores online. More
and more business around the world are moving their business online. It is
reasonable to say that the process of shopping on the web is becoming
commonplace. The basic objective of the ecommerce website is to run a
full-fledged website where customer can buy the items or services by making the
payments online without physical interaction between the vendor and the
customer. The customer can make a purchase over the internet without losing the
comfort of home. An online store is a virtual store on the Internet where
customers can browse the products they are interested in and the customer can
buy thy those products by adding them to cart. At checkout time, customer can
buy those products by making the payment online. Once the payment is successful
they vendor will then ship those brought products to customer at the address
provided by customer during checkout, the customer needs to fill or select a
billing address, a shipping address, a shipping option, and payment information
such as credit card number. A notification will be sent to customer and the vendor
about the order details after the successful checkout.

 

 

 

 

 

Technologies involved:

For the development of
this website mainly four technologies are used.

Html

Html is the markup
language for creating websites.
HTML is the
standard markup language for creating Web pages. HTML stands for Hyper Text Markup Language. HTML describes the structure of Web pages using markup. HTML elements are the building
blocks of HTML pages. HTML elements are represented by
tags.HTML is basically known as interface between internet and web browser. The
web browser reads the markup tags and present as website, most browser allow
users to view the HTML code for the page we are viewing. All websites will have
certain markup tags that are used to pass information to web browser. The
markup tags are surrounded by angled brackets.

Html acts as Skelton for
all the website we see. It gives structure to the websites.

PHP:

PHP (recursive
acronym for PHP: Hypertext
Preprocessor) is a widely-used open source general-purpose scripting
language that is especially suited for web development and can be embedded into
HTML.PHP can be used with html to process the post and get query’s. PHP code is
executed on server to get the results or to post the data on database. After
executing the php code on server, results will be returned to client without
client knowing the underlying code of php

PHP is widely used
server-side language which is used to create shell applications through command
lines. It is used in this project as interface between database and website.
PHP takes the value from HTML and dynamically either stores the data to tables
or change the content of the page accordingly. PHP can also be used to
authenticate the data entered on the webpage like forms, email id’s.

 

My SQL

In this project, MySQL is
used as the database query language. MySQL is an opensource database management
system. Th features of MySQL are

MySQL is a relational
database management system. In relational database data is stored in tables and
each table consists of distinct keys which are used to access the data called
primary keys, primary keys with foreign keys are used to access data across all
the tables. During the creating or specifying the tables primary keys and
foreign keys should be specified. It is fast, reliable and easy to use. To
improve the performance, MySQL is multithreaded database engine. A
multithreaded application performs many tasks parallelly using multiple
threads, each thread performing different tasks

 

Project design

Functional Decomposition Diagram

Functional decomposition
is a process of starting at higher level and diving into smaller and smaller
entities like top down approach. It is a business analysis technique used for
breaking down the business operations into functions. The Functional Decomposing
diagram of e-commerce website is shown below.

 

Database

 

Admins

SNO

NAME

TYPE

DESCRIPTION

1

User_id

int

Primary
key for Admin table

2

User_email

varchar

 

3

User_pass

varchar

 

 

    Brands

SNO

NAME

TYPE

DESCRIPTION

1

brand_id

int

Primary
key and AI

2

Brand_title

text

 

 

  Cart

SNO

NAME

TYPE

DESCRIPTION

1

P_id

Int

Prmary
key and AI

2

Ip_add

Varchar

Used
in identifying and authenticating user

3

Qty

int

 

 

Categories

SNO

NAME

TYPE

DESCRIPTION

1

Cat_id

Int

Primary
key and AI

2

Cat_titile

text

 

 

Customers

SNO

NAME

TYPE

DESCRIPTION

1

Customer_id

Int

Primary
key and AI

2

Customer_ip

Varchar

 

3

Customer_name

Text

 

4

Customer_email

Varchar

 

5

Customer_pass

Varchar

 

6

Customer_country

Text

 

7

Customer_city

Text

 

8

Customer_contact

Varchar

 

9

Customer_address

Text

 

10

Customer_image

Text

 

 

 

Orders

SNO

NAME

TYPE

DESCRIPTION

1

Order_id

Int

Primay
key and AI

2

P_id

Int

 

3

C_id

Int

 

4

Qty

Int

 

5

Invoice_no

Int

 

6

Order_date

Timestamp

Current
timestamp

7

Status

Text

Processing
on default

 

Payments

SNO

NAME

TYPE

DESCIPTION

1

Payment_id

Int

Primary
key and AI

2

Amount

Int

 

3

Customer_id

Int

 

4

Product_id

Int

 

5

Trx_id

Int

 

6

Currency

Text

 

 

 

 

Products

SNO

NAME

TYPE

DESCRIPTION

1

Product_id

Int

Primary
key and AI

2

Product_cat

Int

 

3

Product_brand

Int

 

4

Product_title

Varchar

 

5

Product_price

Int

 

6

Product_desc

Text

 

7

Product_image

Text

 

8

Product_keywords

Text

 

 

 

User interface:

 

Home
Page

On the home page products are displayed
randomly using the rand function. Customers can easily add the products
displayed on hoe page to the crat using add to cart bottom provided below the
product. If the customer is logged in, his email and cart stored for that
customer ill be displayed at the top right corner.  Customer can directly login/logout and can
jump to the shopping cart directly from the home page.

 

 

 

 

 

Register

Using this register page customers can
register a new account. Customer won’t be able to access cart without being
logged in. After the completion of registration an email notification will be
sent to the email provided with his/her login details.

 

Login

Website prompts for login details once the
customer try to access the cart. If customer doesn’t have login details he/she
can register for one using the register hyper link provided below. If the
customer forgot his/her login details they can use the forgot password link to
retrieve their login details. An email will be sent to customer with his/her
login details. 

 

 

Admin
Panel

Admin panel is the area where the vendor
can edit or access his inventory. Vendor can easily access his inventory and
can edit the without any prior knowledge on sql database. It provides simple
interface for vendor to add / delete new products, categories and can update
the order status for the customer. Using the admin panel vendor can access the
orders and payment details. To access the admin panel, vendor needs to login
using the admin login details provided.

 

Customer
home page

After logged in customer can access his
orders page and can view the status of his past orders. On the customer home
page his email and image will be displayed. Customer can edit or delete his
profile using the edit account link provided at the right side of the page. Customer
can change his password using the change password link.

 

 

My
orders

Using my orders page customer can track
the status of his past orders, in future new column with tracking details can
be added to this table where customer can track them directly from the orders page.

 

 

 

Add
Products

Vendor can access the admin content after
logged in as admin. From here vendor can add new products using the form below,
he/she should specify the category and brand for the product. Using the admin
content, vendor can edit all the available brands, categories and can add new
ones.  The admin menu acts as an
interface between database and the vendor. User can manage the ecom website
without any prior knowledge in any of the languages used.

 

Payment

For now, payments are processed only using
the PayPal sandbox test accounts. We can test the working by making payments
using the PayPal gateway. After the completion of the transaction payment
success or payment failure page will be redirected. If payment is successful,
the order details and the transaction details will be stored in databases where
user and vendor can access them using their accounts menu .

Integrating website and database:

The use of integrating a
database to a dynamic webpage is to allow customers to get information and
products available from the vendor dynamically. Customer enquiries and payment
info will b stored n database and the vendor can track them with the help of
integrated database. It lets the vendor to edit or update all the information and
products/services available according to the availability. A well-organized
database will help in maintaining the ecommerce website, in a static Webpage,
content will be same as specified during crating the static webpages. The
content won’t change unless the static webpage is programmed and edited again. where
as in a dynamic Web page, content is displayed from the data stored in database,
the vendor can add or remove data dynamically and the webpage displays the data
accordingly. We use the term “data-based Web pages” to refer to dynamic Web
pages. The data displays varying from the requests the user makes or the
buttons clicked like submit button or category button. If the user wants to view
the product inventory, user needs to click that specific input button. Once the
request is made the php script will request the inventory query from the
database and the data is listed accordingly. All the requests are transformed
into data base query’s in dynamic websites If the user clicks the form submit
button a specific query is created for storing that data or returning the
specific value user requested like true, false or 1,0. For example, IF the user
makes a purchase and completes the transaction the order will be sent to the
data base in query form and stored in tables for future use. Whenever a query
is made data is sent to the client browser with html tags.

Functional Features

Features of a good ecommerce website

 

A good e-commerce site
should have the following features for better navigation: ·notifying when an
item was saved to the shopping cart. ·Returning to the previous page after
adding an item to the shopping cart. ·Easy scanning and selecting items in a
list. ·Effective categorical organization of products. ·Simple navigation from
home page to information and order links for specific products. ·Obvious
shopping links or buttons. ·Minimal and effective security notifications or
messages. ·Consistent layout of product information.

Features included in this website and their
functionality

·      
Provides simple interface for the retailer
to easily scan the products he wants to add to his inventory.

·      
Once the customer signup or make a
purchase email notification will be sent to both retailer and the customer.

·      
Customer can add second layer of
authentication for secure browsing.

·      
Basic web layout with easily visible add to
cart button and details. provides ack or feedback on how many products are in the
cart and the total price.

·      
Only authenticated customer can post the
review. After making a purchase an email with order details and review form
will be sent to customer to post the review. This decrease the possibility of
posting fake reviews by the vendor to boost his product sales, but it is only
good for e-commerce that sells the third-party products.

PHP
Impact Nominal Index configuration for mail

 

For using the mail
features available on the website php.ini file needs to be configures properly.
For mail configuration go to the section mail function under this configure
the smtp server and port numbers according to the hosting server or private domain.
For example, to configure the mail function for Gmail, the smtp server is
smtp.gmsil.com and default port will be 25. After specifying the smtp server
and port number, user authentication details need to be specified.

Sample
mail function

smtp_server
= mail.example.com

smtp_port = 25

auth_username
= [email protected]

auth_password
= example_password

 

Review
System

Review system plays main
role in an e-commerce website development. According to various survey
conducted by Advances in Economics and Business more than 85.57 % believe the reviews
and ratings of the products posed under the product and 83.65 read and compare
good and bad reviews before making a purchase. But unfortunately, most vendors
hire some advertising companies to post good reviews and ratings to the products
presenting as customers they are selling. Most E-commerce website admins
implemented different strategies to prevent from posting the fake reviews. For
this E-commerce website the only way to post the product is to fill the form
that was sent to the customer after making the purchase. The customers can fill
out the email form that is sent with the delivered mail and when the product is
returned the reason for return will be added to review system that are posted
under negative’s.

 

 

References:

1.     
Larry Ullman.(2003) PHP and
MySQL for Dynamic Web Sites: Visual QuickPro Guide

2.     
Kevin Yank.(2012) PHP &
MySQL: Novice to Ninja

3.     
Wiley, Y. M. J. & Sons.
(1997) Creating the Virtual Store: Taking Your Web Site from Browsing to Buying

4.     
Kevin Yank.(2012) PHP &
MySQL: Novice to Ninja

5.     
Lynn Beighley and Morrison
(1999) Head First & MySQL

6.     
https://www.w3schools.com/php/

7.     
https://stackoverflow.com

8.     
https://www.x-cart.com/services.html

9.     
http://php.net/manual/en/function.mail.php