Anda di halaman 1dari 54

A

PROJECT REPORT
Submitted in partial fulfillment of the Requirements
For the award of Master of Computer Application Degree

RAJIV GANDHI PROUDYOGIKI VISHWAVIDYALAYA


BHOPAL (M.P.)

MAJOR PROJECT REPORT

Submitted by
PRATISHA MALVIYA
Enrollment NO. (0103CA173D45)

Under the Guidance of

KAVITA KANATHE RAJKUMAR GAHLOT

MASTER OF COMPUTER APPLICATION


LAKSHMI NARAIN COLLEGE OF TECHNOLOGY (MCA)
BHOPAL

JANUARY-JUNE, 2019
LAKSHMI NARAIN COLLEGE OF TECHNOLOGY (MCA),
BHOPAL

MASTER OF COMPUTER APPLICATION

CERTIFICATE

This is to certify that the work embodied in this Minor project-I, “Title of the Project” has been
satisfactorily completed by PRATISHA MALVIYA (0103CA173D45). It is a bonafide piece of
work, carried out under our / my guidance in the Master of Computer Application, Lakshmi
Narain College of Technology, Bhopal for the partial fulfillment of the Master of Computer
Application degree during the academic session January-June, 2019.

Guided By

Prof.Kavita Kanathai Rajkumar Gahelot

Approved By
Head of Department

Forwarded by
Director
Lakshmi Narain College of Technology (MCA),Bhopal
LAKSHMI NARAIN COLLEGE OF TECHNOLOGY (MCA),BHOPAL

MASTER OF COMPUTER APPLICATION

CERTIFICATE OF APPROVAL

This foregoing Major project is hereby approved as a creditable study of a Computer


Application Subject carried out and presented in a manner satisfactory to warranty its
acceptance as a prerequisite to the degree for which it has been submitted. It is
understood that by this approval the undersigned do not necessarily endorse or
approve any statement made, opinion expressed or conclusion drawn therein, but
approve the thesis only for the purpose for which it has been submitted.

(Internal Examiner) (External Examiner)


LAKSHMI NARAIN COLLEGE OF TECHNOLOGY (MCA), BHOPAL

MASTER OF COMPUTER APPLICATION

DECLARATION

We, Pratisha Malviya with Enrollment No. (0103CA173D45), the student of


Master of Computer Application, Lakshmi Narain College of Technology , Bhopal
hereby declare that the work presented in this Major Project is outcome of our own
work, is bonafide, correct to the best of our knowledge and this work has been carried
out taking care of Engineering Ethics. The work presented does not infringe any
patented work and has not been submitted to any University for the award of any
degree or any professional diploma.

Pratisha Malviya (0103CA173D45)

Date:
CONTENTS

Certificate i
Certificate of Approval ii
Declaration iii
Acknowledgment iv

Chapter 1. Introduction
1.1 Project Overview 1
1.2 Purpose/Objective of Project 1
1.3 Problems in Existing System 3
1.3.1 a 5
1.3.2 b 6
1.3.3 c 7
1.3.4 d 8
1.4 Solution of these Problems 10
1.4.1 a 10
1.4.1.1 aa 10
1.4.1.2 bb 10
1.4.1.3 cc 11
1.4.2 b 13
1.4.2.1 aa 14
1.4.2.2 bb 14
1.5 Socio-Economic Benefits

Chapter 2. System Analysis


2.1 Introduction
2.2 Study of the System/Data Gathering Techniques
2.3 Process Models with Justification
2.4 Feasibility Study
2.4.1 Technical Feasibility
2.4.2 Operational Feasibility
2.4.3 Socio-Economic Feasibility
2.5 Checks & Validations

Chapter 3. Software & Hardware Requirement Specifications


3.1 Introduction
3.2 Software /Hardware Requirements
3.2.1 Introduction of Front-End (used to develop project)
3.2.2 Introduction of Back-End(used to develop project)
3.3.3 Justification for choosing the Front-End or Back-End

Chapter 4. System Design


4.1 Introduction
4.2 Data Flow Diagram
4.3 E-R Diagram
4.4 Database Description (Normalized)
4.5 Implementation (Coding)

Chapter 5. Graphical User Interface Design


5.1 Introduction
5.2 Input Forms
5.3 Output Forms
5.4 Reports

Chapter 6. System Testing


6.1 Introduction
6.2 Testing Strategies
6.3 Testing Approach Adopted

Bibliography
Chapter 1. Introduction

“CLASSIFIED WEB”
If you post something on a classified website there would be many responses waiting for you. It’s
the advantage in a classified website which is highly appreciated by online user’s community and this
is the popular way on the internet for both recruiters and seeker so they all go at same place and find
easily what they are looking for.
Here you could both be buyer and seller. You could also start a new business through a classified
website.
This is a website where registered users can post the advertisement of the products they want to sell
and also they can see the details of the products posted by other users and they can buy product
they want.
The aim of this is on the online shopping web side. The application is very useful where the can
directly buying and selling the product .The application reduces lot of workload for customers as
well as owner. The transaction of money is completed in real time System.

1.1 Project Overview

Shopping has long been considered as refreshment by many. Shopping in online became a
recreational activity of life. The reason of developing web based online shopping system is everyone
walking down the street has some difficulties, also some people are so much busy and not able to go
out for shopping, some don’t like to shop in crowd. There is another reason that it’s not possible to
see all the product of a store, also its hazardous for both the customer and the seller. The world of
software development there lots of improvement in this area and to reduce the complexity of people
of life online shopping system development. Online shopping system is a virtual store on Internet
where customer can browse the product and select the product of interest. The selected product
may be collected in shopping cart. At checkout time the items in the shopping care will be presented
as an order. At that time shipping information and payment method have to select to the customer.
Finally by confirming the order has to complete the shopping and the product will deliver to
customer via currier, post office or by direct agent of company.

1.2 Purpose/Objective of Project

The main objective of the project is to facilitate people with simple way to sell their products at
valuable price to a valuable customer and also the user can search the product they need in various
category and sub categories. The objective of the Shopping systems is to increase the point of
customer choice, reduce time used in shopping and efficiency in buying product.
 To develop an easy way to use web based interface where users can search for product view
the details of the product and order it without going to market.

 The searching product can be done by product category, manufacturer as well as latest
product, view it purchase it become a convenient way for customer.

 Customer can add product to cart to purchase, delete the product from cart before selecting
the final submission.
 A user can view the complete specification of the product with various images and also view
the customer review the product.

 It minimizes the shopping time of customer, increase the point of choice.

 It also facilitate the service provider to know the current stats of market and take decision
which product are selling more now a days and have to keep in store.

1.3 Problems in Existing System

At present whenever people want to sale their goods they have to search for the valuable buyer for a
long time so this website will provide them a platform where they can post the details of the product
they want to sale.
Also the users can see the details of the products posted by other users and they can buy the
products they want.

1.3.1 a

The existing system i.e., classifieds and yellow pages system works by manually supplying
Information regarding an Advertisement to be placed in the media say newspapers, magazines etc.
This must be checked thoroughly before given for final print the existing system has got lot of
intricacies within itself and need lot of human effort and paper works.

All above the data need to be maintained properly and maintaining this is a tedious and risky process
as a small printing error may completely change the sense of the Advertisement.

