Online Book Store
Online Book Store
Online Book Store
BELAGAVI-590018
BACHELOR OF ENGINEERING
IN
INFORMATION SCIENCE AND ENGINEERING
BY
MURALI R (1EP17IS027)
RAGHAVENDRA R (1EP17IS033)
UNDER THE GUIDANCE OF
Prof.VANDANA N S
Prof.ANSHULA B A
Dept. of ISE, EPCET
1)
2)
ACKNOWLEDGEMENT
Any achievement, be it scholastic or otherwise does not depend solely on the individual
efforts but on the guidance, encouragement and cooperation of intellectuals, elders and friends.
We would like to take this opportunity to thank them all.
First and foremost we would like to express our sincere regards and thanks to Mr.
Promod Gowda and Mr. Rajiv Gowda, CEO’s, East Point Group of Institutions, Bangalore,
for providing necessary infrastructure and creating good environment.
We express our gratitude to Dr.Prakash S, Principal, EPCET who has always been a
great source of inspiration.
We express our sincere regards and thanks to Prof.Kemparaju N, Professor and Head
of Department of Information Science and Engineering, EPCET, Bangalore, for his
encouragement and support.
We also extend our thanks to the entire faculty of the Department of Information
Science and Engineering, EPCET, Bangalore, who have encouraged us throughout the course
of the project work .
Last, but not the least, we would like to thank our family and friends for their inputs to
improve the project.
MURALI R (1EP17IS027)
RAGHAVENDRA R (1EP17IS033)
ABSTRACT
The main objective of the project is to create an online book-store that allows users to search
and purchase a book online based on title, author and subject. The selected books are displayed
in a tabular format and the user can order their books online through credit card payment. Using
this website, the user can purchase a book online instead of going out to a book store and
wasting time. There are many online book stores like Powell’s, Amazon which were designed
using Html. I want to develop a similar website using .My SQL and PHP. The Online Book
Store Website provides customers with online shopping through a web browser. A customer
can, create, sign in to his account, place items into a shopping cart and purchase using his credit
card details. People often face the difficulty of non-availability of good quality content books
to learn concepts or skills. They also have ambiguity about authors or which publications best
suit their purpose.
Our aim is to design and create a Database Management System to provide a platform for
borrowing or purchasing books which are subject related for the sake of learning, which are
easily accessible and details about them are also easily available.This system simplifies the
task of checking for available subject related books. It makes it easier to avail information
regarding the publisher or the author. This system allows the customer to only avail or
borrow books which are available in the online store, hence avoiding the confusion. The
Administrator will have additional functionalities when compared to the common user. He
can add, delete and update the book details, book categories, member information and also
confirm a placed order
CONTENTS
Conclusion 21
References
LIST OF FIGURES
CHAPTER 1
INTRODUCTION
of lot of commands to output HTML, PHP pages contain HTML with embedded code that
does “something”.
The PHP code is enclosed in special start and end processing instructions <? Php and ?>
that0 allow you to jump into and out of “PHP mode” .The best thing in using PHP are that
it is extremely simple for a rookie, but offers many advance features for professional
programmer.
The data in a MySQL database are stored in tables. A table is a collection of related data,
and it consists of columns and rows.
Databases are useful for storing information categorically. A company may have a
database with SEVERAL tables:
• PHP combined with MySQL are cross-platform (you can develop in Windows and
serve on a Unix platform)
• MySQL is the de-facto standard database system for web sites with HUGE volumes
of both data and end-users (like Facebook, Twitter, and Wikipedia).
Another great thing about MySQL is that it can be scaled down to support embedded database
applications.
CHAPTER 2
REQUIREMENT SPECIFICATIONS
Processor Count :1
Connectivity : Internet
CHAPTER 3
TOOL DESCRIPTION
An important issue for the development of a project is the selection of suitable front-
end and back-end. When we decided to develop the project we went through an extensive study
to determine the most suitable platform that suits the needs of the organization as well as helps
in development of the project.
Front-end selection:
1. It must have a graphical user interface that assists employees that are not from IT
background.
3. Flexibility.
4. Robustness.
7. Platform independent.
10. Front end must support some popular back end like MySQL.
According to the above stated features we selected PHP and CSS as the front-end for
developing.
Cascading Style Sheets (CSS) is a style sheet language used for describing
the presentation of a document written in a markup language like HTML.CSS is a cornerstone
technology of the World Wide Web, alongside HTML and JavaScript.
CSS (Cascading Style Sheets) is used to style and lay out web pages — for example, to
alter the font, color, size and spacing of your content, split it into multiple columns, or add
animations and other decorative features. This module gets you started on the path to CSS
mastery with the basics of how it works, including selectors and properties, writing CSS rules,
applying CSS to HTML, how to specify length, color, and other units in CSS, cascade and
inheritance, and debugging CSS.
PHP is a server- side scripting language, that is used to develop Static websites or
Dynamic websites or Web applications. PHP stands for Hypertext Pre-processor, that earlier
stood for Personal Home Pages. PHP scripts can only be interpreted on a server that has PHP
installed. The client computers accessing the PHP scripts require a web browser only. A PHP
file contains PHP tags and ends with the extension “.php”.
PHP is open source and free. Short learning curve compared to other languages such as
JSP, ASP etc. Large community document most web hosting servers support PHP by default
unlike other languages such as ASP that need IIS. This makes PHP a cost-effective choice.
PHP is regular updated to keep abreast with the latest technology trends.
Other benefit that you get with PHP is that it’s a server-side scripting language; this
means you only need to install it on the server and client computers requesting for resources
from the server do not need to have PHP installed; only a web browser would be enough. PHP
has in built support for working hand in hand with MySQL. You can still use PHP with Postgres
Oracle MS SQL Server ODBC etc. PHP is cross platform; this means you can deploy your
application on a number of different operating systems such as windows, Linux, Mac OS etc.
5. Stored procedures.
6. Popularity.
8. Easy to install.
The technical feasibility is frequently the most difficult area encountered at this stage. It is
essential that the process of analysis and definition be conducted in parallel with an assessment
to technical feasibility.[2] It centers on the existing computer system (hardware, software etc.)
and to what extent it can support the proposed system.
PHP is a software distribution which provides the Apache web server, MySQL
database (actually MariaDB), PHP and Perl (as command-line executable and Apache
modules) all in one package. It is available for Windows, MAC and Linux systems. No
configuration is necessary to integrate PHP with MySQL.
PHP is a free and open-source cross-platform web server solution stack package
developed by Apache Friends, consisting mainly of the Apache HTTP Server, MariaDB
database, and interpreters for scripts written in the PHP and Perl programming languages.
Since most actual web server deployments use the same components as PHP, it makes
transitioning from a local test server to a live server possible.
Once PHP is installed, it is possible to treat a local host like a remote host by
connecting using an FTP client. Using a program like FileZilla has many advantages when
installing a content management system (CMS) like Joomla or WordPress. It is also
possible to connect to localhost via FTP with an HTML editor.
MySQL is the world's most popular open source database. With its proven
performance, reliability and ease-of-use, MySQL has become the leading database choice
for web-based applications, used by high profile web properties including Facebook,
Twitter, YouTube, Yahoo! and many more. Oracle drives MySQL innovation, delivering
new capabilities to power next generation web, cloud, mobile and embedded applications.
MySQL is a fast, easy-to-use RDBMS being used for many small and big
businesses. MySQL is developed, marketed and supported by MySQL AB, which is a
Swedish company. MySQL is becoming so popular because of many good reasons.
MySQL works very quickly and works well even with large data sets. MySQL is
very friendly to PHP, the most appreciated language for web development. MySQL
supports large databases, up to 50 million rows or more in a table. The default file size
limit for a table is 4GB, but you can increase this (if your operating system can handle it)
to a theoretical limit of 8 million terabytes (TB).
CHAPTER 4
REQUIREMENTS ANALYSIS
4.1 ER Diagram
Schema diagram: A schema diagram is the skeleton structure that represents the logical
view of the entire database. It contains a descriptive detail of the database.[2]
ADMIN
Name Pass
BOOKS
CUSTOMERS
ORDERS
Order_items
PUBLISHER
Publisherid publisher_name
CHAPTER 5
IMPLEMENTATION AND CODING
5.1 SOURCE CODE:
language of unusual flexibility and breadth since its premiere in 2000, but this continual
Nutshell guide is considered the definitive reference on C#.', '20.00', 3);
-- --------------------------------------------------------
--
-- Table structure for table `customers`
--
CREATE TABLE IF NOT EXISTS `customers` (
`customerid` int(10) unsigned NOT NULL,
`name` varchar(60) COLLATE latin1_general_ci NOT NULL,
`address` varchar(80) COLLATE latin1_general_ci NOT NULL,
`city` varchar(30) COLLATE latin1_general_ci NOT NULL,
`zip_code` varchar(10) COLLATE latin1_general_ci NOT NULL,
`country` varchar(60) COLLATE latin1_general_ci NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1
COLLATE=latin1_general_ci;
--
-- Dumping data for table `customers`
--
INSERT INTO `customers` (`customerid`, `name`, `address`, `city`, `zip_code`, `country`)
VALUES
(1, 'a', 'a', 'a', 'a', 'a'),
(2, 'b', 'b', 'b', 'b', 'b'),
(3, 'test', '123 test', '12121', 'test', 'test');
-- --------------------------------------------------------
--
-- Table structure for table `orders`
--
CREATE TABLE IF NOT EXISTS `orders` (
`orderid` int(10) unsigned NOT NULL,
`customerid` int(10) unsigned NOT NULL,
`amount` decimal(6,2) DEFAULT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`ship_name` char(60) COLLATE latin1_general_ci NOT NULL,
`ship_address` char(80) COLLATE latin1_general_ci NOT NULL,
`ship_city` char(30) COLLATE latin1_general_ci NOT NULL,
`ship_zip_code` char(10) COLLATE latin1_general_ci NOT NULL,
`ship_country` char(20) COLLATE latin1_general_ci NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1
COLLATE=latin1_general_ci;
--
-- Dumping data for table `orders`
--
INSERT INTO `orders` (`orderid`, `customerid`, `amount`, `date`, `ship_name`,
`ship_address`, `ship_city`, `ship_zip_code`, `ship_country`) VALUES
(1, 1, '60.00', '2015-12-03 13:30:12', 'a', 'a', 'a', 'a', 'a'),
(2, 2, '60.00', '2015-12-03 13:31:12', 'b', 'b', 'b', 'b', 'b'),
(3, 3, '20.00', '2015-12-03 19:34:21', 'test', '123 test', '12121', 'test', 'test'),
(4, 1, '20.00', '2015-12-04 10:19:14', 'a', 'a', 'a', 'a', 'a');
-- --------------------------------------------------------
--
<?php
function db_connect(){
$conn = mysqli_connect("localhost", "root", "", "www_project");
if(!$conn){
echo "Can't connect database " . mysqli_connect_error($conn);
exit;
}
return $conn;
}
function select4LatestBook($conn){
$row = array();
$query = "SELECT book_isbn, book_image FROM books ORDER BY
book_isbn DESC";
$result = mysqli_query($conn, $query);
if(!$result){
echo "Can't retrieve data " . mysqli_error($conn);
exit;
}
for($i = 0; $i < 4; $i++){
array_push($row, mysqli_fetch_assoc($result));
}
return $row;
}
function getbookprice($isbn){
$conn = db_connect();
$query = "SELECT book_price FROM books WHERE book_isbn = '$isbn'";
$result = mysqli_query($conn, $query);
if(!$result){
echo "get book price failed! " . mysqli_error($conn);
exit;
}
$row = mysqli_fetch_assoc($result);
return $row['book_price'];
}
$row = mysqli_fetch_assoc($result);
return $row['publisher_name'];
}
function getAll($conn){
$query = "SELECT * from books ORDER BY book_isbn DESC";
$result = mysqli_query($conn, $query);
if(!$result){
echo "Can't retrieve data " . mysqli_error($conn);
exit;
}
return $result;
}
?>
CHAPTER 6
TESTING
This chapter gives the outline of all testing methods that are carried out to get a bug free
system. Quality can be achieved by testing the product using different techniques at
different phases of the project development. The purpose of testing is to discover errors.
Testing is the process of trying to discover every conceivable fault or weakness in a work
product. It provides a way to check the functionality of components sub assemblies and/or
a finished product. It is the process of exercising software with the intent of ensuring that
the Software system meets its requirements and user expectations and does not fail in an
unacceptable manner. There are various types of test. Each test type addresses a specific
testing requirement.
Testing is an integral part of software development. Testing process certifies whether the
product that is developed compiles with the standards that it was designed to. Testing
process involves building of test cases against which the product has to be tested.
The test cases provided here test the most important features of the project.
Enter the
Payment details Display “Thank You,
Displayed “Thank You, Your
on Purchase Your ORDER Ok Pass
ORDER Confirmed”
Confirmation Confirmed”
Menu
CHAPTER 7
SCREENSHOTS
7.1 MAIN MENU:
CONCLUSION
Research and development are continuous processes; this is same in computer and software
development. However the effectiveness and efficiency of this new system provide room for
further improvement. As early mentioned some of the objectives of this project were not
actualized due to some limitation. The outline clearance system developed will offer greater
opportunity in school management. All transaction or payment with regards to student’s
clearance can be carried out online.
This is a database project designed to maintain an online bookstore, In this era, everything
including books of study are being digitalized and hence, it is required to maintain an
effective method of storing bookstore details.
Instead of using the conventional style of paper-based records and documentation we now
prefer electronic methods are preferred for stock maintenance, automatic updation of records
while billing and reliable electronic documentation.
In traditional system, there were lot of irregularities founds in generating data to where as in
modified and computerized system in every problem overcome with the press of button. This
system provides the security from loss, disclosure, modification and destruction of data. This
system provides integrity of proper functioning of programs.
In this program, books can be distributed among customers efficiently by the click of a
button. All essential data like address, date, author, publisher are maintained and the purpose
of maintaining the online bookstore is fulfilled.
REFERENCES
[2] Ramez Elmasri and Shamkant B. Navathe, Fundamentals of Database Systems, 7th Edition.
2017, Pearson.