Documente Academic
Documente Profesional
Documente Cultură
2012
INTRODUCTION
S
hopping has long been considered a recreational activity
by many. Shopping online is no exception. The goal of this
application is to develop a web based interface for online
retailers. The system would be easy to use and hence make the
shopping experience pleasant for the users.
2012
OBJECTIVE
2012
the difference between the Ajax empowered user interfaces vs. traditional
user
interfaces.
Provide Interactive interface through which a user can interact with
different areas
of application 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.
.
PROJECT CATEGORY
R
elational database management system was never designed to allow
for the nested structure. It is hard to confuse a relational database
with an object-oriented database. In the relational database, complex
objects must be broken up and stored in separate tables. The relational model,
however, suffers at least one major advantage. It is difficult to express the
semantics of complex objects with only a table model for data storage.
Although relational database are adequate for accounting or other typical
transaction processing applications where the data types are simple and few in
number, the relational model offers limited help when data types become
numerous and complex. Relational database are favored when the values of the
database elements carry the key information. RDBMS were originally designed
2012
for mainframe computer and business data processing applications. Relational
database are favored when the values of the database elements carry the key
information that is object oriented models capture the structure of the data.
Relational model organize the data itself. If a record can be understood in
isolation, then the relational database is probably suitable. If a record make
sense only in the context of other records, then an object-oriented database is
more appropriate. The relational database does not understand a global request
and thus cannot optimize multiple requests.
R
DBMS must maintain data integrity that is relational database need
to ensure that if data in multiple tables is updated, all of the updates
take place. RDBMS store data in such a way that redundant data is
eliminated through some type of compression. Every RDBMS provides some
sort of security for the database that it manages. Most RDBMS strive to
maintain separation between the actual data & business logic, which ensures
that the databases maintained in a constant state.
2012
SOFTWARE REQUIREMENT
2012
2012
2012
ER-DIAGRAM
2012
2012
Use Case Diagram
Class Diagram
2012
2012
Code Efficiency
T
he code has been designed using features of PHP 5.0so as to reduce
coding and generate more efficient code. This has been accomplished
by using module facility of PHP 5.0. Here in functions once have
been defined and used in different places for automatic uploading of code.
To generation of the order number uses the function written in the module
‘GrainMod’ and it is used in the order form of purchase and sales.
In the program whenever we applying the coding to check the input form if
character value is needed then numeric or special characters can’t be given. If
numeric or special characters are pressed then at the moment the message box
appear to show the warning that “only character values are accepted”. This will
be followed in the case of numeric values. If any entry is blank in the form then
an error message will be produced that “Please fill all details”.
If the linking is not proper means if the connectivity is not possible then at ones
it displays the message that “Access is not properly work”. In the date is
selected using date picker tool and format of this is defined in which it will be
stored in the table. So there is no need to enter the date only select.
If any user missed its password and want to use the program then an error
message will be generated that password is wrong.
If administrator wants to see the report (say, the purchases in a month) then the
administrator will be able to see the reports as quickly as possible, which is
done in this project.
Since this software handles all the expected or unexpected errors and never
crashes and also gives the results in time, it is said to be code efficient.
2012
Optimization of Code
O
ptimization is examining the application’s performance, and then
making decisions about which part of the code to modify to enhance
that performance. Performance refers to
Algorithm performance
Image size (disk space)
Memory utilization
Network performance
User interface performance
Most of the time, we will not be able to optimize for individual performance
characteristic. For example, optimizing to reduce the compiled size of an
executable (called the image) typically reduces execution speed, and
optimization for speed often results in an increased disk image size.
2012
DATA STRUCTURE
D
ata structure is a way to organize the data in some way so we can do
the operation on these data in effective way. Some examples of data
structure table are listed below:
Master Tables: -
role_id int 10
status tinyint 4
2012
2. Table Name: - Cart Product
Field Name Data Type Size Key Constraints
id int 10 Primary Key
product_id varchar 255
2012
5. Table Name: - Customer Address
Field Name Data Type Size Key Constraints
address_id int 10 Primary Key
first_name varchar 256
contact_no int 10
zip_code tinyint 4
2012
id int 10 Primary Key
category_id varchar 256
2012
8. Table Name: - Product Images
Field Name Data Type Size Key Constraints
id int 10 Primary Key
product_id varchar 256
payment_method int 10
sub_total tinyint 4
2012
10. Table Name: - Sales Order Address
Field Name Data Type Size Key Constraints
id int 10 Primary Key
billing_name varchar 256
2012
product_id varchar 256
Testing
There are several validationchecks,which have been used in myproject.
At the very first screen (Splash Screen), ‘Have a Floppy’
2012
Button is used to enter in to the software without typing ‘UserName’
and ‘Password’. If any one pressed this button and not inserted the
floppy, then a message box is appeared alerting the user for ‘No
Floppy in Drive’.
In all over the project each textbox accepts only those
characters and keys which are allowed.
In text type fields only a-z, A-Z, Enter, Space, and
BackSpace keys are valid.
In Numeric type fields only 0-9, Enter, Space, and
BackSpace keys are valid.
In Mixed type fields only 0-9, a-z, A-Z, Enter, Space, and
BackSpace keys are valid.
At the time of saving all of the fields are checked for Nil
value (as required).
In all of the entry forms if we press ‘Add New’ Button, the
Navigation buttons disables. After saving the record, navigation
buttons are enabled.
Firm Name and Item Name is chosen from the list, so that
no errors in choosing.
In the order received form if the order is completed, ‘Add
New’ Button is disabled.
Similarly in order dispatched form, if all items are
dispatched, ‘Add New’ Button is disabled.
In Payments form if balance is ‘0’ (Zero) then ‘Add New’
Button is disabled.
In the Same form if Amount paid by Cheque or Draft is ‘0’
(Zero) then it is not necessary to enter Cheque or Draft details.
2012
Testing Techniques
S
oftware testing is one of the most important activities in the Software
Development Life Cycle (SDLC). Almost every organization is now
using disciplined test planning and some objective criteria. Almost
every project that is designed up to its fulfillment is said to be technically
incorrect or in other terms abortive until unless it passes the testing phase. The
development of any software system via the human source is undoubtedly error
prone, thus the errors which are occurring in the midst of the programs have to
be seriously dealt with and for this testing is essential. In fact testing is one step
in the software engineering process that is generally considered to be
destructive rather than constructive.
2012
to occur at every inception of the process where the objective may be
erroneously or imperfectly specified as well as later design and development
stages. Because of human inability to perform and communicate with
perfection, software development is accomplished by quality assurance activity.
The increasing visibility of software as a system element and attendant costs
associated with the software failure are motivating forces for well planned
through testing.
Testing Stratigies
A
number of testing strategies have been proposed, all provide the
software developer. With a template for testing and all have the
following generic characteristics –
Testing begins at the component level and work “outward” towards the
integration of the entire computer based system.
Different testing techniques are appropriate at different points in time.
The developer of the software and an independent group conducts
testing.
Unit Testing:
Unit testing focuses verification effort on the smallest unit of software design
the software components or module… in unit testing different module are tested
against the specifications produced during design for the module. Unit testing is
essentially for verification of the code produces during the coding phase and
hence the goal is to test the internal logic of the modules. A module is
2012
considered for integration and used by others only after it has been unit tested
satisfactory. In unit testing test of data flow across a module interface are
required before any other test is initiated. If data do not enter and exit properly,
all other tests are moot. Selective testing of execution of paths is an essential
task during the unit test cases should be designed to uncover errors due to
erroneous computations, incorrect comparison or improper control flow basis
path and loop testing are effective techniques for uncovering a broad array of
path errors.
O ur project has several modules and each module has passed through
unittesting :
Integration Testing
The Integration testing of our project is divided into following test phases –
User interaction
2012
Data manipulation
Display processing
Database management
Interface integrity- Internal and External interfaces are tested as each module
is incorporated into the structure.
T
ests designed to verify performance bounds established during
software design are conducted. Facility will have to be provided for
multiple archival in case of important data, which should not be lost.
Selected data purging will also have to be undertaken to ensure that redundant
data dose not occupy unnecessary space on the disk or on the back up media. A
methodology for the same would have to be evolved to ensure that no useful
data is purged by mistake.
2012
TOOLS & PLATFORM
FRONT-END: PHP
BACK-END: MY-SQL
2012
OPERATING SYSTEM: WINDOWS 2000/WINDOWS
XP/VISTA
PHP:
PHP is a general-purpose server-side scripting language originally designed for web
development to produce dynamic web pages. For this purpose, PHP code is embedded into
the HTML source document and interpreted by a web server with a PHP processor module,
which generates the web page document. It also has evolved to include a command-line
interface capability and can be used in standalone graphical applications.[2] PHP can be
deployed on most web servers and as a standalone interpreter, on almost every operating
system and platform free of charge.[3] There is also commercial software such as RadPHP, a
rapid application development framework for the PHP language. A competitor to Microsoft's
Active Server Pages (ASP) server-side script engine[4] and similar languages, PHP is installed
on more than 20 million websites and 1 million web servers.[5]
PHP was originally created by Rasmus Lerdorf in 1995. The main implementation of PHP is
now produced by The PHP Group and serves as the de facto standard for PHP as there is no
formal specification.[6] PHP is free software released under the PHP License which is
incompatible with the GNU General Public License (GPL) due to restrictions on the usage of
the term PHP
MY-SQL
MySQL, the most popular Open Source SQL database management system, is developed,
distributed, and supported by MySQL AB. MySQL AB is a commercial company, founded
by the MySQL developers. It is a second generation Open Source company that unites Open
Source values and methodology with a successful business model.
MySQL is a relational database management system (RDBMS) which has more than 6
million installations. The program runs as a server providing multi-user access to a number of
databases.
XML
2012
XML is a markup language for documents containing structured information.
XML’s design goals emphasize simplicity, generality, and usability over the Internet. It is a
textual data format, with strong support via Unicode for the languages of the world. Although
XML’s design focuses on documents, it is widely used for the representation of arbitrary data
structures, for example in web services.
APACHE TOMCAT :
Apache Tomcat is an open source software implementation of the Java Servlet and JavaServer
Pages technologies. The Java Servlet and JavaServer Pages specifications are developed under
the Java Community Process.
Apache Tomcat is developed in an open and participatory environment and released under
the Apache Software License. Apache Tomcat is intended to be a collaboration of the best-of-breed
developers from around the world.
Tomcat implements the Java Servlet and the JavaServer Pages (JSP) specifications
from Sun Microsystems, and provides a "pure Java” HTTP web server environment
for Java code to run.
2012
REQUIREMENT SPECIFICATION
2012
Minimum 8x CD-ROM drive.
Printer
5.2Software Requirements
Windows 98 onwards
MS-office
Tomcat server 4.1 onwards
Java 1.5 or higher (with RMI tool)
MY-SQL
XML (for report generation, HTML for displaying reports)
On
be: -
line Shopping Initial functional requirements will
2012
Browsing through the e-shop to see the items that are there in
each category of products like Apparel, Kitchen accessories, Bath
accessories, Food items etc.
Customers should be able to mail the Shop about the items they
would like to see in the Shop
Secured mechanism for checking out from the Shop (Credit card
verification mechanism)
2012
can be given on the performance of particular vendors and the
entire shop as well.
24 X 7 availability
Category wise items that are sold more and the brand names for
the same
2012
More payment gateways.
INTRODUCTION
S
hopping has long been considered a recreational activity
by many. Shopping online is no exception. The goal of this
application is to develop a web based interface for online
retailers. The system would be easy to use and hence make the
shopping experience pleasant for the users.
2012
OBJECTIVE
2012
2
Solution:
The motive of this Online Shopping Web Application is to allow the user
to play
with the search tool and create different combinatorial search criterion to
perform
exhaustive search.
Making the application AJAX enabled gets rid of these unnecessary
delays letting
the user to perform exhaustive search. The users of this application can
easily feel
the difference between the Ajax empowered user interfaces vs. traditional
user
interfaces.
Provide Interactive interface through which a user can interact with
different areas
of application 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.
.
PROJECT CATEGORY
R
elational database management system was never designed to allow
for the nested structure. It is hard to confuse a relational database
with an object-oriented database. In the relational database, complex
objects must be broken up and stored in separate tables. The relational model,
however, suffers at least one major advantage. It is difficult to express the
2012
semantics of complex objects with only a table model for data storage.
Although relational database are adequate for accounting or other typical
transaction processing applications where the data types are simple and few in
number, the relational model offers limited help when data types become
numerous and complex. Relational database are favored when the values of the
database elements carry the key information. RDBMS were originally designed
for mainframe computer and business data processing applications. Relational
database are favored when the values of the database elements carry the key
information that is object oriented models capture the structure of the data.
Relational model organize the data itself. If a record can be understood in
isolation, then the relational database is probably suitable. If a record make
sense only in the context of other records, then an object-oriented database is
more appropriate. The relational database does not understand a global request
and thus cannot optimize multiple requests.
R
DBMS must maintain data integrity that is relational database need
to ensure that if data in multiple tables is updated, all of the updates
take place. RDBMS store data in such a way that redundant data is
eliminated through some type of compression. Every RDBMS provides some
2012
sort of security for the database that it manages. Most RDBMS strive to
maintain separation between the actual data & business logic, which ensures
that the databases maintained in a constant state.
SOFTWARE REQUIREMENT
Processor : Pentium 4
RAM : 32 MB (min 128 MB Recommended for
higher version of windows)
FDD : 3.5’’ 1.44 MB
HDD : 75 MB of free Hard Disk space(min 10
2012
MB virtual space recommended)
Monitor : 17’’ SVGA Monitor
Keyboard : Microsoft standard 108 keys normal
keyboard
Mouse : Microsoft standard 3 button Optical
Mouse
SYSTEM ANALYSIS
2012
IDENTIFICATION OF NEED
The Online Shopping application enables vendors to set up online
shops, customers to browse through the shops, and a system
administrator to approve and reject requests for new shops and maintain
lists of shop categories.
Our online shopping will use the internet as the sole method
for selling goods to its consumers. The consumer will be in complete
control of his/her shopping experience by using the “unique storefront”
concept. Shopping will be highly personalized and the shop will provide
lower prices than most competitors. This, in brief, is a description of our
2012
product which will showcase a complete shopping experience in a small
package.
Purpose
Today the internet and its boom have created a new economic
scenario that not only stresses on the classical concept of the
“product” but also on the modern concept of “service”. It is this
level of service that dictates whether a commercial venture will
succeed or not in the market. To provide a high accessibility of
service we will design the online shopping website, so that
potential customers need not go to a physical shop to buy
products or services. They just need to online to complete their
purchases. Unlike the prevailing “brick and mortar” shops which
have physical existence, we will operate solely from cyberspace.
This project envisages bridging the gap between the seller, the
retailer and the customer. A very high flexibility is being
maintained in the design process so that this project can take
the following path : -
A multiple merchant venue with each merchant
having his/her own window which the customer
can visit to browse and subsequently buy the
products from
Maintaining the deliverable goods as well as services through
single or multiple windows is also on the agenda.
Target users :
2012
(Tentative list only)
Employees:
2012
Accounts department under an Accounts manager to look after the accounting
activities of the enterprise.
FEASIBILITY STUDY
To find out whether the purposed project is feasible or not I did three types of
feasibility study which are given below:
2012
T he consideration that are normally associated with technical
feasibility include-
1. Development risk
2. Resource availability
3. Technology
By studying out technical feasibility I find that our project is
technically feasible as the technology required for the system, are
easily available. Further the current system works manually. The
necessary technologies exist to do what is suggested. The
proposed equipments have the technical capacity to hold
the data of about 20+ years. So the purposed system is
technically feasible.
4.2 Economical Feasibility
I
n this economical study we deal with the finance, means we check
out that if our system estimated cost matches with the cost
provided by the user. A system that can be developed technically and
that will be used if installed must still be practicable for the organization.
Financial benefits must equal or exceeds the costs. Since there are
currently three clerks and a accountant.
As we see that about Rs. 1.5 lacks can be saved by the proposed system.
So it is economically feasible.
F
or checking out operational feasibility of the system first
of all I find out answer to the following questions these
are given below;
2012
Is there sufficient support for the project from the
management?
I attended several meetings with the management and authorities
of the firm and talked with them in reference to the project and
tried to find out their view and concluded that they all are ready to
cooperate with me.
Are current business methods acceptable to the users?
When I met with the clerks and employees of the firm and talked
to them I find out that they are satisfied with the current business
methods but hopes that if it is replaced by the computerized system
then their workload will be reduced and their work became easy
and fast.
Have the users been involved in the planning and development
of the project?
I met the clerks and accountant a number of time during the project
and tried to get the exact working scenario of the firm, How they
work, What are the information that are to be stored and how they
store them. What types of reports they generally require. What are
the errors they do in managing the information? I study their views
and ideas and concentrate myself on those for which I think will be
needed for the good working of the system.
2012
T
he software requirements specification is produced at the
culmination of the analysis task. The function and performance
allocated to software as part of system engineering are refined by
establishing a complete information description a detailed functional and
2012
behavioral description, an indications of performance requirements and design
constraints, appropriate validation criteria and other data pertinent to
requirements. The National Bureau of standard IEEE and the US Department of
Defense have all proposed candidate formats for software requirements
specifications. For our purpose however the simplified outline presented may be
used as a framework for the specification.
2.4.1. Introduction
Information Gathering
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. Dr Andresen, Associate Professor, CIS
provided regular feedback on the project.
Users can be classified into two types based on their knowledge of the
products that suit their needs. They can be classified as users who know about
the product that would satisfy their needs and users who have to figure out the
product that would satisfy their needs. Users who know about the product should
be able to find the product easily with the click of a button. Such users can
search for the product by using the product name as the search term. Users who
have to figure out the product that would satisfy their needs could use a search term
to find a list of pr oducts and then should be able to filter the results based on
various parameters like product type, manufacturer, price range, platform
supported etc.
The users should be able to view the complete specification of the pr oduct and
various images at different Zoom levels. 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 b y 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 b y dragging the product and dropping it outside the cart.
The application can be made interactive by pop up messages when a pro duct has
been dropped in to the shopping cart or out of the shopping cart. The user can be
notified
2012
Purpose – The purpose of this document is to describe all external
requirements of software for Online shopping.
Scope – This document is the only one that describes the requirements of
the system. It is meant for use by the developers and will also be the basis
for validating the final delivered system. Any changes made to the
requirement in the future will have to go through a formal change approval
process. The developer is responsible for asking to clarify where and will
not make any alterations without the permission of the client.
The scope of study is limited to
Suggest a proposed solution to achieve defined objectives.
Suggest Hardware Configuration required for the proposed solution.
Formulate the application software specification.
Provide budgetary estimates for implementation of the proposed
solution.
Suggest prioritization and phasing of the proposed solution.
Suggest infrastructures and training requirements for the proposed
solution.
2012
(c) Conducting user training that might be needed for using the system
and maintaining the software for a period of one year after
installation.
Functional Change –
1. The main functional change in the system is that there is no
longer need to maintain stock register manually because it is now
done by an automated system.
2. The Money receipt should be generated by system on preprinted
pre-numbered stationary. These receipts should be in the forms of
computer stationery rolls and to be issued to respective counters
stationery rolls and to be issued to respective counters daily by the
competent authority of accounts and reconciled at the time of daily
closing.
2012
3. All the predictions they made, formerly on their heuristics, is now
more realistic and more accurate with the help of Graphical Decision
Support System. For this system they have to enter the rate of all the
items daily.
2.4.2.2 User Characteristics – The users of this system are Managers,
Accountant, or clerks or a computer operator.
2.4.2.3 General Constraint – The System should run on Web Apps
family (PHP, ASP.net) and for database ACCESS is used.
2.4.2.4 General Assumption and Dependencies – Not applicable.
2012
should specify the behavior of the system for invalid inputs and
invalid outputs.
2.4.3.2 Detailed Input file format – For file format refer to design
section.
S
tatic Requirements are those that do not impose constraint on the
execution characteristics of the system. These include requirements
like the number of terminals to be supported, the number of terminals
to be supported, the number of simultaneous users to be supported and the
numbers of files that the system has to process and their sizes. These are also
called capacity requirements of the system.
2012
D
ynamic Requirements specify constraints on the execution
behavior of the system. These typically include response time and
throughput constraints on the system. Response time is the
expected time for the completion of an operation under specified
circumstances. Throughput is the expected number of operations that can be
performed in a unit time.
Our project has good performance its static and dynamic both requirements
are fulfill. The dynamic performance of our project is excellent. Software is
capable to analyze and give output of any user query in a good response time.
System process transaction quickly.
Minimum Recommended
Component
Requirements Requirements
2012
Processor Intel Pentium II Intel Pentium 4
Processor Processor
Memory 32 MB 128 MB
2012
DESIGN
2012
DATA STRUCTURE USED
L ike any other product, a software product completes a cycle from its
inception to obsolescence/replacement/wearing out.
The process of software development not only needs writing the program and
maintains it, but also a detail study of the system to identify current
requirements related to software development as well as to anticipate the future
2012
requirements. It also needs to meet the objective of low cost, and good quality
along with minimum development time.
T
o manage the project objectively it is important that product
development phase should be divided into phases so that project’s
progress and change in requirement can be controlled along with the
quality of the product. Following are the general phases in the life cycle of a
software product:
Requirement analysis and specification for clear understanding of the
problem.
Software design for planning the solution of the problem.
Coding (implementation) for writing program as per the suggested
solution.
Testing for verifying and validating the objective of the product.
Operation and maintenance for use and to ensure its availability to
users.
This application was also developed in phases for effective output. Each phase
was given its due importance with respect to time and cost. The time scheduling
is later described in the PERT and Gantt chart. The system development life
cycle of Online Shoppingis shown below.
Designing
Coding
2012
Approach for software development:
2012
Water Fall Model:
I
t includes a sequential approach to software development. It includes
phases like task definition, analysis, design, implementation, testing
and maintenance. The phases are always in order and are never
overlapped.
Design
Implementation
Testing and
Maintenance
SUBMITTED BY: - ARVIND YADAV REGISTRATION NO: -0628197
1
[“ONLINE SHOPPING”]
2012
Prototyping:
I
n this model we develop a working prototype with the available
requirement details and get feedback of the customer for the actual
requirement of the product to develop the product. Prototype is the
trimmed version of the actual product with limited features and functionality
Requirement Design Implementation
and with low level of reliability. This was model followed while developing
Online Shopping.
Improve the Specification Evaluation
Design
The prototyping Model:
Implement
Testing
SUBMITTED BY: - ARVIND YADAV REGISTRATION NO: -0628197
1
Operation and
Maintenance
[“ONLINE SHOPPING”]
2012
Spiral Model:
S
piral model provides a framework for designing the software
production process, guided by the risk levels in the project at hand. It
suggests iterative production of prototypes during a process controlled
by the linear sequential model.
Following steps are used in spiral model for each phase.
Spiral Model
2012
Planning Risk Analysis
Toward a
Complete system
2012
2012
2012
ER-DIAGRAM
2012
2012
2012
Use Case Diagram
Class Diagram
2012
2012
Design Goals
The design of the web application involves the design of the fo rms for listing the
products, search for products, display the complete specification for the product,
and design a shopping cart that is easy to use.
•
Design of an interactive application that enables the user to filter the products
based on different parameters.
•
Design of an application that has featur es like drag and drop etc.
•
Design of application that decreases data transfers between the client and the
server.
2012
Architectural Context Diagram
2012
DATA STRUCTURE
D
ata structure is a way to organize the data in some way so we can do
the operation on these data in effective way. Some examples of data
structure table are listed below:
Master Tables: -
role_id int 10
status tinyint 4
2012
14. Table Name: - Cart Product
Field Name Data Type Size Key Constraints
id int 10 Primary Key
product_id varchar 255
2012
17. Table Name: - Customer Address
Field Name Data Type Size Key Constraints
address_id int 10 Primary Key
first_name varchar 256
contact_no int 10
zip_code tinyint 4
2012
id int 10 Primary Key
category_id varchar 256
2012
name varchar 256
2012
order_date varchar 256
payment_method int 10
sub_total tinyint 4
2012
billing_address2 varchar 256
2012
24. Table Name: - Sales Order Items
Field Name Data Type Size Key Constraints
id int 10 Primary Key
sess_id varchar 256
Home Page
SUBMITTED BY: - ARVIND YADAV REGISTRATION NO: -0628197
1
[“ONLINE SHOPPING”]
2012
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
//print_r($_SERVER);
?>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-
1" />
<title> Index</title>
<link rel="stylesheet" type="text/css" href="css/styles.css" />
<!--[if gte IE 5.5]>
<![if lt IE 7]>
<style type="text/css">
div.feedback {
/* IE5.5+/Win - this is more specific than the IE 5.0 version */
right: expression( ( 0 + ( ignoreMe2 =
document.documentElement.scrollRight ?
document.documentElement.scrollRight : document.body.scrollRight ) ) +
'px' );
top: expression( ( 250 + ( ignoreMe =
document.documentElement.scrollTop ? document.documentElement.scrollTop
: document.body.scrollTop ) ) + 'px' );
}
</style>
2012
<![endif]>
<![endif]-->
</head>
<body>
<div id="main">
<!-- START: Header -->
<?php include_once 'includes/header.php';?>
<?php include_once 'Product.php';?>
<?php include_once 'includes/lib/image/ThumbBase.php';?>
<?php include_once 'includes/lib/image/PhpThumb.php';?>
<?php include_once 'includes/lib/image/GdThumb.php';?>
<?php include_once 'includes/lib/image/Plugins/GdReflectionLib.php';?
>
<?php include_once 'includes/lib/image/PhpThumbFactory.php';?>
2012
<div class="products_cont1"><a
href="product_view.php"><img src="<?php echo
Product::getProductImage('mobile.jpg',100,100);?>" alt="" /></a></div>
<div class="clearAll spacer10"></div>
<p class="product_name">Sanyo 8.1 MP Digital
Camera</p>
<div class="clearAll spacer5"></div>
<p class="product_price">MRP: <span>Rs.
8990</span></p>
<div class="clearAll spacer5"></div>
<div class="price_box">You Pay:
<strong>5299</strong></div>
<div class="clearAll spacer2"></div>
<div class="buy_now">
<img src="images/buyNow-icn.png" alt="" /> <a
href="#">Buy Now</a> | <a
href="product_view.php">Details</a>
</div>
</div>
<div class="content_cols">
<div class="products_cont1"><a
href="product_view.php"><img src="images/mobile.jpg" alt="" /></a></div>
<div class="clearAll spacer10"></div>
<p class="product_name">Blue Mobile Phone - 450z</p>
<div class="clearAll spacer5"></div>
2012
<p class="product_price">MRP: <span>Rs.
8990</span></p>
<div class="clearAll spacer5"></div>
<div class="price_box">You Pay:
<strong>5299</strong></div>
<div class="clearAll spacer2"></div>
<div class="buy_now">
<img src="images/buyNow-icn.png" alt="" /> <a
href="#">Buy Now</a> | <a
href="product_view.php">Details</a>
</div>
</div>
<div class="content_cols">
<div class="products_cont1"><a
href="product_view.php"><img src="images/pmp.jpg" alt="" /></a></div>
<div class="clearAll spacer10"></div>
<p class="product_name">Fujezone 2GB PMP</p>
<div class="clearAll spacer5"></div>
<p class="product_price">MRP: <span>Rs.
8990</span></p>
<div class="clearAll spacer5"></div>
<div class="price_box">You Pay:
<strong>5299</strong></div>
<div class="clearAll spacer2"></div>
<div class="buy_now">
2012
<img src="images/buyNow-icn.png" alt="" /> <a
href="#">Buy Now</a> | <a
href="product_view.php">Details</a>
</div>
</div>
<div class="clearAll"></div>
</div>
<span class="content_BR"><span
class="content_left"></span></span>
</div>
</div>
</div>
<!--END: Left Column-->
2012
<a href="#"><img src="images/joinNow-btn.gif" alt="Join
Now" /></a>
</div>
2012
<div class="voice_clouds">Sizes matters <br />Sizes
matters</div>
</div>
<div class="clearAll spacer10"></div>
</div>
2012
<div class="clearAll spacer20"></div>
</div>
<!--END: Right Column-->
2012
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
2012
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
2012
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
</div>
<div class="clearAll"></div>
</div>
<span class="recent_box_BR"><span
class="recent_box_Left"></span></span>
</div>
<!--END: Recently Viewed Cont-->
2012
<div class="browse_cols">
<h3>Follow us on</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#"><img src="images/twitter.gif" alt=""
class="vam" /> Twitter</a></li>
<li><a href="#"><img src="images/facebook.gif" alt=""
class="vam" /> Facebook</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>about us</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Who we are</a></li>
<li><a href="#">Partner with us</a></li>
<li><a href="#">Contact us</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>customer support</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Feedback</a></li>
<li><a href="#">FAQs</a></li>
2012
<li><a href="#">Shipping & Returns</a></li>
<li><a href="#">Reach us</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>payment options</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Credit card</a></li>
<li><a href="#">Debit card</a></li>
<li><a href="#">Internet Banking</a></li>
<li><a href="#">Cash on Delivery</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>safe shopping</h3>
<div class="clearAll"></div>
<ul>
<li><img src="images/safe_shopping_logos.gif" alt=""
/></li>
</ul>
</div>
<div class="clearAll"></div>
</div>
</div>
2012
<!--END: Browse-->
<div class="clearAll"></div>
<!--START: Footer-->
<div id="footer">
<ul>
<li class="flLt">Copyright � 2010 </li>
<li class="flRt"><a href="#">Privacy
Policy</a> <a href="#">Terms of Use</a></li>
</ul>
</div>
<!--END: Footer-->
</div>
</body>
</html>
PRODUCT VIEW
2012
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-
1" />
<title>Product Edited</title>
<link rel="stylesheet" type="text/css" href="css/styles.css" />
<!--[if gte IE 5.5]>
<![if lt IE 7]>
<style type="text/css">
div.feedback {
/* IE5.5+/Win - this is more specific than the IE 5.0 version */
right: expression( ( 0 + ( ignoreMe2 =
document.documentElement.scrollRight ?
document.documentElement.scrollRight : document.body.scrollRight ) ) +
'px' );
top: expression( ( 250 + ( ignoreMe =
document.documentElement.scrollTop ? document.documentElement.scrollTop
: document.body.scrollTop ) ) + 'px' );
}
</style>
<![endif]>
<![endif]-->
</head>
<body>
<div id="main">
<!--START: Header-->
<?php include_once 'includes/header.php'; ?>
<div class="clearAll spacer5"></div>
<!--START: Left Column-->
2012
<?php
if (isset($_GET['p_id'])) {
$id = $_GET['p_id'];
//$query='SELECT p.id,p.name, price, p.special_price,
p.special_price_from, p.special_price_to, p.min_qty_allowed,
p.max_qty_allowed, p.stock_status FROM product p WHERE p.id=\'' . $id . '\'';
$result = $dbBean->selectQuery('SELECT p.id,p.name, price,
p.special_price, p.special_price_from, p.special_price_to, p.min_qty_allowed,
p.max_qty_allowed, p.stock_status FROM product p WHERE p.id=\'' . $id . '\'')
or print mysql_error();
if ($result) {
if (($row = mysql_fetch_assoc($result))) {
$prodLink = 'product_view.php?p_id=' . $row['id'];
if (isset($row['special_price']) && intval($row['special_price'])
> 0) {
$price = $row['special_price'];
$basePrice = $row['price'];
} else {
$price = $row['price'];
}
?>
<div id="prod_left_col">
<div class="prod_title_cont">
<div class="prod_title_right_cont">
<div class="prod_title_mid_cont">
<h3 class="flLt"><?php echo $row['name'] ?></h3>
</div>
2012
</div>
</div>
<div class="clearAll"></div>
<div class="margin10">
<div class="product_detail_box">
<div class="product_pic_box">
<img src="images/htc_touch.jpg" alt="htc_touch" />
<div class="zoom2"></div>
</div>
<div class="product_details">
<div>MRP: Rs.8990</div>
<div class="spacer5 clearAll"></div>
<p>You pay: Rs.5299</p>
<div class="spacer10 clearAll"></div>
<label>Select Color:</label> <span>Red</span>
<div class="spacer15 clearAll"></div>
<label>Quantity:</label> <input type="text"
value="1" size="3" />
<div class="spacer15 clearAll"></div>
<a href="cart.php"><img src="images/buyNow-
btn.gif" alt="Add to Cart" /></a>
<div class="spacer15 clearAll"></div>
</div>
<ul class="products_list">
<?php
2012
$iresult = $dbBean->selectQuery('SELECT
image_path,is_default FROM product_images WHERE product_id=\'' . $id . '\'')
or print mysql_error();
$images = array();
if ($iresult) {
while (($irow=mysql_fetch_assoc($iresult))) {
?>
<li class="selected_prod"><a href="#"><img src="<?
php echo BASE_URL.'/uploads/product_images/'.$irow['image_path']?>"
alt="<?php echo $row['name'] ?>" /></a></li>
<?php }
}?></ul>
</div>
<div class="quick_look_box">
<h5>Quick Look:</h5>
<div class="spacer2 clearAll"></div>
<p>Re-defining the perception of advanced mobile
phones, thee HTC Touch Diamond™ is a giant leap forward in combining hi-
tech prowess, intuitive usability and exhilarating design.</p>
</div>
2012
<p>Re-defining the perception of advanced mobile
phones… the HTC Touch Diamond™ signals a giant leap forward in
combining hi-tech prowess with intuitive usability and exhilarating design.
Featuring a sharp 2.8-inch touch screen housed within a stunning formation of
brushed metal and flawless faceted edges, the HTC Touch Diamond is as
beautiful to behold as it is to use.<br />
With HTC's vibrant touch-responsive user interface,
TouchFLO™ 3D, and ultra-fast HSDPA internet connectivity... the HTC
Touch Diamond offers a rich online experience to rival a notebook computer,
allowing you to interact with Google, YouTube, and Wikipedia as freely as you
would with a broadband connection.<br />
Your contacts, favourite music, videos and photos
are no longer an uninspired line of text. With TouchFLO 3D, album artwork,
video stills and snapshots of your friendsÂ’ and familyÂ’s faces are brought to
life for you to interact, play and launch at your fingertips. A 3.2 megapixel auto-
focus camera will help you capture the perfect moment in style and with a
massive 4GB of internal storage you can keep all the files you need. The
integrated ultra-sensitive GPS will help you find your destination as quickly and
efficiently as a dedicated satellite navigation unit.
Style and substance in a phone are no longer
mutually exclusive. The HTC Touch Diamond has arrived.</p>
</div>
</div>
</div>
<div class="clearAll spacer5"></div>
2012
</div>
<?php }
}
} ?>
<!--END: Left Column-->
2012
<a href="#"><img src="images/close-icn.gif" alt="" /></a>
<div class="clearAll"></div>
<div class="my_cart_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll"></div>
<p><strong>Sony VAIO VGN-TXN</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
</div>
</div>
<div class="checkout_cart">
<strong>Your Cart Value is <span>Rs.12,500</span></strong>
<div class="clearAll spacer8"></div>
<div class="tar"><a href="#"><img src="images/checkout-cart-
btn.gif" alt="" /></a></div>
</div>
</div>
<div class="clearAll spacer20"></div>
</div>
<!--END: Right Column-->
2012
<div class="recent_box">
<span class="recent_box_TR"><span
class="recent_box_Left"></span></span>
<div class="recent_child_box">
<div class="recent_viewed_col">
<div class="recent_viewed_arrow"><img
src="images/recently_view.gif" alt="" /></div>
<p>An easy way to navigate back to the Bachat Deals that
interested you</p>
</div>
<div class="recent_prod_main">
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
2012
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
2012
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
</div>
<div class="clearAll"></div>
</div>
<span class="recent_box_BR"><span
class="recent_box_Left"></span></span>
</div>
2012
<!--END: Recently Viewed Cont-->
<div class="browse_cols">
<h3>Follow us on</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#"><img src="images/twitter.gif" alt=""
class="vam" /> Twitter</a></li>
<li><a href="#"><img src="images/facebook.gif" alt=""
class="vam" /> Facebook</a></li>
</ul>
</div>
2012
<div class="browse_cols">
<h3>about us</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Who we are</a></li>
<li><a href="#">Partner with us</a></li>
<li><a href="#">Contact us</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>customer support</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Feedback</a></li>
<li><a href="#">FAQs</a></li>
<li><a href="#">Shipping & Returns</a></li>
<li><a href="#">Reach us</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>payment options</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Credit card</a></li>
2012
<li><a href="#">Debit card</a></li>
<li><a href="#">Internet Banking</a></li>
<li><a href="#">Cash on Delivery</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>safe shopping</h3>
<div class="clearAll"></div>
<ul>
<li><img src="images/safe_shopping_logos.gif" alt=""
/></li>
</ul>
</div>
<div class="clearAll"></div>
</div>
</div>
<!--END: Browse-->
<div class="clearAll"></div>
<!--START: Footer-->
<div id="footer">
<ul>
<li class="flLt">Copyright © 2011.</li>
<li class="flRt"><a href="#">Privacy
Policy</a> <a href="#">Terms of Use</a></li>
</ul>
2012
</div>
<!--END: Footer-->
</div>
</body>
</html>
PRODUCT CATEGORIES
2012
document.documentElement.scrollRight : document.body.scrollRight ) ) +
'px' );
top: expression( ( 250 + ( ignoreMe =
document.documentElement.scrollTop ? document.documentElement.scrollTop
: document.body.scrollTop ) ) + 'px' );
}
</style>
<![endif]>
<![endif]-->
</head>
<body>
<div id="main">
<!-- START: Header -->
<?php include_once 'includes/header.php'; ?>
<!-- END: Menu -->
<div class="clearAll spacer5"></div>
<div id="breadcrumbs"><a
href="#">Home</a><span>›</span><strong>Mobiles</strong></div>
<div class="clearAll spacer5"></div>
<!--START: Left Column-->
<div id="category_left_col">
<h2>Mobiles</h2>
<div class="clearAll spacer5"></div>
<div class="margin5">
<h6>Refine by Price:</h6>
<ul>
<li><a href="#">Under Rs. 1,500 (8)</a></li>
2012
<li><a href="#">Rs.1,500 - Rs.3,000 (2)</a></li>
<li><a href="#">Rs.1,500 - Rs.3,000 (2)</a></li>
<li><a href="#">Rs.1,500 - Rs.3,000 (2)</a></li>
</ul>
<h6>Refine by Brand:</h6>
<ul>
<li><a href="#">Apple (8)</a></li>
<li><a href="#">Blackberry (2)</a></li>
<li><a href="#">Apple (8)</a></li>
<li><a href="#">Blackberry (2)</a></li>
<li><a href="#">Apple (8)</a></li>
<li><a href="#">Blackberry (2)</a></li>
</ul>
</div>
</div>
<!--END: Left Column-->
<div class="pagings">
<div class="pagings_right">
<div class="pagings_mid">
<div class="flLt">
2012
<h3 class="flLt">Sort by:</h3>
</div>
</div>
</div>
</div>
<div class="clearAll"></div>
<div class="margin5">
<?php
if (isset($_GET['id'])) {
$id = $_GET['id'];
$result = $dbBean->selectQuery('SELECT p.id,p.name, price,
p.special_price, p.special_price_from, p.special_price_to, p.min_qty_allowed,
p.max_qty_allowed, p.stock_status, pi.image_path AS image FROM product p
LEFT JOIN product_images pi ON (pi.product_id=p.id AND pi.is_default=1)
WHERE status=1 AND category_id=\'' . $id . '\'') or print mysql_error();
if ($result) {
for ($i = 0; ($row = mysql_fetch_assoc($result)); $i++) {
$prodLink = 'product_view.php?p_id=' . $row['id'];
if (isset($row['special_price']) &&
intval($row['special_price'])>0) {
$price=$row['special_price'];
$basePrice=$row['price'];
}else{
$price=$row['price'];
2012
}
?>
<div class="content_cols2">
<div class="products_cont1"><a href="<?php echo
$prodLink; ?>"><img src="images/<?php echo $row['image']; ?>" alt=""
/></a></div>
<div class="clearAll spacer10"></div>
<p class="product_name2"><?php echo $row['name']; ?
></p>
<div class="clearAll spacer5"></div>
<p class="product_price2">MRP: <span><?php echo
(isset($basePrice)?'Rs.'. $basePrice:'');?></span></p>
<div class="clearAll spacer5"></div>
<div class="price_box2">You Pay: <strong><?php echo
$price;?></strong></div>
<div class="clearAll spacer2"></div>
<div class="buy_now">
<img src="images/buyNow-icn.gif" alt="" /> <a
href="#">Buy Now</a> | <a href="<?php echo $prodLink; ?
>">Details</a>
</div>
<div class="zoom"></div>
</div>
<?php }
}
} ?>
<div class="clearAll"></div>
2012
</div>
<div class="clearAll spacer5"></div>
<div class="pagings2">
<div class="pagings_right2">
<div class="pagings_mid">
<div class="flLt">
<h3 class="flLt">Sort by:</h3>
</div>
</div>
</div>
</div>
</div>
<!--END: Mid Column-->
2012
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
</div>
<div class="checkout_cart">
<strong>Your Cart Value is <span>Rs.12,500</span></strong>
2012
<div class="clearAll spacer8"></div>
<div class="tar"><a href="#"><img src="images/checkout-cart-
btn.gif" alt="" /></a></div>
</div>
</div>
<div class="clearAll spacer20"></div>
</div>
<!--END: Right Column-->
2012
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
2012
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
<div class="recent_prod_col">
<a href="#"><img src="images/laptop_small.jpg" alt=""
/></a>
<div class="clearAll spacer5"></div>
<p><strong>Sony VAIO VGN-TXN...</strong></p>
<p>MRP: <span>Rs. 8990 </span></p>
<div class="clearAll spacer5"></div>
2012
<p class="pay_amt">You pay:
<strong>Rs.5299</strong></p>
<p class="saved_amt">You save: <strong>Rs.888</strong>
(<strong>88%</strong> off)</p>
</div>
</div>
<div class="clearAll"></div>
</div>
<span class="recent_box_BR"><span
class="recent_box_Left"></span></span>
</div>
<!--END: Recently Viewed Cont-->
2012
<div class="browse_cols">
<h3>Follow us on</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#"><img src="images/twitter.gif" alt=""
class="vam" /> Twitter</a></li>
<li><a href="#"><img src="images/facebook.gif" alt=""
class="vam" /> Facebook</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>about us</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Who we are</a></li>
<li><a href="#">Partner with us</a></li>
<li><a href="#">Contact us</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>customer support</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Feedback</a></li>
2012
<li><a href="#">FAQs</a></li>
<li><a href="#">Shipping & Returns</a></li>
<li><a href="#">Reach us</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>payment options</h3>
<div class="clearAll"></div>
<ul>
<li><a href="#">Credit card</a></li>
<li><a href="#">Debit card</a></li>
<li><a href="#">Internet Banking</a></li>
<li><a href="#">Cash on Delivery</a></li>
</ul>
</div>
<div class="browse_cols">
<h3>safe shopping</h3>
<div class="clearAll"></div>
<ul>
<li><img src="images/safe_shopping_logos.gif" alt=""
/></li>
</ul>
</div>
<div class="clearAll"></div>
</div>
2012
</div>
<!--END: Browse-->
<div class="clearAll"></div>
<!--START: Footer-->
<div id="footer">
<ul>
<li class="flLt">Copyright © 2011.</li>
<li class="flRt"><a href="#">Privacy Policy</a>
<a href="#">Terms of Use</a></li>
</ul>
</div>
<!--END: Footer-->
</div>
</body>
</html>
2012
<tr>
<td valign="top"><?php include 'leftBar.php';?></td><td>
<table width="100%" border="0" cellpadding="5"
cellspacing="5">
<tr><td> </td></tr>
<tr>
<td><p align="center" style="font-
size:14px"><strong>Registration & Accommodation
Form</strong></p></td>
</tr>
<tr>
<td class="noteText"> </td>
</tr>
<tr>
<td align="left" style="margin-left:3px;"><form name="reg"
id="reg" method="post" action="" onSubmit="javascrit:return
validationTestimonial(this);">
<?php
if(isset($_POST['sub_btn'])) {
2012
$query_iso_code="select isocode from country where
id=".$_POST['country'];
$res_iso_code = $dbBean-
>selectQuery($query_iso_code);
$iso_code = $dbBean->SelectRecord($res_iso_code);
$title=trim($_POST['title']);
$fname=trim($_POST['fname']);
$mname=trim($_POST['mname']);
$lname=trim($_POST['lname']);
$gender=trim($_POST['gender']);
$address=trim($_POST['address']);
$designation=trim($_POST['designation']);
$institution=trim($_POST['institution']);
$email=$_POST['email'];
$country=$_POST['country'];
$state=$_POST['state'];
$city=trim($_POST['city']);
$country=trim($_POST['country']);
$email=trim($_POST['email']);
$pin=trim($_POST['pin']);
$phone_number=($_POST['phone_number1'].'-'.
$_POST['phone_number2'].'-'.$_POST['phone_number3']);
$mobile_number=($_POST['mobile_number1'].'-'.
$_POST['mobile_number2']);
$fax=($_POST['fax1'].'-'.$_POST['fax2'].'-'.
$_POST['fax3']);
$reg_type=trim($_POST['reg_type']);
2012
$membership_no=trim($_POST['membership_no']);
$delegate_name1=trim($_POST['delegate_name1']);
$delegate_name2=trim($_POST['delegate_name2']);
$accomodation=trim($_POST['accomodation']);
if($accomodation==1) {
$category=trim($_POST['category']);
$categoryhotel=trim($_POST['categoryhotel']);
$categoryhotel1=trim($_POST['categoryhotel1']);
$hoteloccupancy=trim($_POST['hoteloccupancy']);
$checkingdate=($_POST['checkingyear'].'/'.
$_POST['checkingmonth'].'/'.$_POST['checkingday']);
$checkoutdate=($_POST['checkoutyear'].'/'.
$_POST['checkoutmonth'].'/'.$_POST['checkoutday']);
$advanceaccomd=trim($_POST['advanceaccomd']);
}
$totalpayment=trim($_POST['totalpayment']);
$total_USD_payment=$dbBean-
>currency('INR','USD',$totalpayment);
//echo 'Payment : '.$total_USD_payment;
// exit;
$payment_mode=trim($_POST['payment_mode']);
$transaction_id=trim($_POST['transaction_id']);
$transaction_date=($_POST['transaction_year'].'/'.
$_POST['transaction_month'].'/'.$_POST['transaction_day']);
2012
if($fname!='' && $lname!='' && $mobile_number!=''
&& $address!='' && $city!='' && $email!='' && $state!='' && $country!='') {
if($_POST['payment_mode']=='Credit Card') {
$query1 = "select * from admin_paypal_detail";
$res1 = $dbBean->selectQuery($query1);
$rec1 = $dbBean->SelectRecord($res1);
$apiUserName = $rec1[0]['apiUserName'];
$apiPassword = $rec1[0]['apiPassword'];
$apiSignature =$rec1[0]['apiSignature'];
//e
cho "UserName".$apiUserName.'Password'.$apiPassword.'Signature'.
$apiSignature.'Api'.$rec1[0]['apiENV'];
$apiSubject = '';
$useProxy = FALSE;
$proxyHost = '127.0.0.1';
$proxyPort = '808';
$apiENV = $rec1[0]['apiENV'];
$apiVersion = '60.0';
$paymentType = 'Sale';
$currencyCode = 'USD';
$callMethod = 'doDirectPayment';
$ipAddress = $_SERVER['REMOTE_ADDR'];
2012
$paypal-
>setCreditCardInfo(array('CARD_TYPE'=>$_POST['card_type'],
'CARD_NUMBER'=>trim($_POST['card_number']),
'BUYER_FIRST_NAME'=>$_POST['fname'],
'BUYER_LAST_NAME'=>$_POST['lname'],
'EXP_MONTH'=>$_POST['expire_month'],
'EXP_YEAR'=>$_POST['expire_year'],
'CVV2'=>$_POST['card_verification_number'],
'AMOUNT'=>$total_USD_payment,
'IP_ADDRESS'=>$ipAddress));
$countryCode = $iso_code[0]['isocode'];
//$state = ((is_int($formData['state']))?
$stateModel->getStateName($formData['state']):$formData['state']);
$state = $_POST['state'];
$paypal-
>setBillingInfo(array('BILLING_STREET_ADDRESS'=>$_POST['address'],
'BILLING_CITY'=>$_POST['city'],
'BILLING_COUNTRY_CODE'=>$countryCode,
'BILLING_STATE'=>$state,
'BILLING_ZIP_CODE'=>$_POST['pin'],
'EMAIL'=>$_POST['email']));
2012
$response = $paypal->doDirectPayment();
$resArray = $paypal->parseResponse($response);
//p
rint_r($resArray);
//
exit;
if(isset($resArray["ACK"])) {
/**************For Paypal Response Success
Or Failure *******************/
$ack = strtoupper($resArray["ACK"]);
$paySession->data = $resArray; // Response
Array
}else {
/************For Curl Error
*****************/
$ack = 'Failure';
$paySession->data = $response; //Curl Error
Response in Array
//echo $ack;
}
$creditCardNumber = $_POST['card_number'];
$expiry = $_POST['expire_month'].'/'.
$_POST['expire_year'];
$last_four =
substr($creditCardNumber,strlen($creditCardNumber)-4);
2012
$cardNumber = 'xxxxxxxxxxxx'.$last_four;
//$_POST['card_number'] = $cardNumber;
if($ack!="SUCCESS") {
//echo $ack;
}else {
// echo $ack ;
}
if($ack=='SUCCESS' ||
$ack=='SUCCESSWITHWARNING') {
if($accomodation==1) {
$result=$dbBean-
>insertRecord('registration', array('title', 'fname','mname', 'lname',
'gender','address', 'email', 'designation','institution', 'country', 'state',
'city','pin','phone_number','mobile_number','fax','reg_type','membership_no','del
egate_name1','delegate_name2','delegate_no','accomodation','category','categor
yhotel','categoryhotel1','hoteloccupancy','checkingdate','checkoutdate','advancea
ccomd','totalpayment','payment_mode',
'transaction_id','transaction_date','ipaddress','card_type','card_number','ccv2','ex
piry'),array($title,$fname,$mname,$lname,$gender,$address, $email,
$designation,$institution,$country,$state,$city,$pin,$phone_number,
$mobile_number,$fax,$reg_type,$membership_no,
$delegate_name1,$delegate_name2,$_POST['delegate_no'],$accomodation,
$category,$categoryhotel,$categoryhotel1,$hoteloccupancy,$checkingdate,
$checkoutdate,$advanceaccomd,$totalpayment,$payment_mode,
$transaction_id,$transaction_date,$ipAddress,$_POST['card_type'],
$_POST['card_number'],$_POST['card_verification_number'],$expiry ));
}else {
2012
$result=$dbBean-
>insertRecord('registration', array('title', 'fname','mname', 'lname',
'gender','address','email', 'designation','institution', 'country', 'state',
'city','pin','phone_number','mobile_number','fax','reg_type','membership_no','del
egate_name1','delegate_name2','delegate_no','accomodation','totalpayment','pay
ment_mode',
'transaction_id','transaction_date','ipaddress','card_type','card_number','card_ver
ification_number','expiry'),
array($title,$fname,$mname,$lname,
$gender,$address, $email, $designation,$institution,$country,$state,$city,$pin,
$phone_number,$mobile_number,$fax,$reg_type,$membership_no,
$delegate_name1,$delegate_name2,$_POST['delegate_no'],$accomodation,
$totalpayment,$payment_mode, $transaction_id,$transaction_date,$ipAddress,
$_POST['card_type'],$_POST['card_number'],$_POST['ccv2'],$expiry ));
}
//echo 'hello';
$msg='You have been successfully registered !!
';
}else {
$msg="Some problem's occured with credit
card details !! ";
}
}else {
if($accomodation==1) {
2012
$result=$dbBean->insertRecord('registration',
array('title', 'fname','mname', 'lname', 'gender','address', 'email',
'designation','institution', 'country', 'state',
'city','pin','phone_number','mobile_number','fax','reg_type','membership_no','del
egate_name1','delegate_name2','delegate_no','accomodation','category','categor
yhotel','categoryhotel1','hoteloccupancy','checkingdate','checkoutdate','advancea
ccomd','totalpayment','payment_mode',
'transaction_id','transaction_date'),array($title,$fname,$mname,$lname,$gender,
$address, $email, $designation,$institution,$country,$state,$city,$pin,
$phone_number,$mobile_number,$fax,$reg_type,$membership_no,
$delegate_name1,$delegate_name2,$_POST['delegate_no'],$accomodation,
$category,$categoryhotel,$categoryhotel1,$hoteloccupancy,$checkingdate,
$checkoutdate,$advanceaccomd,$totalpayment,$payment_mode,
$transaction_id,$transaction_date));
}else {
$result=$dbBean->insertRecord('registration',
array('title', 'fname','mname', 'lname', 'gender','address', 'email',
'designation','institution', 'country', 'state',
'city','pin','phone_number','mobile_number','fax','reg_type','membership_no','del
egate_name1','delegate_name2','delegate_no','accomodation','totalpayment','pay
ment_mode', 'transaction_id','transaction_date'),
array($title,$fname,$mname,$lname,
$gender,$address, $email, $designation,$institution,$country,$state,$city,$pin,
$phone_number,$mobile_number,$fax,$reg_type,$membership_no,
$delegate_name1,$delegate_name2,$_POST['delegate_no'],$accomodation,
$totalpayment,$payment_mode, $transaction_id,$transaction_date));
}
2012
$msg='You have been successfully registered !! ';
}
}else {
$msg="Please Fill Up Required Fields !!";
}
}
?>
<?php
require_once '../config.php';
if (isset($_GET['action']) && ($_GET['action'] == 'logout')) {
if(isset($_SESSION['userinfo'])){
session_unset();
}
}else{
if(isset($_SESSION['userinfo'])){
header('Location: dashboard');
}
}
2012
if (isset($_POST['action']) && ($_POST['action'] == 'login')) {
$username = $_POST['username'];
$password = $_POST['password'];
if (!empty($username) && !empty($password)) {
include_once INCLUDE_BASE . '/lib/DatabaseBean.class.php';
$dbBean = new DatabaseBean();
$result = $dbBean->selectQuery("SELECT * FROM admin_user WHERE
username='$username' AND password='$password'") or print mysql_error();
//echo "SELECT * FROM admin_user WHERE username='$username'
AND password='$password'";
if (($row = mysql_fetch_assoc($result))) {
if ($row['username'] == $username && $row['password'] ==
$password) {
$_SESSION['userinfo'] = $row;
header('Location: dashboard');
} else {
$msg = 'Invalid Userame/Password';
}
} else {
$msg = 'Invalid Userame/Password';
}
} else {
$msg = 'Username/Password required';
}
}
?>
2012
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login Here</title>
<link href="css/main.css" rel="stylesheet" type="text/css" />
</head>
<body style="background:#ffffff;">
<div class="login-bg">
<form action="" method="post">
<table width="100%" border="0" cellspacing="10">
<tr>
<td colspan="3" align="center"><?php echo (isset($msg) ? $msg
: ' ') ?></td>
</tr>
<tr>
<td width="38%" align="right">User Name</td>
<td colspan="2" align="left"><input type="text"
name="username" id="username" class="text_fd" /></td>
</tr>
<tr>
<td align="right">Password</td>
<td colspan="2" align="left"><input type="password"
name="password" id="password" class="text_fd" /></td>
2012
</tr>
<tr>
<td align="right"> </td>
<td width="26%" align="left"><input type="hidden"
name="action" value="login"/>
<input type="image" name="login" id="imageField"
src="../../images/login/submit.png"/></td>
<td width="36%" align="center" valign="baseline">Forgot your
password? </td>
</tr>
<tr>
<td colspan="3" align="center"> </td>
</tr>
</table></form>
</div>
</body>
</html>
<?php
class DatabaseBean {
private $dbHost=DB_HOST;
private $dbName=DB_NAME;
private $dbUser=DB_USER;
2012
private $dbPass=DB_PASS;
private $connection;
private $show=false;
private $doescape=true;
//Constructor
public function __construct() {
$this->openConnection();
$this->doescape=!(ini_get('magic_quotes_gpc'));
}
//Destructor
public function __destruct() {
}
//Opens Database Connection
public function openConnection() {
$this->connection=mysql_connect($this->dbHost, $this->dbUser, $this-
>dbPass);
if($this->connection)
mysql_select_db($this->dbName,$this->connection);
else
echo "Database connection faliuer";
}
//Queries
public function insertRecord($table,$fields,$values) {
$result=null;
if(count($fields)<=0) {
die($this->err01);
}
2012
if(count($fields)!=count($values)) {
die($this->err02);
}else {
$query="INSERT INTO ".$table;
$f="(";
$v="(";
for($i=0;$i<count($fields);$i++) {
$p=(($i+1)<count($fields)?",":")");
$f=$f.$fields[$i].$p;
$v=$v."'".($this->doescape?mysql_real_escape_string($values[$i],
$this->connection):$values[$i])."'".$p;
}
$query=$query." ".$f." VALUES ".$v;
$result=$this->insertQuery($query)or print mysql_error();
}
return $result;
}
public function insertBatchRecords($table,$fields,$values,$doescape=true) {
$query="INSERT INTO ".$table;
$f="(";
for($i=0;$i<count($fields);$i++) {
$p=(($i+1)<count($fields)?",":")");
$f=$f.$fields[$i].$p;
}
$v=$this->getPreparedValue($values);
$query=$query." ".$f." VALUES ".$v;
//echo $query;
2012
return $this->insertQuery($query);
}
public function insertQuery($query) {
if($this->show)echo "<br/>".$query;
mysql_query($query,$this->connection)or print mysql_error();
$result['id']=mysql_insert_id($this->connection)or print mysql_error();
$result['rows']=mysql_affected_rows($this->connection)or print
mysql_error();
return $result;
}
private function getPreparedValue($values) {
$vQuery='';
for($i=0;$i<count($values);$i++) {
$p=count($values[$i]);
$v="(";
for($j=0;$j<count($values[$i]);$j++) {
$p=(($j+1)<count($values[$i])?",":")");
$v=$v."'".($this->doescape?mysql_real_escape_string($values[$i]
[$j],$this->connection):$values[$i][$j])."'".$p;
}
$vQuery=$vQuery.$v.((($i+1)<count($values))?',':'');
}
return $vQuery;
}
/******************************************Finish Insert
Queries************************************************/
2012
public function updateRecord($table,array $fields,array $values,
$condition=1) {
if(count($fields)!=count($values)) {
throw new Exception('FieldValues Mismatch::Fields and values must be
equal!');
}
$v="";
for($i=0;$i<count($fields);$i++) {
$p=(($i+1)<count($fields)?", ":" ");
$v=$v."`".$fields[$i]."`='".($this->doescape?
mysql_real_escape_string($values[$i],$this->connection):$values[$i])."'".$p;
}
$query="UPDATE $table SET $v WHERE $condition";
return $this->updateQuery($query);
}
public function updateQuery($query) {
if($this->show)echo "<br/>".$query;
mysql_query($query,$this->connection)or print mysql_error();
$result['rows']=mysql_affected_rows($this->connection)or print
mysql_error();
return $result;
}
public function deleteQuery($query) {
if($this->show)echo "<br/>".$query;
mysql_query($query,$this->connection)or print mysql_error();
$result['rows']=mysql_affected_rows($this->connection)or print
mysql_error();
2012
return $result;
}
/*public function getRecords($table,$fields=null,$condition=null,
$orderBy=null,$groupBy=null)
{
$result;
return $result;
}
*/ public function selectQuery($query) {
if($this->show)echo "<br/>".$query;
$result=mysql_query($query,$this->connection);
return $result;
}
function SelectRecord($result) {
$table_result=array();
$r=0;
while($row = mysql_fetch_assoc($result)) {
$arr_row=array();
$c=0;
while ($c < mysql_num_fields($result)) {
$col = mysql_fetch_field($result, $c);
$arr_row[$col -> name] = $row[$col -> name];
$c++;
}
$table_result[$r] = $arr_row;
$r++;
2012
}
return $table_result;
}
/**
*Procedure Calling
* @param <type> $show
*/
public function callProcedure($procName) {
if($this->show)echo "<br/>".$query;
$query="CALL $procName";
return $this->selectQuery($query);
}
public function printAllQueries($show) {
$this->show=$show;
}
/**********************************Transaction
Implementation******************************************
*Table Type Must be INNODB OR BDB
*ISAM or MyISAM do not allow transaction facility
*/
public function transactionBegin() {
mysql_query('SET AUTOCOMMIT=0',$this->connection)or print
mysql_error();
//mysql_query('SET COLLATION_SERVER...',$this->connection);
mysql_query('START TRANSACTION',$this->connection)or print
mysql_error();
}
2012
public function affactQuery($query) {
$result=mysql_query($query)or print mysql_error();
return $result;
}
function currency($from_Currency,$to_Currency,$amount) {
$amount = urlencode($amount);
$from_Currency = urlencode($from_Currency);
$to_Currency = urlencode($to_Currency);
$url = "http://www.google.com/ig/calculator?
hl=en&q=$amount$from_Currency=?$to_Currency";
$ch = curl_init();
$timeout = 0;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT , "Mozilla/4.0 (compatible;
MSIE 8.0; Windows NT 6.1)");
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$rawdata = curl_exec($ch);
curl_close($ch);
$data = explode('"', $rawdata);
$data = explode(' ', $data['3']);
$var = $data['0'];
return round($var,2);
}
2012
public function transactionEnd($isComplete) {
if($isComplete===true) {
mysql_query('COMMIT',$this->connection)or print mysql_error();
}else {
mysql_query('ROLLBACK',$this->connection)or print mysql_error();
}
mysql_query('SET AUTOCOMMIT=1',$this->connection)or print
mysql_error();
}
//Errors
private $err01='Cause:FieldsNotFound<br>Number of fields must be greater
than 0';
private $err02='Cause:FieldsAndValuesMismatch<br>Number of fields and
values must be equal';
}
?>
<?php
require_once '../../config.php';
include_once INCLUDE_BASE .'/lib/DatabaseBean.class.php';
$dbBean = new DatabaseBean();
if(isset($_GET['action']) && $_GET['action']=='update' && isset($_GET['id'])
&& $_GET['id']!=''){
2012
$id=$_GET['id'];
$query="SELECT name, status, description WHERE id='$id'";
$result=$dbBean->selectQuery($query)or print mysql_error();
if($row=mysql_fetch_assoc($result)){
$category_id=$row['category_id'];
$name=$row['name'];
$description=$row['description'];
$status=$row['status'];
}
}
if(isset($_POST['save'])){
$id=(isset($_POST['id'])?$_POST['id']:'');
$name=$_POST['name'];
$status=$_POST['status'];
$description=$_POST['description'];
2012
if(mysql_affected_rows()>0){
header('Location: '.(isset($referrer)?$referrer:'index.php').'?
msg=Record has been '.($updated?'updated':'added').' at id:'.($updated?
$id:mysql_insert_id()));
}else{
$msg='No update detected!!';
}
}else{
$msg='Required field must not be empty';
}
?>
2012
</tr>
<tr>
<td align="left">Status</td>
<td><input type="text" name="status" id="status" /></td>
</tr>
<tr>
<td align="left"> </td>
<td><input type="submit" name="save" id="button" value="Save" /></td>
</tr>
</table>
</form>
</div>
</div>
<?php include '../includes/footer.php';?>
Show Categories
<?php include '../includes/header.php'; ?>
<div class="container">
<div class="row1"></div>
<div class="content-container" align="left">
<table border="0" width="100%">
<tbody>
<tr>
<td><?php echo isset($msg) ? $msg : ''; ?></td>
<td><a href="add.php">Add Category</a></td>
2012
</tr>
<tr>
<td colspan="2">
<?php
require_once '../../config.php';
include_once INCLUDE_BASE .'/lib/DatabaseBean.class.php';
require_once INCLUDE_BASE . '/lib/ui/PXTable.class.php';
$dbBean = new DatabaseBean();
$pTable = new PXTable($dbBean, '../../includes', '', true);
$pTable->setRecordsPerPage(20);
$pTable->setSpaceNPade(1, 1);
$pTable->setColumnAlignment(array('center;width: 50px;',
'left;width: 100px;', 'left;width: 50px', 'left;', 'center;width: 80px', 'center;width:
80px', 'center;width: 80px', 'center;width: 80px', 'center;width: 100px',
'center;width: 80px', 'center;width: 80px', 'center;width:80px', 'center;width:
80px', 'center;width: 80px'));
$pTable->showTable('SELECT name AS Name, status AS
Status, description AS `Description` FROM product_categories');
?>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<?php include '../includes/footer.php'; ?>
2012
Admin Add Product
<?php
require_once '../../config.php';
include_once INCLUDE_BASE .'/lib/DatabaseBean.class.php';
$dbBean = new DatabaseBean();
if(isset($_GET['action']) && $_GET['action']=='update' && isset($_GET['id'])
&& $_GET['id']!=''){
$id=$_GET['id'];
$query="SELECT name, description, status, sku, color, featured, price,
special_price_from, special_price_to, manage_stock, stock_qty, stock_status
WHERE id='$id'";
$result=$dbBean->selectQuery($query)or print mysql_error();
if($row=mysql_fetch_assoc($result)){
$category_id=$row['category_id'];
$name=$row['name'];
$description=$row['description'];
$status=$row['status'];
$sku=$row['sku'];
$color=$row['color'];
$featured=$row['featured'];
2012
//$new_date_from=$row['new_date_from'];
//$new_date_to=$row['new_date_to'];
//$weight=$row['weight'];
$price=$row['price'];
//$special_price=$row['special_price'];
$special_price_from=$row['special_price_from'];
$special_price_to=$row['special_price_to'];
//$min_qty_allowed=$row['min_qty_allowed'];
//$max_qty_allowed=$row['max_qty_allowed'];
$manage_stock=$row['manage_stock'];
$stock_qty=$row['stock_qty'];
$stock_status=$row['stock_status'];
}
}
if(isset($_POST['save'])){
$id=(isset($_POST['id'])?$_POST['id']:'');
$category_id=$_POST['category_id'];
$name=$_POST['name'];
$description=$_POST['description'];
$status=$_POST['status'];
$sku=$_POST['sku'];
$color=$_POST['color'];
$featured=$_POST['featured'];
//$new_date_from=$_POST['new_date_from'];
//$new_date_to=$_POST['new_date_to'];
//$weight=$_POST['weight'];
$price=$_POST['price'];
2012
//$special_price=$_POST['special_price'];
$special_price_from=$_POST['special_price_from'];
$special_price_to=$_POST['special_price_to'];
//$min_qty_allowed=$row['min_qty_allowed'];
//$max_qty_allowed=$row['max_qty_allowed'];
$manage_stock=$_POST['manage_stock'];
$stock_qty=$_POST['stock_qty'];
$stock_status=$_POST['stock_status'];
if($name!='' && $sku!=''){
if(isset($id) && $id!='') {
$dbBean->updateQuery("UPDATE product SET
category_id='$category_id', name='$name',
description='$description',status='$status',sku='$sku',color='$color',featured='$f
eatured',price='$price',special_price_from='$special_price_from',special_price_
to='$special_price_to',
manage_stock='$manage_stock',stock_qty='$stock_qty',stock_status='$stock_st
atus' WHERE id='$id'") or print mysql_error();
$updated=true;
}else{
$dbBean->insertRecord('product', array('category_id','name',
'description', 'status', 'sku', 'color', 'featured', 'price',
'special_price_from','special_price_to','manage_stock','stock_qty','stock_status')
, array($category_id,$name,$description,$status,$sku,$color,$featured,$price,
$special_price_from,$special_price_to,$manage_stock,$stock_qty,
$stock_status));
}
if(mysql_affected_rows()>0){
2012
header('Location: '.(isset($referrer)?$referrer:'index.php').'?
msg=Record has been '.($updated?'updated':'added').' at id:'.($updated?
$id:mysql_insert_id()));
}else{
$msg='No update detected!!';
}
}
}else{
$msg='Required field must not be empty';
}
?>
2012
$cres=$dbBean->selectQuery("SELECT id,name FROM
product_categories WHERE status=1") or print mysql_error();
if($cres){
while(($row= mysql_fetch_assoc($cres))){
?>
<option value="<?php echo $row['id']?>" <?php echo
((isset($category_id) && $row['id']==$category_id)?'selected="selected"':'')?
>><?php echo $row['name']?></option>
<?php }
} ?>
</select>
</td>
</tr>
<tr>
<td width="43%" align="left">Name</td>
<td width="57%"><input type="text" name="name" id="name" /></td>
</tr>
<tr>
<td align="left" valign="top">Description</td>
<td><textarea name="description" id="description"></textarea></td>
</tr>
<tr>
<td align="left">Status</td>
<td>
<select name="status" id="status">
<option value="1">Enable</option>
<option value="0">Disable</option>
2012
</select>
</td>
</tr>
<tr>
<td align="left">SKU</td>
<td><input type="text" name="sku" id="sku" /></td>
</tr>
<tr>
<td align="left">Color</td>
<td><input type="text" name="color" id="color" /></td>
</tr>
<tr>
<td align="left">Featured</td>
<td>
<select name="featured" id="featured">
<option value="0">No</option>
<option value="1">Yes</option>
</select>
</td>
</tr>
<tr>
<td align="left">Price</td>
<td><input type="text" name="price" id="price" /></td>
</tr>
<tr>
<td align="left">Special Price From</td>
2012
<td><input type="text" name="special_price_from" id="special_price_from"
/></td>
</tr>
<tr>
<td align="left">Special Price To</td>
<td><input type="text" name="special_price_to" id="special_price_to"
/></td>
</tr>
<tr>
<td align="left">Manage Stock</td>
<td>
<select name="manage_stock" id="manage_stock">
<option value="0">No</option>
<option value="1">Yes</option>
</select>
</td>
</tr>
<tr>
<td align="left">Stock Quantity</td>
<td><input type="text" name="stock_qty" id="stock_qty" value="0" /></td>
</tr>
<tr>
<td align="left">Stock Status</td>
<td>
<select name="stock_status" id="stock_status">
<option value="0">Empty</option>
<option value="1">Available</option>
2012
</select>
</td>
</tr>
<tr>
<td align="left"> </td>
<td><input type="submit" name="save" id="button" value="Save" /></td>
</tr>
</table>
</form>
</div>
</div>
<?php include '../includes/footer.php';?>
2012
<a href="add.php">Update Product</a>
</td>
</tr>
<tr>
<td colspan="2">
<?php
require_once '../../config.php';
include_once INCLUDE_BASE .'/lib/DatabaseBean.class.php';
require_once INCLUDE_BASE . '/lib/ui/PXTable.class.php';
$dbBean = new DatabaseBean();
$pTable = new PXTable($dbBean, '../../includes', '', true);
$pTable->setRecordsPerPage(20);
$pTable->setSpaceNPade(1, 1);
$pTable->setColumnAlignment(array('center;width: 50px;',
'left;width: 100px;', 'left;width: 50px', 'left;', 'center;width: 80px', 'center;width:
80px', 'center;width: 80px', 'center;width: 80px', 'center;width: 100px',
'center;width: 80px', 'center;width: 80px', 'center;width:80px', 'center;width:
80px', 'center;width: 80px'));
// $pTable->showTable('SELECT CONCAT(\'<a href="view.php?
id=\',id,\'">\',name,\'</a>\') AS Name, description AS Description, status AS
Status, sku AS SKU, color AS Color, featured AS Featured, new_date_from AS
`New Date From`,new_date_to AS `New Date To`, weight AS Weight, price AS
Price, special_price AS `Special Price`, special_price_from AS `Special Price
From`, special_price_to AS `Special Price To`, cost AS Cost, min_qty_allowed
AS `Min Qty Allowed`, max_qty_allowed AS `Max Qty Allowed`,
manage_stock AS `Manage Stock`, stock_qty AS `Stock Qty`, stock_status AS
`Stock Status` FROM product');
2012
$pTable->showTable('SELECT CONCAT(\'<a href="view.php?
id=\',id,\'">\',name,\'</a>\') AS Name, CASE status WHEN 0 THEN \'Disabled\'
WHEN 1 THEN \'Enabled\' END AS Status, sku AS SKU, color AS Color,
featured AS Featured, price AS Price, special_price_from AS `Special Price
From`, special_price_to AS `Special Price To`, manage_stock AS `Manage
Stock`, stock_qty AS `Stock Qty`, stock_status AS `Stock Status` FROM
product');
?>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<?php include '../includes/footer.php'; ?>
Code Efficiency
2012
T
he code has been designed using features of PHP 5.0so as to reduce
coding and generate more efficient code. This has been accomplished
by using module facility of PHP 5.0. Here in functions once have
been defined and used in different places for automatic uploading of code.
To generation of the order number uses the function written in the module
‘GrainMod’ and it is used in the order form of purchase and sales.
In the program whenever we applying the coding to check the input form if
character value is needed then numeric or special characters can’t be given. If
numeric or special characters are pressed then at the moment the message box
appear to show the warning that “only character values are accepted”. This will
be followed in the case of numeric values. If any entry is blank in the form then
an error message will be produced that “Please fill all details”.
If the linking is not proper means if the connectivity is not possible then at ones
it displays the message that “Access is not properly work”. In the date is
selected using date picker tool and format of this is defined in which it will be
stored in the table. So there is no need to enter the date only select.
If any user missed its password and want to use the program then an error
message will be generated that password is wrong.
If administrator wants to see the report (say, the purchases in a month) then the
administrator will be able to see the reports as quickly as possible, which is
done in this project.
Since this software handles all the expected or unexpected errors and never
crashes and also gives the results in time, it is said to be code efficient.
Optimization of Code
2012
O
ptimization is examining the application’s performance, and then
making decisions about which part of the code to modify to enhance
that performance. Performance refers to
Algorithm performance
Image size (disk space)
Memory utilization
Network performance
User interface performance
Most of the time, we will not be able to optimize for individual performance
characteristic. For example, optimizing to reduce the compiled size of an
executable (called the image) typically reduces execution speed, and
optimization for speed often results in an increased disk image size.
2012
Testing
There are several validationchecks,which have been used in myproject.
At the very first screen (Splash Screen), ‘Have a Floppy’
Button is used to enter in to the software without typing ‘UserName’
and ‘Password’. If any one pressed this button and not inserted the
floppy, then a message box is appeared alerting the user for ‘No
Floppy in Drive’.
In all over the project each textbox accepts only those
characters and keys which are allowed.
In text type fields only a-z, A-Z, Enter, Space, and
BackSpace keys are valid.
In Numeric type fields only 0-9, Enter, Space, and
BackSpace keys are valid.
In Mixed type fields only 0-9, a-z, A-Z, Enter, Space, and
BackSpace keys are valid.
At the time of saving all of the fields are checked for Nil
value (as required).
In all of the entry forms if we press ‘Add New’ Button, the
2012
Navigation buttons disables. After saving the record, navigation
buttons are enabled.
Firm Name and Item Name is chosen from the list, so that
no errors in choosing.
In the order received form if the order is completed, ‘Add
New’ Button is disabled.
Similarly in order dispatched form, if all items are
dispatched, ‘Add New’ Button is disabled.
In Payments form if balance is ‘0’ (Zero) then ‘Add New’
Button is disabled.
In the Same form if Amount paid by Cheque or Draft is ‘0’
(Zero) then it is not necessary to enter Cheque or Draft details.
Testing Techniques
S
oftware testing is one of the most important activities in the Software
Development Life Cycle (SDLC). Almost every organization is now
using disciplined test planning and some objective criteria. Almost
every project that is designed up to its fulfillment is said to be technically
incorrect or in other terms abortive until unless it passes the testing phase. The
development of any software system via the human source is undoubtedly error
prone, thus the errors which are occurring in the midst of the programs have to
be seriously dealt with and for this testing is essential. In fact testing is one step
in the software engineering process that is generally considered to be
destructive rather than constructive.
2012
The development of systems involves a series of production activities where
opportunities for injection of human fallibility are enormous. Errors may begin
to occur at every inception of the process where the objective may be
erroneously or imperfectly specified as well as later design and development
stages. Because of human inability to perform and communicate with
perfection, software development is accomplished by quality assurance activity.
The increasing visibility of software as a system element and attendant costs
associated with the software failure are motivating forces for well planned
through testing.
D
uring earlier definition and development phases, the engineer
attempts to build software from a concept to a tangible
implementation. Here is where the testing gets involved. The
engineer creates a series of test cases that are intended to demolish the software
that has been built. Testing requires that the developer discard preconceived
notion of the ‘correctness’ of the software just developed and overcome a
conflict of the interest that occurs when the error is uncovered.
2012
White Box Testing:
White box testing is also called Glass Box Testing, it is a test case design
method that used control structure of the procedural design to derive test cases,
using White box
testing methods the software engineer can derive test cases that
B
lack box testing is also called behavioral testing, focuses on the
functional requirements of the software. That is Black box testing
enables the software engineer to derive sets of input conditions that
will fully exercise all functional requirements for a program. It is approach that
is likely to uncover a different class of errors than white box testing methods.
Black box testing alludes to test that are conducted at the software interface,
Black box tests are used to demonstrates that software functions are operational,
2012
input is properly accepted and output is correctly produced and the integrity of
external information is maintained. Black box testing attempts to finds errors in
the following categories:
Incorrect or missing functions
Interface errors
Errors in data structure or external database access
Behaviors or performance errors
Initialization and termination errors.
Black box testing is performed in this project, in which it is tested that software
accepts input correctly and it produces output according to our needs.
Functional validity is tested and finds it is corrected as our need, performances
of our software are acceptable, and inputting invalid data our software produces
error messages.
Testing Stratigies
A
number of testing strategies have been proposed, all provide the
software developer. With a template for testing and all have the
following generic characteristics –
Testing begins at the component level and work “outward” towards the
integration of the entire computer based system.
Different testing techniques are appropriate at different points in time.
The developer of the software and an independent group conducts
testing.
2012
Unit Testing:
Unit testing focuses verification effort on the smallest unit of software design
the software components or module… in unit testing different module are tested
against the specifications produced during design for the module. Unit testing is
essentially for verification of the code produces during the coding phase and
hence the goal is to test the internal logic of the modules. A module is
considered for integration and used by others only after it has been unit tested
satisfactory. In unit testing test of data flow across a module interface are
required before any other test is initiated. If data do not enter and exit properly,
all other tests are moot. Selective testing of execution of paths is an essential
task during the unit test cases should be designed to uncover errors due to
erroneous computations, incorrect comparison or improper control flow basis
path and loop testing are effective techniques for uncovering a broad array of
path errors.
2012
O ur project has several modules and each module has passed through
unittesting :
Integration Testing
The Integration testing of our project is divided into following test phases –
User interaction
Data manipulation
Display processing
Database management
Interface integrity- Internal and External interfaces are tested as each module
is incorporated into the structure.
2012
T
ests designed to verify performance bounds established during
software design are conducted. Facility will have to be provided for
multiple archival in case of important data, which should not be lost.
Selected data purging will also have to be undertaken to ensure that redundant
data dose not occupy unnecessary space on the disk or on the back up media. A
methodology for the same would have to be evolved to ensure that no useful
data is purged by mistake.
Implementation
MAINTENANCE
SECURITY MEASURES TAKEN
COST ESTIMATION OF PROJECT
PERT CHART & GANTT CHART
FUTURE SCOPE OF THE PROJECT
Maintainence
S
oftware maintenance is an extremely important activity. The activity is
defined as ‘the process of modifying existing operational software
while leaving its primary function intact’.
2012
It is useful to divide software maintenance into two categories –
Software updates - which results in a changed functional specification
for the software.
Software repair – which leaves the functional specification intact.
However, good or efficient software may be there is always a possibility of
modification due to change in the user requirements and change in technology.
The important thing is that the system developed should be flexible to
accommodate any future enhancements. This project is user-friendly and built
to the requirements of the client so that there occur not any problem
whatsoever. The project entails the user needs for the purpose of Computerized
Registration.
H/W maintenance: The AMC (Annual Maintenance Cost) is given to the
Hardware providing firm. It is renewed every year for only few hundred rupees.
S/W maintenance: I (developer) am responsible for loading the software and I
will provide the free maintenance of this software for one year but this does not
include future up gradation. I am responsible for making any minor changes in
the software. These changes should not change the functional requirements
described in the SRS such as changing password or adding users.
2012
S
ecurity of software – The system is protected to unauthorized
alteration by using Identification name and Password method. These
users are of mainly two types- admin (administrator) and user.
Passwords of the user and administrator were aesthetically kept at least four
characters long and not easily guessable though at the development time this
was avoided and it was only shared with database administrator and asked to
change from time to time.
In daily uses, at the time of entering the password, it is quite possible that
many persons are there with the user and it is also possible that someone
stolen that password by seeing the keyboard. I have decided a new way to
solve this problem, which is influenced by a ‘Smartcard’ Technology. In this
technique a Floppy is used as the authentication media. User Name and
Password is kept in a file in Encrypted form which is unreadable to any
person.
B
ackups were designed in proper manner. This includes Access
backup and file system backup. On one button click system creates
the backup of all the tables with the help of the access backup utility
and creates a file ‘expdat.dmp’.
2012
Security requirements palace restrictions on the use of certain commands,
control access to data, provide different kinds of access requirements for
different people require the use of password, and cryptography techniques and
maintain a log of activities in the system. Security of software is crucial for
securing confidential information such as passwords. So we have a
responsibility to protect this information. Needless to say information like
password if stolen can cause you serious problem.
2012
PERT Chart for Online Shopping
PERT, which stands for project evaluation and Review Technique,
was developed n the late 1950s to plan and control large weapons development
projects for the U.S Navy. It was develop to make clear the intedependence of
project tasks when projects are being scheduled. Essentially, PERT is a graphic
networking technique.
Let’s take a closer look at PERT charts, what they are, how to draw
them, and how to use them. we should be made aware that different PERT
discussions and computer products use different terminology. PERT definitions
and symbols: On PERT charts, projects can be organized in terms of events and
tasks. An event also called a milestone- represents a point in time, such as the
start or completion of a task or tasks.
2012
activities that from the “critical path”, which if delayed will cause the
overall project to delay. The PERT chart for the project is:
Preliminary
Investigation Operational Economic
Feasibility Feasibility I/O Design
2
4 5 25
7
0 5 5
10 10
1
8 8
Begin
3
Prototype
6
Technical Database
Feasibility SRS Design 8
Specification
16
White Box
Testing
77
9
1 Optimisation
1 6 Coding 51
Alpha 98 Of Code
Testing 3
1
1 0
3
70
1
Beta 2
Testing
Black Box
1 107 Testing
4
5
It is An Ongoing
Process
112
1
SUBMITTED 1
BY: - ARVIND YADAV REGISTRATION NO: -0628197
1
5 6
Implementation Maintenance
[“ONLINE SHOPPING”]
2012
Total No. of days for completion of the Project 112 (Days)
G
antt charts are a project planning tool that can be used to represent
the timing of tasks required to complete a project. Gantt chart is
simple to understand and easy to construct, they are used by most
project managers for all but the most complex projects.
As the project progresses, the chart is updated by filling in the bars to a
length proportional to the fraction of work that has been accomplished on the
task. This way, one can get a quick reading of project progress by drawing a
vertical line through the chart at the current date. Completed tasks lie to the left
of the line and are completely filled in. Current tasks cross the line and are
behind schedule if their filled-in section is to the left of the line and ahead of
schedule if the filled-in section stops to the right of the line. Future tasks lie
completely to the right of the line.
2012
Often the project has important events which you would like to appear on
the project timeline, but which are not tasks. For example, you may wish to
highlight when a prototype is complete or the date of a design review.
Activities Weeks
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1.Fact Finding
2.Requirement
Analysis
3.Designing
4.Coding
5.Testing
6.Implementation
2012
Future Scope Of This Project
On
be: -
line Shopping Initial functional requirements will
Creating a Shopping cart so that customers can shop ‘n’ no. of items and
checkout finally with the entire shopping carts
Customers should be able to mail the Shop about the items they would like
to see in the Shop
2012
Regular updates to registered users of the website about new arrivals.
Secured mechanism for checking out from the Shop (Credit card verification
mechanism)
Updates to customers about the recently added items in the shop through
various mechanisms.
Strategic data and graphs for Administrators and Shop owners about the
items that are popular in each category and age group
Shop employees are responsible for internal affairs like processing orders,
assure home delivery, getting customer's delivery-time feedback, updating
order's status and answering client's queries online.
Feedback mechanism, so that customers can give feedback for the product
or service which they have purchased. Also facility rating of individual
products by relevant customers. Also feedback can be given on the
performance of particular vendors and the entire shop as well.
Adequate payment mechanism and gateway for all popular credit cards,
cheques and other relevant payment options, as available from time to time.
o Category wise items that are sold more and the brand names for the same
o Which brand is more popular in each category of products
o Who are the customers who visit often( to facilitate them by making them
Premier customers )
2012
o Discounts given to the Premier customers
In addition to the above mentioned points, due to the highly evolving nature of the
project, the following are planned to be delivered if deemed necessary:
Dynamic price model by which prices can be changed based on demand and
supply
2012
Reports provide the most flexible way of viewing & printing information
in your database. They enable you to display detailed information in almost any
format. Reports take information from other object of your database & then
organize that information according to your instructions.
Database is a combination of tables, queries, form & reports. So, queries
are the medium to access selective information in the table or forms & finally
generate a report i.e. output of query.
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 pro cess.
•
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.
2012
Designing
Online Shopping
Home Page
Product View
2012
Product Checkout
2012
ADMIN LOGIN
2012
Manage Category
2012
Manage Product
2012
2012
B ibliography
2012
REFRENCES
T
o prepare this project, the following books and websites have been
referred. This project would not have been complete without the help
of these books and matter from the internet.
BOOKS
HTML4 In 24 Hrs (Tec media Publication)
---Dick Oliver
Software Engineering
---Pressman
HTML, DHTML ,Java Script
---Ivan Bayross
Php In 24 Hrs (Tec media Publication)
---Mical Albert
Php Manual
---Robert Desuja
MY SQL The Complete Reference
----George Koch