Moreover to view a data or to keep a record of a particular Advertisement may need lot of paper to
be searched.

1.3.2 b

Some of the negative aspects of the existing system are as follows.

 Course of action is time consuming. Wherever need for search arises, the process
Evolves search through paper.

 Readability of records is constrained. All the records cannot be handled or written


The same person.so the format and style of records differ and hence it is difficult to
Understand.
1.3.3.c

 Paper records are easily damaged in course of time. The life time of paper records is
unreliable less that it easily gets spoiled.

 Expenditure is high, manual system needs added man power.

1.3.4.d

It is difficult for the user to category and do the comparative study of the AD’s on the basis of just
reading about it on a piece of paper.

1.4 Solution of these Problems

This challenge can be solved by taking the proper steps to verify the customers Information. First of
all recognize signs of suspicious activities like if any customers are placing high priced order or large
orders, Detect fake phone numbers or email address, check zip code whether it is matching with
state/city. Besides this when a customer’s signs up send a verification link via a text message or
email to validate the genuineness of customers. And when a customer makes a COD purchase
automated call can be dialed out of the customer and ask him /her to validate the delivery address
Considering consumers’ worry of misuse of credit card information, Inc. acquired Pay pal, a global
leader in online payment solutions, which uses the most exceptional exclusive fraud prevention
systems, enabling any individual or business with an email address to securely, easily and quickly
send and receive payments online. When using Pay pal, the credit card information is kept in its
server, thus preventing sellers from knowing that information. On the other hand, the payment
process completes immediately as the money transfers directly to the seller’s account. Then,
customer can track the progress of the payment by my classified web or PayPal account.
Additionally, Pay pal also provide Buyer Protection in case of non-receipt of item or dramatically
difference from seller’s description. This programmer covers eligible transactions for up to the full
purchase price plus original shipping charges. In order to use PayPal, consumers are required to bind
the eBay and PayPal account together and confirm the address with it.
As the bad emotion of this risk arises from the disclosure of personal information, keeping this
information private plays an essential role in the process to solve the problem. Stated by eBay, they
treasure the data as valuable assets, so store them on their servers located in America by using
variety of methods (password, encryption, physical security, etc.) to prevent unlawful entrance and
exposure, unauthorized disclosure to third party for marketing purpose as well. They also make use
of Cookies, most of which are session cookies that can disappear by itself immediately after logging
out from eBay or exiting from the web pages, to lessen the times of inputting passwords, thus
enforcing trust and safety. Another guarantee of eBay is that they forbid spreading spam or spyware
through their communication tools by automatic scan and manual filter. They suggested that
individual identities combined with feedback ratings and icons comprise a trust-building function at
eBay which can reduce product performance risk perceived by consumers. Community members
choose their own usernames to maintain individual identities used to distinguish each other.
Feedback ratings are the numbers appear next to one’s username, calculated by the sum of positive
comments minus that of negative ones describing the behavior of the user during past trades. A
higher number means a good reputation, resulting out more traders to involve in the trade with that
person. By clicking the rating, there will arise more details about the comments, including negative,
positive, as well as neutral ones. To maintain a minimum performance level from all sellers, eBay
sets out specific amount of detailed seller ratings (DSRs) from the aspects of communication,
delivery time, shipping fees and items. Sellers who do not meet the requirement will be forbidden to
register new accounts or use the old ones to bypass any restrictions as a punishment. Icons also
appear after usernames, reflecting the status of the user and reminding potential bidders or sellers of
the recent change in status or new comers. For example, a pair of sunglasses indicates the recent
change of status while stars of various colors represent certain levels of experience. To sum up, the
username distinguish individuals, the feedback rating reflects the amount of positive experience
attained by different individuals, and the icon generates the status according to the feedback
rating. To cope with time/convenience risk, Toolbar is a wise choice, with which shoppers can log
into My and your alerts quickly, seek merchandise efficiently in eBay.com, eBay Motors, Half.com
and more, as well as manage items properly. For example, when searching items online, consumers
can access both the Web and the eBay, customize the appearance of result list according to different
aspects of individual references, such as location, buying format, distance. Then during the
management period after the selection of goods, desktop alerts of the eBay Toolbar provides buyers
with timely notifications to prevent neglecting any items that may be overdue. Traders can also
browse their buying and selling status right through the desktop instead of logging in, which saves a
lot of time .Considering the shipping stage, adopts a discriminating service strategy which provides
various delivery types in order to meet different needs towards time demand. For instance, in United
States, there are options like Next Day Air, 2nd Day Air, 3 Day Select among others, which takes
corresponding time to deliver goods. Offer your product on prominent marketplaces like Amazon,
eBay, etc. as these e-commerce sites already have an existing network of buyers so pitching and
branding your product becomes relatively easy.
Segment visitors - Visitor segmentation allows ecommerce companies to focus on their website
visitors on the basis of their customer journey - past conversations, geographical location, browsing
behavior, referral page, and more.
This allows ecommerce companies to anticipate customer needs and offer them personalized service
(free delivery or promo codes) to convert them more easily.
To earn customer loyalty, what you must provide is excellent customer service. You must make sure
from ordering online to shipping, the customer is satisfied with your service. There are plenty of
online retailers that might be selling the same product like yours, so you must identify your
competitive advantage and nurture your customer service accordingly.
The few simple ways to increase trust with visitors are as follows:

 Display your address, phone number, and pictures of staff, customer testimonials, and
credibility badges on your website.

 Add live chat option to the website.

 Create blogs. Often blogs help e-commerce to build trust.

 Make customer service as a priority before profit. Always remember, it’s always easy to
maintain an existing customer than to find a new.
 Create loyalty programs. As the points are not transferable to other companies, the customer
will definitely make next purchases from your sites.

1.5 Socio-Economic Benefits

Online shopping opens up the market to buyers and sellers across the world. This increases visibility
and can be a positive revenue stream for many countries. Shopping can take place at any time of the
day or night and from any location. This really opens up the market and makes time zones obsolete;
everything is ‘open’ all of the time.

 Targeted Marketing

Retailers have more access to their customer’s wants, needs and shopping habits and can easily send
advertisements to them on targeted items they would be the most interested in. This is a benefit for
customers because they have better access to product they actually are interested and are more likely
to shop for sales online. This is great for retailers because they aren’t just sending out mass flyers
and emails to the wrong individuals. This leads to quicker more efficient sales.

 Price Consistency

Customers are more likely to price compare online which leads to more transparency for the
customer. There are search engines and sites that even do this work for customers. Because of this,
customers can be sure they are getting a fair deal. On the flip side, if there are items that are scare or
very popular, then customers will be able to find all of the places a product is available. This
transparency can drive prices either up or down depending on the product and its popularity.

 Direct Sellers

There are websites that serve as middlemen for direct sellers as well, if they do not have a retail
website or can use as a secondary referral service. These types of websites take a commission but
increase visibility and can bring business to smaller merchants who in the past may not have had
access to such a large, diverse market place. This also helps with the bottom like because online sales
can be seen as icing on the cake. Retailers do not have to actually have a location and all of the costs
that go into a storefront. Small businesses can boost brick and mortar sales by increased visibility.
There has also been an emergence of online retailers that function autonomously through their own
website. These retailers can sell, produce and ship from pretty much anywhere and have more
access.

Overall, online shopping is a win-win for the economy. This is the new standard way many prefer to
shop, especially for niche items and to price compare. With shopping being simpler and more
transparent, customers are more apt to feel confident with their purchases and get a fair deal. More
options and consistency leads to a more stable economy, and offers up more opportunities for
retailers who in the past would not have as much visibility or sales.
Chapter 2. System Analysis

2.1 Introduction

Analysis is the focus of system developing and is the stage when system designer have to work at
two levels of definition regarding the study of situational issues and possible solutions in terms of
“what to do” and “how to do”.

2.2 Study of the System/Data Gathering Techniques

A system is an orderly grouping of independent components linked together according to a plan to


achieve a specific objective .its main characteristics are organization ,independent ,integration and
central objective a system does not necessarily means to a computer system.it may be a manual
system or any names. System analysis simply refers to what is required of the system as well as
the procedures and components required to make the system work onspecification. It consists of an
in depth analysis of how the existing system worked, its strengths, weakness, benefits and above all
its problem which give side to this research work. In carry out system analysis, an analyst must first
define the scope within which he intends to work .System design it therefore the building of more
efficient system, capable of fulfilling the requirement of the user and the database. The design an
Online Shopping System that is secured against fraud and ensures easy and effective transactions .To
develop a good customer oriented system that provides customers with quality services.

2.3 Process Models with Justification

SDLC is nothing but Software Development Life Cycle. It is a standard which is used by software
industry to develop good software.

 Analysis Stage-The planning stage establishes a bird's eye view of the intended software
product, and uses this to establish the basic project structure, evaluate feasibility and risks
associated with the project, and describe appropriate management and technical approaches

 Designing Stage-The design stage takes as its initial input the requirements identified in the
approved requirements document. For each requirement, a set of one or more design
elements will be produced as a result of interviews, workshops, and/or prototype efforts.
Design elements describe the desired software features in detail, and generally include
functional hierarchy diagrams, screen layout diagrams, tables of business rules, business
process diagrams, pseudo code, and a complete entity-relationship diagram with a full data
dictionary. These design elements are intended to describe the software in sufficient detail
that skilled programmers may develop the software with minimal additional input.

 Development (Coding) Stage-The development stage takes as its primary input the design
elements described in the approved design document. For each design element, a set of one
or more software artifacts will be produced. Software artifacts include but are not limited to
menus, dialogs, and data management forms, data reporting formats, and specialized
procedures and functions. Appropriate test cases will be developed for each set of
functionally related software artifacts, and an online help system will be developed to guide
users in their interactions with the software .RTM will be updated to show that each
developed artifact is linked to a specific design element, and that each developed artifact has
one or more corresponding test case items.

 Integration & Test Stage-During the integration and test stage, the software artifacts,
online help, and test data are migrated from the development environment to a separate test
environment. At this point, all test cases are run to verify the correctness and completeness
of the software. Successful execution of the test suite confirms a robust and complete
migration capability. During this stage, reference data is finalized for production use and
production users are identified and linked to their appropriate roles. The final reference data
(or links to reference data source files) and production user list are compiled into the
Production Initiation Plan.

 Installation & Acceptance Test-During the installation and acceptance stage, the software
artifacts, online help, and initial production data are loaded onto the production server. At
this point, all test cases are run to verify the correctness and completeness of the software.
Successful execution of the test suite is a prerequisite to acceptance of the software by the
customer..
2.4 Feasibility Study

A feasibility study is conducted to select the best system that meets p e r f o r m a n c e


r e q u i r e m e n t . T h i s e n t a i l s a n i d e n t i f i c a t i o n d e s c r i p t i o n , a n evaluation of
candidate system and the selection of best system for the job. The system required
performance is defined by a statement of constraints, the identification of specific system
objective and a description of outputs.

2.4.1 Technical Feasibility

It is a measure of the practically of a specific technical solution and the availability of technical
resources and expertise.
The above tools are readily available, easy to work with and widely used for developing commercial
application.
2.4.2 Operational Feasibility

It looks at the financial aspects of the project. It determines whether the manageme nt
has enough resources and budge t to invest in the proposed system and the estimated time
for the recovery of cost incurred. It a l s o d e t e r m i n e s w h e t h e r i t
i s w o r t h w h i l e t o i n v e s t t h e m o n e y i n t h e proposed project. Economic
feasibility is determines by the means of cost benefit analysis. The proposed system is
economically feasible because the c o s t i n v o l v e d i n p u r c h a s i n g t h e h a r d w a r e
a n d t h e s o f t w a r e a r e w i t h i n approachable. The personal cost like salaries
o f e m p l o y e e s h i r e d a r e a l s o nominal, because working in this system need not required a
highly qualified professional. The operating-environment costs are marginal. The less
time involved also helped in its economic feasibility.

I t w a s o b s e r v e d t h a t t h e organization has already using computers for other purpose, so that


there is no additional cost to be incurred for adding this system to its computers.
Sophisticated and don’t needs extra components to load the software. Hence t h e o r g a n i z a t i o n
c a n i m p l e m e n t t h e n e w s y s t e m w i t h o u t a n y a d d i t i o n a l expenditure. Hence, it is
economically feasible.

2.4.3 Socio-Economic Feasibility

This system will be used if it is developed well then be resistance for users that undetermined.

 No major training and new skills are required as it is based on Process model.

 It will help in the time saving and fast processing and dispersal of user request and
application.

 New product will provide all the benefits of present system better performance.

 Improved information, better management and collection of the reports.

 User support.

 User involvement in the building of present system is sought to keep in mind the user
specific requirement and needs.

 User will have control over their own information. Important information such as pay-
slip can be generated at the click of a button.

 Faster and systematic processing of user application approval, allocation of IDs,


payments, etc. used had greater chances of error due to wrong information entered by
mistake.

2.5 Checks & Validations


One of the most important aspects of building a business is validating that there is a demand for
your products. There is nothing more discouraging than spending your time and energy creating a
product that you think people will love, only to realize that there’s no interest when you launch.

 Ring the cash register


The first and arguably best way to validate your product is to prioritize making a few initial sales.
Nothing is more important than customers seeing the value in your product and exchanging money
for it. Conduct competitive analysis Research can be useful when you’re still in the ideation stage
or searching for a product to sell. Exploring the current market can also help you mitigate risk and
build confidence in your idea before investing too much time and money. Our second suggestion is
to evaluate the market for your product as it stands today to ensure there’s enough demand to build
a viable business. One way to make sure there is a healthy market to sell to is to look closely at your
direct competition. Find out what they are doing and how it compares to what you are planning to
do.

 Research the existing demand

A third strategy you can use to validate your product and its market is to analyze demand and search
volume. Now that you know more about your competitors, let’s take a closer look at interest from
potential customers.
The easiest starting place is to go to Google Trends. This is a free tool that allows you to see how
often people are searching for the product you’re selling. Knowing where the market is going can
help you make a more informed decision and using Google Trends lets you see if your product idea
is trending up, down, or if it’s stagnant. The last thing you want to do is jump into a declining
market. There are a number of other ways to validate your product, and we share additional
resources in our full course on Shoplift Academy. In the course, we also cover other important
lessons we’ve learned about reaching new customers and scaling our business. One final point all
entrepreneurs should keep in mind is to not let validation turn into procrastination. Doing the initial
legwork to validate your product is undeniably useful: it will give you the confidence necessary to
put yourself out there, and it can help you avoid costly mistakes, saving you time and money.
The truth is every business owner has to learn as they go, and trying to perfectly predict how
everything will play out just delays you from shipping and selling a real product. Dipping your toes
in the water can teach you a lot, but all of your research and analysis is ultimately just a lead up to
that pivotal moment when you finally dive in.

Chapter 3. Software & Hardware Requirement Specifications

13.1 Introduction

This chapter deals with the type of hardware that is used and the software to support the same.
Selection and identification of suitable software is also taken into account. Connectivity between
various technologies used is established. The designing of interfaces and identification of all
functional requirements is carried out. Mainly this system is designed in two modules.
 Desktop application using open source software like java and data mining tool Weak for
predicting air and water quality data.

 Web based GIS application for finding its impact on human health and the representation of
the same in the form of real time maps.

3.2 Software /Hardware Requirements

 Software Requirements
Operating System: Windows XP/Windows7/8/
Server Side Scripting Language: Java
Data Base: MySQL 5.0
IDE/Tools: Net Beans/Sublime Text
Web Server: Apache Tomcat

 Hardware Requirements
Intel - Celeron/DC/C2D/i3/i5: 2.4 GHz or above.
RAM (SD/DDR): 4GB or above.
Hard Disc: 10GB or above.

Chapter 4.System Design

4.1 Introduction
System design is the solution for the creation of a new system. This phase focuses on the detailed
implementation of the feasible system. It emphasis on translating design. Specifications to
performance specification. System design has two phases of development.
 Logical design

 Physical design

During logical design phase the analyst describes inputs sources, output destinations, databases data
sores and procedures data flows all in a format that meets the user requirements. The analyst also
specifies the needs of the user at a level that virtually determines the information flow in and out of
the system and the data resources. Here the logical design is done through data flow diagrams and
database design. The physical design is followed by physical design or coding. Physical design
produces the working system by defining the design specifications, which specify exactly what the
candidate system must do. The programmers write the necessary programs that accept input from
the user perform necessary processing on accepted data and produce the required report on a hard
copy or display it on the screen.

4.2Data Flow Diagram


Data Flow Diagramming is a means of representing a system at any level of detail with
a graphic network of symbols showing data flows, data stores, data processes, and data
sources/destination Smart Draw contains all the needed data flow diagram symbols and easy-to-use
templates that help you get started. Stamp shapes to your drawing area and connect them easily with
keyboard shortcuts or intuitive commands located on the Smart Panel to the left of your drawing
area. You can even nest different levels of data flow diagrams by using Smart Draw's hyperlink
function. A data flow diagram (DFD) is a significant modeling technique for analyzing and
constructing information processes. DFD literally means an illustration that explains the course or
movement of information in a process. DFD illustrates this flow of information in a process based
on the inputs and outputs. A DFD can be referred to as a Process Model.

A designer usually draws a context-level DFD showing the relationship between the entities inside
and outside of a system as one single step. This basic DFD can be then disintegrated to a lower level
diagram demonstrating smaller steps exhibiting details of the system that is being modeled.
Numerous levels may be required to explain a complicated system .Data flow diagram is made up of
basic geometric shapes connected by arrows showing the flow direction.

Context level DFD


First level DFD (User Management)
Second level DFD (Category Management)
Second level DFD (Subcategory Management)
Second level DFD (Chat Management)
Second level DFD (Subscription Management)

Second level DFD (Feedback Management)


Second level DFD (Payment Management)
Second level DFD (Product Management)

4.2 E-R Diagram


An entity relationship diagram (ERD) shows the relationships of entity sets stored in a database. An
entity in this context is an object, a component of data. An entity set is a collection of similar
entities. These entities can have attributes that define its properties. By defining the entities ,their
attributes, and showing the relationships between them, an ER diagram illustrates the logical
structure of databases.ER diagrams are used to sketch out the design of a database.
4.3 Database Description (Normalized)

Database Normalization is a technique of organizing the data in the database. Normalization is a


systematic approach of decomposing tables to eliminate data redundancy (repetition) and
undesirable characteristics like Insertion, Update and Deletion Anomalies .Normalization is a
process of organizing the data in database to avoid data redundancy, insertion anomaly, update
anomaly & deletion anomaly.

Table No.1 (User Table)


Field Name Data Type Field Size Description
Id Int 11 Primary Key for the user table
Online Tinyint 1 To check whether the user is online or not
Fname Varchar 100 First name of the user
Lname Varchar 100 Last name of the user
Gender Varchar 100 Gender of the user
Email Varchar 100 Email of the user
Password Varchar 100 Password of the user
Contact Varchar 100 Contact of the user
Status Tinyint 1 To check whether the user is approved or not

Table No 2. (Product table)

Field Name Data type Field Type Description


Pid Int 11 Primary key for product table
Pname Varchar 100 Stores product name

Table No 3. (Subproduct table)

Field Name Data type Field Type Description


Sub_id Int 11 Primary key for the sub category table
Sub_name Varchar 100 Sub category name for the product
Pid Int 11 Foreign key to join with product table

Table No 4. (Subscription table)


Field Name Data type Field Type Description
Id Int 11 Primary key for the subscription table
Username Varchar 100 Name of the subscribed user
Email Varchar 100 Email of the subscribed user
Subscrip Tinyint 1 To check whether the user is subscribed
Subscription_amount Int 11 Amount paid by the user for subscription
Subscription_month Varchar 100 Number of months for the subscription

Table No 5. (City table)

Field Name Data type Field Type Description


Cityid Bigint 255 Primary key for the city table also auto increment
Stateid Int 255 To join with state table
City Varchar 255 Name of the city

Table No 6. (State table)

Field Name Data type Field Type Description


Stateid Bigint 255 Primary key for state table and also auto incremented
Countryid Int 255 To join with country table
State Varchar 255 Name of the state

Table No7. (Country table)

Field Name Data type Field Type Description

Countryid Bigint 255 Primary key for country table and also auto incremented

Countryname Varchar 255 Name of the country

Table No 8. (Post table)

Field Name Data type Field Type Description

Id Int 11 Primary key for post table and also auto incremented
Category Varchar 100 Category of the product to be posted
Subategory Varchar 100 Sub category of the product to be posted
Email Varchar 100 Email of the user who is posting the ad.
Amount Int 11 Price of the product
Description Varchar 100 Details of the product
File Varchar 100 Name of the file uploaded with product
Productname Varchar 100 Name of the product

Table No 9. (Admin)

Field Name Data type Field Type Description


Id Int 11 Primary key for admin table and auto incremented
Email Varchar 100 Email of the admin
Message Varchar 255 Message sent by the admin
Subject Varchar 255 Subject of the email
Destination_email Varchar 255 Email of the receiver
Sent_date Varchar 255 Date on which the email was sent

4.5 Implementation (Coding)

Login.jsp

<%@include file="header. jsp" %>


<br>
<div class="container">
<div class="row">
<div class="col-md-3">
</div>
<div class="col-md-6">
<div class="box box-info">
<form class="form-horizontal" method="post” action="Login Servlet">
<div class="box-header with-border">
<h3 class="box-title">Login</h3>
</div>
<div class="box-body">
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Email</label>
<div class="col-sm-10">
<input type="email" class="form-control" name="email" required="required"
placeholder="Email">
</div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">Password</label>
<div class="col-sm-10">
<input type="password" class="form-control" name="password"
required="required" placeholder="Password">
</div>
</div>
</div>
<div class="box-footer">
<div class="row">
<div class="col-md-2"></div>
<div class="col-md-8">
<button type="submit" class="btn btn-info btn-block">Log-In</button>
</div>
</div>
<div class="row">
<div class="col-md-4"></div>
<div class="col-md-8">
<a href="registration.jsp">New customer? Sign up here.</a>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
<%@include file="footer. Jsp" %>

Post. Jsp

<%@page import="conn.Getconn"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@include file="header. Jsp" %>
<div class="container">
<form action="uploadpage.jsp" method="post" enctype="multipart/form-data">
<div class="row">
<div class="col-md-3"></div>
<div class="col-md-6">
<div class="box box-primary pad">
<div class="box-header">
<h3>Post for Public</h3>
</div>
<div class="box-footer">
<div class="row">
<div class="col-md-6 col-sm-6">
<div class="form-group">
<select class="form-control select2" id="product Category" on
change="clear Error (categoryerr)" style="width: 100%;" name="cat">
<option selected="selected">Select category</option>
<% Connection con = null;
Try {
Con = Getconn.getconnection ();
String sql = "select * from product";
PreparedStatement ps = con. Prepare Statement (sql);
Result Set rs = ps.executeQuery ();
While (rs. next ()) {

%>
<Option><%=rs.getString ("Pname")%></option>
<%
}
} catch (Exception e) {
e.printStackTrace ();
} finally {
Try {
con.close ();
} catch (Exception e) {
}
}

%>
</select>
</div>
<div class="form-group">
<span id="categoryerr" class="error"></span>
</div>
</div>
<div class="col-md-6 col-sm-6">
<div class="form-group">
<select class="form-control select2" id="produc tsubCategory" on
change="clear Error(sub categoryerr)" style="width: 100%;" name="subcat">
<option selected="selected">Select sub-category</option>
<% Connection con1 = null;
try {
con1 = Getconn.getconnection();
String sql = "select * from sub_product";
PreparedStatement ps = con1.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
%>
<option><%=rs.getString("sub_name")%></option>
<%
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
con1.close();
} catch (Exception e) {
}
}
%>
</select>
</div>
<div class="form-group">
<span id="subcategoryerr" class="error"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6 col-sm-6">
<div class="form-group">
<input type="text" class="form-control" name="productname"
id="producName" onkeypress="clearError(productnameerr)" placeholder="Product Name"
value="">
</div>
<div class="form-group">
<span id="productnameerr" class="error"></span>
</div>
</div>
<div class="col-md-6 col-sm-6">
<div class="form-group">
<input type="text" class="form-control" name="amount"
id="productPrice" onkeypress="clearError(priceerr)" required="required" placeholder="Enter
Price">
</div>
<div class="form-group">
<span id="priceerr" class="error"></span>
</div>
</div>
</div>
<div class="row">

<div class="col-md-12 col-sm-6">


<div class="form-group">
<input type="email" class="form-control" name="email"
placeholder="Email address" value="<%=(String) session.getAttribute("email")%>" readonly="">
</div>
</div>
<div class="col-md-12 col-sm-6">
<div class="form-group">
<textarea rows="5" class="form-control" name="description"
id="productDescription" onkeypress="clearError(descriptionerr)" placeholder="Description "
></textarea>
</div>
<div class="form-group">
<span id="descriptionerr" class="error"></span>
</div>
</div>
<div class="col-md-12 col-sm-6">
<div class="form-group">
<input type="file" name="ImageFile" >
</div>
</div>
</div>
</div>
<div class="box-footer">
<div class="col-md-12 col-sm-12">
<div class="form-group">
<button type="submit" onclick=" return validation()" class="btn btn-primary"
>Submit Post</button>
</div>
</div>
</div>
</div>
</div>
</form>
</div>
</div>
<script type="text/javascript">
function validation() {
var status = true;
var productCategory = (document).getElementById("productCategory").value;
var productsubCategory = (document).getElementById("productsubCategory").value;
var producName = (document).getElementById("producName").value;
var productPrice = (document).getElementById("productPrice").value;
var productDescription = (document).getElementById("productDescription").value;

if (productCategory == "Select category") {


(document).getElementById("categoryerr").innerHTML = "please select category";
status = false;
}
if (productsubCategory == "Select sub-category") {
(document).getElementById("subcategoryerr").innerHTML = "please select sub-category";
status = false;
}
if (producName == 0) {
(document).getElementById("productnameerr").innerHTML = "please enter product
name";
status = false;
}
if (productPrice == 0) {
(document).getElementById("priceerr").innerHTML = "please enter product price";
status = false;
}
if (isNaN(productPrice)) {
(document).getElementById("priceerr").innerHTML = "please enter valid price";
status = false;
}
if (productDescription == 0) {
(document).getElementById("descriptionerr").innerHTML = "please enter product
description";
status = false;
}
return status;
}
function clearError(obj) {
obj.innerHTML = "";
}
</script>
<style type="text/css">
.error{
color: red;
}
</style>
%@include file="footer.jsp" %

Registration.jsp

<%@include file="header.jsp" %>


<br>
<div class="container ">
<div class="row">
<div class="col-md-3"></div>
<div class="col-md-6">
<div class="box box-primary pad">
<form id="form" action="RegistrationServlet" method="post">
<div class="box-header">
<h2>Register with us</h2>
</div>
<div class="box-body">
<div class="row">
<div class="col-md-12 col-sm-6">
<div class="form-group">
<input type="text" class="form-control" onkeyup="clearError(fnameerr)"
id="fname" name="fname" placeholder="First Name">
</div>
<div class="form-group">
<span id="fnameerr" class="error"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12 col-sm-6">
<div class="form-group">
<input type="text" class="form-control" id="lname"
onkeyup="clearError(lnameerr)" name="lname" placeholder="Last Name ">
</div>
<div class="form-group">
<span id="lnameerr" class="error"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12 col-sm-6">
<div class="form-group">
<select class="form-control select2" id="gender"
onchange="clearError(gendererr)" style="width: 100%;" name="gender">
<option>select gender</option>
<option>Male</option>
<option>Female</option>
</select>
</div>
<div class="form-group">
<span id="gendererr" class="error"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12 col-sm-6">
<div class="form-group">
<input type="email" class="form-control" id="email"
onkeyup="clearError(emailerr)" name="email" placeholder="Email address">
</div>
<div class="form-group">
<span id="emailerr" class="error"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12 col-sm-6">
<div class="form-group">
<input type="password" class="form-control" id="password"
onkeyup="clearError(pswderr)" name="password" placeholder="Password">
</div>
<div class="form-group">
<span id="pswderr" class="error"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12 col-sm-6">
<div class="form-group">
<input type="text" class="form-control" id="contact"
onkeyup="clearError(contacterr)" name="contact" placeholder="Contact">
</div>
<div class="form-group">
<span id="contacterr" class="error"></span>
</div>
</div>
</div>
</div>
<div class="box-footer text-center">
<div class="row">
<div class="col-md-2"></div>
<div class="col-md-8 col-sm-12">
<div class="form-group">
<button type="submit" onclick="return validation()" class="btn btn-
primary btn-block">Sign-Up</button>
</div>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
function validation() {
var status = true;
var fname = (document).getElementById("fname").value;
var lname = (document).getElementById("lname").value;
var gender = (document).getElementById("gender").value;
var email = (document).getElementById("email").value;
var password = (document).getElementById("password").value;
var contact = (document).getElementById("contact").value;
if (fname == 0) {
(document).getElementById("fnameerr").innerHTML = "please enter first name";
status = false;
}
if (lname == 0) {
(document).getElementById("lnameerr").innerHTML = "please enter last name";
status = false;
}
if (gender == "select gender") {
(document).getElementById("gendererr").innerHTML = "please select gender";
status = false;
}
if (email == 0) {
(document).getElementById("emailerr").innerHTML = "please enter your email";
status = false;
}
if (password == 0) {
(document).getElementById("pswderr").innerHTML = "please enter password";
status = false;
}
if (contact.length != 10) {
(document).getElementById("contacterr").innerHTML = "please enter valid number";
status = false;
}
if (isNaN(contact)) {
(document).getElementById("contacterr").innerHTML = "please enter only numbers";
status = false;
}
return status;
}
function clearError(obj) {
obj.innerHTML = "";
}
</script>
<style type="text/css">
.error{
color: red;
}
</style>
%@include file="footer.jsp" %

seedetails

<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="conn.Getconn"%>
<%@page import="java.sql.Connection"%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>


<%@include file="header.jsp" %>
<% String imageName = null;
String description = null;
String purchaseDate = null;
String type = null;
String ownertype = null;
String material = null;
String product_color = null;
%>
<section class="content">
<section class="block">
<div class="container">
<div class="row">
<div class="col-md-7">
<div class="box box-primary pad">
<div class="row">
<div class="col-md-12">
<div>
<div class="image background-image col-md-12">
<% Connection con = null;
try {
con = Getconn.getconnection();
String sql = "select * from post where id = ?";
PreparedStatement ps = con.prepareStatement(sql);
ps.setInt(1, Integer.parseInt(request.getParameter("pid")));
ResultSet rs = ps.executeQuery();
if (rs.next()) {
imageName = rs.getString(7);
description = rs.getString("description");
%>
<img style="padding-left: 10%;padding-right: 10%; max-height: 300px;
min-height: 300px" src="images/<%=imageName%>" alt="">
<%
}
} catch (Exception e) {
} finally {
try {
con.close();
} catch (Exception e) {
}
}
%>
</div>
</div>
</div>
</div>
</div>
<div class="box box-primary pad">
<div class="row">
<div class="col-md-12">
<div class="box-header">
<h3>Product Details:</h3>
</div>
<div class="box-footer">
<%
Connection con1 = null;
try {
con1 = Getconn.getconnection();
String sql = "select * from product_details where post_id = ?";
PreparedStatement ps = con1.prepareStatement(sql);
ps.setInt(1, Integer.parseInt(request.getParameter("pid")));
ResultSet rs = ps.executeQuery();
if (rs.next()) {
%>
<table border="0" colmspan="2">
<tr><td>Purchased On</td><td style="padding-right: 10px;padding-
left: 10px">:</td><td><%=rs.getString("purchased_on")%></td></tr>
<tr><td>Type</td><td style="padding-right: 10px;padding-left:
10px">:</td><td><%=rs.getString("type")%></td></tr>
<tr><td>First Owner</td><td style="padding-right: 10px;padding-
left: 10px">:</td><td><%=rs.getString("owner_type")%></td></tr>
<tr><td>Material</td><td style="padding-right: 10px;padding-left:
10px">:</td><td><%=rs.getString("material")%></td></tr>
<tr><td>Color</td><td style="padding-right: 10px;padding-left:
10px">:</td><td><%=rs.getString("color")%></td></tr>
</table>
<%
}
} catch (Exception e) {
} finally {
try {
con1.close();
} catch (Exception e) {
}
}
%>
</div>
</div>
</div>
</div>
<div class="box box-primary pad">
<div class="row">
<div class="col-md-12">
<div class="box-header">
<h3>Description:</h3>
</div>
<div class="box-footer">
<p><%=description%></p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-5">
<form class="form">
<div class="row">
<div class="col-md-12">
<div class="box box-primary pad">
<div class="row">
<div class="col-md-12">
<div class="box-header">
<h3>Seller Details:</h3>
</div>
<form role="form" action="user_profile_update.jsp">
<div class="form-group col-md-12">
<br>
<label class="">Seller Name:</label><br>
<label class="">Ad posted On:</label>
</div>
<div class="box-footer">
<button type="submit" class="btn btn-primary">Contact
Details</button>
</div>
</form>
</div>
</div>
</form>
</div>
</div>
<div class="col-md-12">
<div class="box box-primary pad">
<div class="box-header">
<h3>Send Message to Seller:</h3>
</div>
<div class="box-footer">
<form role="form" action="task_sendMessage.jsp">
<div class="row">
<div class="form-group col-md-12">
<label for="name" class="">Your Name</label>
<input name="bname" type="text" class="form-control"
id="name" placeholder="Enter your Name" value="" required>
</div>
</div>
<div class="row">
<div class="form-group col-md-12">
<label class="col-form-label required">Your Email</label>
<input name="bemail" type="text" class="form-control"
id="input-location2" placeholder="Your Location" value="Enter your Email" >
</div>
</div>
<div class="row">
<div class="form-group col-md-12">
<label class="col-form-label required">Your Message</label>
<textarea rows="5" class="form-control" name="bmessage"
placeholder="write your message"></textarea>
</div>
</div>
<div class="form-group col-md-12" >
<button type="submit" class="btn btn-primary">Send
Message</button>
</div>
</form>
</div>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</section>
</section>
</div>
%@include file="footer.jsp" %

User_profile.jsp

<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="conn.Getconn"%>
<%@page import="java.sql.Connection"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%
String email = (String) session.getAttribute("email");
session.setAttribute("email", email);
%>
<ul class="nav navbar-nav navbar-right">
<li><a href="#"><%=(String) session.getAttribute("email")%></a></li>
<li><a href="#">Track Order</a></li>
<li><a href="post_redirect.jsp">Post</a></li>
<li><a href="#"></a></li>
<li><a href="logout.jsp">logout</a></li>
<li><a href="post_redirect.jsp">Post</a></li>
<li><a href="#">Orders</a></li>
<li><a href="user_wallet.jsp">Wallet</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><%=(String)
session.getAttribute("email")%><b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">My Profile</a></li>
<li class="divider"></li>
<li><a href="#">Log Out </a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">24x7 Support <b
class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#"><strong>Call: </strong>+09-456-567-890</a></li>
<li><a href="#"><strong>Mail: </strong>info@yourdomain.com</a></li>
<li class="divider"></li>
<li><a href="#"><strong>Address: </strong>
<div>
234, New york Street,<br />
Just Location, USA
</div>
</a>
</li>
</ul>
</li>
</ul>
<form class="navbar-form navbar-right" role="search">
<div class="form-group">
<input type="text" placeholder="Search Here ..." class="form-control">
</div>
&nbsp;
<button type="submit" class="btn btn-primary">Search</button>
</form>
</div>
/.navbar-collapse
</div>
/.container-fluid
</nav>-->
<%@include file="header.jsp" %>
<section class="content">
<section class="block">
<div class="container-fluid">
<div class="row">
<div class="col-md-3">
<nav class="nav flex-column side-nav">
<a class="list-group-item active" href="my-profile.jsp">
<i class="fa fa-user"></i> Update Profile
</a>
<a class="list-group-item " href="user_wallet.jsp">
<i class="fa fa-money"></i> Wallet
</a>
<a class="list-group-item " href="myads.jsp">
<i class="fa fa-heart"></i> My Ads
</a>
<a class="list-group-item " href="userMessages.jsp">
<i class="fa fa-comments"></i> Messages
</a>
<a class="list-group-item" href="change_password.jsp">
<i class="fa fa-key"></i> Change Password
</a>
<a class="list-group-item" href="logout.jsp">
<i class="fa fa-sign-out"></i> Log Out
</a>
</nav>
</div>
<div class="col-md-9">
<div class="row">
<div class="col-md-9">
<form action="upload_profilepicture.jsp"enctype="multipart/form-data"
method="post" class="form">
<div class="box box-primary pad">
<div class="row">
<div class="col-md-12">
<div>
<div class="image background-image col-md-4">
<img style="width: 150px; height: 150px"
src="dist/img/avatar_1.png" alt="">
</div>
</div>
</div>
</div>
<div class="box-footer">
<button class="btn btn-primary"
onclick="document.getElementById('getFile').click()">Change Image</button>
<input type='file' id="getFile" style="display:none">
</div>
</div>
</form>
</div>
<div class="col-md-9">
<div class="box box-primary pad">
<div class="box-header">
<h2>Personal Information:</h2>
</div>
<form role="form" action="user_profile_update.jsp">
<% Connection con = null;
try {
con = conn.Getconn.getconnection();
String sql = "select * from user where email = ?";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1, email);

ResultSet rs = ps.executeQuery();
if (rs.next()) {
%>
<div class="row">
<div class="form-group col-md-6">
<label for="name" class="">First Name</label>
<input name="fname" type="text" class="form-control" id="name"
placeholder="First Name" value="<%=(String) rs.getString("fname")%>" required>
</div>
<div class="form-group col-md-6">
<label for="name" class="">Last Name</label>
<input name="lname" type="text" class="form-control" id="name"
placeholder="Last Name" value="<%=(String) rs.getString("lname")%>" required>
</div>
</div>
<div class="row">
<div class="form-group col-md-6">
<label for="gender" class="">Select Gender</label>
<select class="form-control select2" id="gender" style="width: 100%;"
name="gender">
<option>select gender</option>
<option>Male</option>
<option>Female</option>
</select>
</div>
<div class="form-group col-md-6">
<label for="location" class="col-form-label required">Your
Location</label>
<input name="location" type="text" class="form-control" id="input-
location2" placeholder="Your Location" value="Enter your location" >
</div>
</div>
<div class="box-header">
<h2>Contact Details:</h2>
</div>
<div class="row">
<div class="form-group col-md-6">
<label for="phone" class="col-form-label">Phone</label>
<input name="contact" type="text" class="form-control" id="phone"
placeholder="Your Phone" value="<%=(String) rs.getString("contact")%>">
</div>
<!--end form-group-->
<div class="form-group col-md-6">
<label for="email" class="col-form-label">Email</label>
<input name="email" type="email" class="form-control" id="email"
placeholder="Your Email" value="<%=(String) rs.getString("email")%>" readonly="">
</div>
</div>
<%
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
con.close();
} catch (Exception e) {

}
}
%>
<div class="box-footer">
<button type="submit" class="btn btn-primary">Update
Profile</button>
</div>
</form>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</section>
</section>
</div>
%@include file="footer.jsp" %

UserHome.jsp
<%
String email = (String) session.getAttribute("email");
session.setAttribute("email", email);
%>
<%@include file="header.jsp"%>
<style>
.cut-text {
text-overflow: ellipsis;
overflow: hidden;
width: 220px;
white-space: nowrap;
}
</style>
<% if (session != null) {
if (session.getAttribute("email") != null) {
response.setHeader("Cache-Control", "No-Cache,no-store, must-revalidate");
} else {
response.sendRedirect("login.jsp");
}
}
%>
<div class="container-fluid">
<div class="row">
<div class="col-md-12-mar">
<div class="well well-lg offer-box text-center">
<marquee>Offers :
<%
Connection conToOffer = null;
try {
conToOffer = Getconn.getconnection();
String sql = "Select * from offers";
PreparedStatement ps = conToOffer.prepareStatement(sql);
ResultSet rs = ps.executeQuery(sql);
while (rs.next()) {
%>
&nbsp; <span class="glyphicon glyphicon-
fire"></span>&nbsp;<%=rs.getString("discount_per")%>% off on purchase of Rs.
<%=rs.getString("purchase_above")%> and above till
<%=rs.getString("till_date")%>&nbsp;&nbsp;
<%
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
conToOffer.close();
} catch (Exception e) {
}
}
%>
</marquee>
</div>
</div>
</div>
<div class="row">
<div class="col-md-3">
<div>
<%
Connection con = Getconn.getconnection();
String str = "select * from product order by pname";
PreparedStatement pt = con.prepareStatement(str);
ResultSet rs = pt.executeQuery();
while (rs.next()) {
int i = rs.getInt("pid");
%>
<a href="#" class="list-group-item active"><%=rs.getString("pname")%></a>
<ul class="list-group">
<%
Connection con1 = Getconn.getconnection();
String str1 = "select * from Sub_Product where pid= " + i + " order by sub_name";
PreparedStatement pt1 = con1.prepareStatement(str1);
ResultSet rs1 = pt1.executeQuery();
while (rs1.next()) {
%>
<a class="list-group-item"
href="showProducts.jsp?sub_cat=<%=rs1.getString("sub_name")%>"><%=rs1.getString("sub_na
me")%></a>
<%
}
%>
</ul>
<%
}
%>
</div>
</div>
<div class="col-md-9">
<div class="row">
<div class="col-md-9">
<div>
<ol class="breadcrumb">
<li><a href="#">Home</a></li>
<li class="active">Electronics</li>
</ol>
</div>
</div>
<div class="col-md-3">
<div class="btn-group alg-right-pad">
<button type="button" class="btn btn-default"><strong>1235
</strong>items</button>
<div class="btn-group">
<button type="button" class="btn btn-danger dropdown-toggle" data-
toggle="dropdown">
Sort Products &nbsp;
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li><a href="#">By Price Low</a></li>
<li class="divider"></li>
<li><a href="#">By Price High</a></li>
<li class="divider"></li>
<li><a href="#">By Popularity</a></li>
<li class="divider"></li>
<li><a href="#">By Reviews</a></li>
</ul>
</div>
</div>
</div>
</div>
<!-- /.row -->
<div class="row">
<%
Connection con1 = null;
con1 = conn.Getconn.getconnection();
String sql1 = "select * from post";
PreparedStatement ps1 = con1.prepareStatement(sql1);
ResultSet rs1 = ps1.executeQuery();
while (rs1.next()) {
%>
<div class="col-md-3 col-sm-6 col-xs-6">
<div class="thumbnail product-box">
<img id="imageGrid" src="images/<%=rs1.getString(7)%>" alt=""/>
<div class="caption">
<h3 class="cut-text"><a
href="#"><%=rs1.getString("productname")%></a></h3>
<p>Price : <strong>Rs. <%=rs1.getString("amount")%></strong> </p>
<p class="cut-text"><%=rs1.getString(6)%></p>
<a href="seedetails.jsp?pid=<%=rs1.getString("id")%>" class="btn btn-primary"
role="button">See Details</a></p>
</div>
</div>
</div>
<%
}
%>
</div>
</div>
</div>
</div>
</div>
<%@include file="footer.jsp" %>

Chapter 5. Graphical User Interface Design

5.1 Introduction

In these times of metaphors, mice, widgets/controls, links, applets, and usability, the user interface is
being scrutinized, studied, written about, and talked about like never before. This welcome attention,
along with the proliferation of usability laboratories and product testing, has significantly raised the
usability of products being presented to users today. People's voices have finally been heard above
the din. Their frustration with complicated procedures and incomprehensible screens has finally
become overwhelming. “We're no longer going to peacefully accept products that mess up our lives
and put everything we work on at risk,” they are saying. They're also saying “That's just the way it is”
is no longer tolerable as an answer to a problem. Examples of good design, when they have
occurred, have been presented as vivid proof that good design is possible .Developers listened.
Greatly improved technology in the late twentieth century eliminated a host of barriers to good
interface design and unleashed a variety of new display and interaction techniques wrapped into a
package called the graphical user interface or, as it is commonly called, GUI (pronounced “gooey”).
Almost every graphical platform now provides a style guide to assist in product design. Software to
aid the GUI design process proliferates. Hard on the heels of GUIs has come the amazingly fast
intrusion of the World Wide Web into the everyday lives of people web.

5.2 Input Forms

5.4 Report

Chapter 6.System Testing

6.1 Introduction

Any particular testing strategy is not used in the project only manual downloading strategy used to
check the retrieved data is correct. Software testing is defined as an activity to check whether the
actual results match the expected results and to ensure that the software system is detailed free. It
involves execution of a software component or system component to evaluate one or more
properties of interest. Software testing also helps to identify errors, gaps or missing requirements in
contrary to the actual requirements. It can be either done manually or using automated tools. Some
prefer saying Software testing as a White Box and Black Box Testing. In simple terms, Software
Testing means Verification of Application under Test (AUT).This tutorial introduces testing
software to the audience and justifies its importance.

6.2 Testing Strategies


 Web pages are designed using HTML and CSS. Also we have used BOOTSTRAP and
AJAX to make this website responsive and compatible for different devices. All the details
of users, products are well managed in database. Any particular Testing strategy is not used
in the project; only manual downloading strategy is used to check the retrieved data is
correct. The developer should conduct the successful technical reviews to perform the
testing successful.
 Testing starts with the component level and work from outside toward the integration of
the whole computer based system.
 Different testing techniques are suitable at different point in time.
 Testing is organized by the developer of the software and by an independent test group.
 Debugging and testing are different activities, and then also the debugging should be
accommodated in any strategy of testing.

6.3 Testing Approach Adopted

It defines

 Process of testing
 Testing levels
 Roles and responsibilities of each team member
 Types of Testing (Load testing, Security testing, Performance testing etc.)
 Testing approach & automation tool if applicable
 Adding new defects, re-testing, Defect triage, Regression Testing and test sign off.
 Define the number of requirement and setup required for each environment
 Define backup of test data and restore strategy
 Automation and Test management tools needed for test execution
 Figure out a number of open-source as well as commercial tools required, and determine
how many users are supported on it and plan accordingly

BIBLIOGRAPHY
1. Han J. and Kamber M. (2003): “Data Mining, Concepts and Techniques”, Academic Press, 2003.
2. Hand D., Mannila H. and Smyth P. (2001): “Principle of Data Mining”. MIT Press,Cambridge,
Massachusetts, USA, 2001.
3. J. Han and M. Kamber (2011): “Data Mining: Concepts and Techniques”, Morgan Kaufmann d., 2011.
4. Berson (1997): “Data warehousing, Data Mining &amp; DLAP, Computing” Mcgraw-Hill, 1997.
5. W. H. Inmon (2005): “Building the Data Warehouse”, 3 ed , Wiley India, 2005.
6. B. W. Kernighan and R. Pike (1995): “The UNIX Programming Environment”, Prentice Hall of India,
1995.
7. Buyya and Selvi (2013): ”Mastering Cloud Computing “,TMH Pub., 2013.
8. Law and Kelton (2000): “Simulation Modelling and Analysis” 3rd Ed., McGraw Hill, 2000.
9. Jeffrey R. Shapiro (2002): “The Complete Reference Visual Basic .NET”, Tata Mcgraw Hill, 2002.
10. Chris Ullman and Kauffman (2003): “Beg ASP.NET1.1 with VC#.NET 2003”, Wiley Dream tech.,
2003.
11. Han J., Pei J. and Yin Y. (2000): “Mining Frequent Patterns without Candidate Generation”. In
proceedings of International Conference on Management of Data (ACM SIGMOD’00), pages 1-12,
ACM Press Dallas, TX, United States, May 2000.
12. Andrew S. Tanenbaum and Maarten Van Steen (2002): “Distributed Systems Principles and
Paradigms” Pearson Education Inc. 2002.
13. Eric Maiwald (2004): “Fundamentals of network security”, New Delhi, Wiley Dreamtech India Ltd,
2004 Edition.
14. Elaine Rich, Kevin Knight and Shivashankar B. Nair(2009): “Artifical Intelligence”, Tata McGraw-Hill
Education Private Limited, 2009.
15. G. Somasundaram and Alok Shrivastava (EMC Education Services)(2002): “Information Storage and
Management: Storing, Managing, and Protecting Digital Information”,2nd Ed., Wiley India, 2002.
16. S. Harrington (1987): “Computer Graphics - a Programming approach”, 2nd ed. McGrawhill, New
York, 1987.
17. Ullman (2008): &quot;Analysis and Design of Algorithm&quot;, McGrawhill, New York, 2008.
18. Goodman (2002): “Introduction to the Design &amp; Analysis of Algorithms”, TMH-2002.
19. Naughton and Schildt (1999): “The Complete Reference Java 2”, Tata McGraw Hill 1999.
20. Deitel (2004): &quot;Java How to Program&quot;, Fifth Edition. Pearson Education, 2004.

21. Alfred V. Aho, Ravi Sethi and J.D. Ullman (1986): “Compilers- Principles, Techniques and tools”,
Addison Wesley, 1986.
22. Elmarsi (2004): “Fundamentals of Database Systems”, 6 th Edition, Pearson Education, 2004.
23. R. Ramakrishnan (1998): “Database Management Systems”, McGraw Hill, International Editions,