You are on page 1of 42

Kurdistan Regional Government

Ministry of Higher Education


University of Suleimani
College of Basic Education
Computer Science Department

Inventory Management System


Submitted to the scientific council of the computer science department at the
College Basic Education, University of Suleimani in partial fulfillment for the
requirements of the degree of bachelor in Computer Science.

Prepared by:
Hemn Azez KakaAbdulla
Peshraw Zerak Hama

Supervised by
MSc. Lecture: Wria Muhamed Salih

2019(A.D) 2719(K)

1
‫فؤرمى ثيَشكةشكردنى ثرؤذةى دةرضوون‬
‫‪ :‬ثرؤذةى دةرضوونى هةردوو خويَندكار ( هيَمن عزيز كاكةعبدهللا ‪ ،‬ثيَشرةو زيرةك حةمة ) بةناونيشانى‪L‬‬

‫‪Inventory Management System‬‬


‫دةخةينة بةردةست ئةجنوومةنى بةش‪ ،‬كة تيايدا هةموو ثيَداويستى‪ L‬يةكانى تويَذينةوةى‪ L‬زانستيمان تةواو‬
‫كردووة‬
‫بة ثيَى ئةو ثيَشنيارةى‪ L‬ئةم تويَذينةوةية ثيَشكةش بة ليذنةى هةلَسةنطاندن دةكةين‬

‫سةرثةرشتيار‪L‬‬

‫‪2‬‬
‫بريارى ليذنةى طفتوطؤى‪ L‬ثرؤذةى دةرضوون‬
‫ِ‬
‫هةرسى خويَندكارى‪ L‬قؤناغى‬
‫َ‬ ‫ئيَمة ئةندامانى‪ L‬ليذنةى طفتوطؤ‪ L‬و هةلَسةنطاندنى ثرؤذةى‪ L‬دةرضوونى‪L‬‬
‫ضوارةمى بةشى كؤمثيوتةر ئةم تويَذينةوةيةمان خويَندةوة لةطةل هةردوو خويَندكار طفتوطؤمان دةربارةى‬
‫بريارماندا بة (‪ )...........................................‬وةك بةشيَك لة‬
‫ناوةرؤك و اليةنةكانى ترى كرد و ِ‬
‫بروانامةى بةكالؤريؤس‪L.‬‬
‫ثيَداويستى‪ِ L‬‬

‫سةرؤكى‬ ‫ئةندام‬ ‫ئةندام‬ ‫سةرثةرشتيار‬


‫ليذنة‬
‫‪/ /‬‬ ‫‪2019 / /‬‬ ‫‪2019 / /‬‬ ‫‪2019 / /‬‬
‫‪2019‬‬

‫سةرؤكى بةشى زانستى‪ L‬كؤمثيوتةر‪L‬‬


‫م‪.‬ى ئارى‪ L‬صابر عارف‬

‫‪DEDICATION‬‬

‫‪3‬‬
We are loving dedicate this project for our supervisor (MSc. Wria Mohammad Salih)
which was just like climbing a high peak step by step accompanied with encouragement,
hardship, trust, and frustration.

We dedicate it to Suleimani University (Faculty of Physical and Basic Education


Computer Department). We want to thank our wives and families, for all of the support they have
given through all of these years of study in university.

We want to respect our Teachers who are the Nation Builders and they have taught us in
our study journey in school and university.

We have Sincere Dedication to All lecturers of the Computer Science department in


College of Basic Education at Suleimani University.

4
ACKNOWLEDGEMENTS

In The Name of Allah, Most Gracious, Most Merciful

thank you for your advice, guidance and assistance, without your precious support this
work will not have been completed. We would like to express our admiration to (MSc. Wria
muhamad) for guiding us through each and every step of the process with knowledge and
support. We want to offer our thankfulness to the almighty God who had given us the power,
good sense, and confidence to complete our project successfully. In completing this graduate
project, we have been fortunate to have help, support and encouragement. We sincerely
acknowledge and thank our family members and friends who gave moral support and confidence
for us.

5
ABSTRACT

Over the past two decades, the manual attendance management has been carried across
most of educational institutions. This is to overcome the problem of manual purchase; in this
project we have developed “Inventory Management System”. This Inventory Management
System is based on web server, which can be implemented on any computer in anywhere even
around the world. In This project, there are three different techniques has been utilized to develop
this system. First, Node.js is server side language. encode, MySQL is used for database. Third,
HTML, CSS, JavaScript, JQuery and Ajax are used as front-end tools for design the project. The
system communicates with database residing on a remote server. It calculates automatically, the
absence percentage of students without any manual paper-based work. They tool which are
utilized in the system are the most modern and advanced techniques. Particularly, in the secure
aspects, strong protection has been used including hashing passport.

6
LIST OF FIGURES

Figure 1 : URLExample..................................................................................................................................6
Figure 2: Xampp.........................................................................................................................................12
Figure 3 database........................................................................................................................................13
Figure 4 Design of Inventory Management system....................................................................................17
Figure 5 Design of Administrator Website.................................................................................................18
Figure 6 Design of cashier User................................................................................................................18
Figure 7: all tables........................................................................................................................................2
Figure 8: user table.......................................................................................................................................2
Figure 9: category table................................................................................................................................3
Figure 10: brand table..................................................................................................................................3
Figure 11: products......................................................................................................................................4
Figure 12: Sell table.....................................................................................................................................4
Figure 13: login form...................................................................................................................................5
Figure 14: setting inventory..........................................................................................................................5
Figure 15: add administrator........................................................................................................................6
Figure 16: admin management.....................................................................................................................6
Figure 17: add product table........................................................................................................................7
Figure 18: list of product..............................................................................................................................7
Figure 19: discount form..............................................................................................................................8
Figure 20: brand form..................................................................................................................................9
Figure 21: brand menu...............................................................................................................................10
Figure 22: Side menu.................................................................................................................................11

7
TABLE OF CONTENTS

Chapter 1....................................................................................................................................................1
INTRODUCTION..................................................................................................................................1
1.1 Overview...........................................................................................................................................1
1-2. The Project problem.......................................................................................................................1
1-3. The aim of the project.....................................................................................................................2
1-4. Project objectives............................................................................................................................2
1-5. Limitation........................................................................................................................................2
1-6. SCOPE OF THE PROJECT:.........................................................................................................3
1-7. Researches organize:.......................................................................................................................3
Chapter 2....................................................................................................................................................4
LITERATURE REVIEW AND BACKGROUNDS.............................................................................4
2.1 Related Works..................................................................................................................................4
2.2 Inventory Management System.......................................................................................................5
Inventory management software features.................................................................................................5
2.3 BACKROUNDS................................................................................................................................5
2.3.1 Website...........................................................................................................................................5
2.3.2 website vs web page.......................................................................................................................6
2.3.3 HTML5:.........................................................................................................................................6
2.3.4. CSS:...............................................................................................................................................8
2.3.5 Bootstrap4......................................................................................................................................8
2.3.6 JQuery:...........................................................................................................................................9
2.3.7 PHP 7:...........................................................................................................................................9
2.3.8 JavaScript:...................................................................................................................................10
2.3.9 xampp :........................................................................................................................................11
2.3.10 DataBase :..................................................................................................................................12
2.3.11 MySQL:......................................................................................................................................13
2.3.12 The Apache Web Server:............................................................................................................13
2.3.13 IDE :...........................................................................................................................................14
2.3.14 HTTP :.......................................................................................................................................14

8
2.3.15 The web server:.........................................................................................................................14
2.3.16 PHP MyAdmin:........................................................................................................................15
2.3.17 The NetBeans:...........................................................................................................................15
2.3.18 Domain name............................................................................................................................16
2.3.19 URL............................................................................................................................................16
2.3.20 Hosting:.....................................................................................................................................16
2.3.21 validation...................................................................................................................................17
CHAPTER 3.............................................................................................................................................18
DESIGN AND IMPLEMENTATION................................................................................................18
3.1 Design..............................................................................................................................................18
3.1.1. Administrator Website...........................................................................................................19
3.1.2. Cashier.......................................................................................................................................1
3-2. Database design:..............................................................................................................................1
3.3 Implementation...................................................................................................................................4
CHAPTER 4.............................................................................................................................................12
CONCLUSION AND FUTURE WORKS..........................................................................................12
4-1. Conclusion......................................................................................................................................12
4-2. Future Work....................................................................................................................................12
References.................................................................................................................................................13

9
LIST OF ABBRIVATIONS

HTML Hyper Text Markup Language


CSS Cascading Style Sheets
AJAX Asynchronous JavaScript and XML
URL Uniform Resource Locator
HTTP Hypertext Transfer Protocol
OS Operating System
I/O Input Output
API Application Programming Interface
DNA Deoxyribonucleic Acid
XML Extensible Markup Language
IBM International Business Machines
PHP Hypertext Preprocessor
SQL Structured Query Language
DBMS Database Management System
ASP Active Server Pag

10
Chapter 1

INTRODUCTION

1.1 Overview
Recently, Inventory has become one of the well-known website in the World Wide Web
because most of the business transformed from the market to online. such as www.ebay.com,
www.amazon.com, www.abebooks.com and so on. Also, one the business has mostly
transformed to online system is purchase goods. For example www.ebay.com is an online system
to sell goods; even second-hand products can find them on this website.

In our project we are going to build a website to sale products in Kurdistan regional
government because until now there is not any e-commerce website to sell goods, there are some
websites, but none of them are working perfectly.

Totally, this project consists of two main different websites. The first website is for
administration and second one is for general users.

Administration website, the managers can insert new information to the website. Another
advantage of this project is the website can have more than one administrator.

Second website of this project is for general user.

1-2. The Project problem


In Kurdistan there is not any website to sell goods that is why we are going to build this
website. Furthermore, the goals of using PhP with MySQL to build this website are, firstly, PhP
is easy to use, and secondly, you can provide a better security for our website. Also, PhP has
amazing performance. It is as a new tool is used because there is new functionality that we can
use easily.
1
1-3. The aim of the project
The main purpose in this research is making a website for absent systems at the university
of Sulaimani that the lecturers can have an account. As well as, student also can have an account
for knowing the daily, weekly and yearly information, such as absent rates. Also, lecturers can
see the subjects with different departments and different stages, furthermore, lecturer can do the
absent systems. The head of departments, who are administrator, can insert, modify or delete the
lecturers and subjects. Another benefit of the system is to know about the rates of the student
absents by the administrators and lecturers.

1-4. Project objectives


The Objectives of this project is classified to sub-objects:

 This project is used for sale products via using website, it does not need a specific
program to run the application.
 It does not need for reader to spend a long way to obtain the book. Also, nowadays, roads
and streets are crowed and it needs more time to buy a book.
 The most important advantage of an online bookstore is less of cost for readers.
 Familiarizing the Kurdish reader to online bookstore.
 It allows you to buy books while relaxing at home at any time of the day or night.
 Sometimes you can also hunt for great deals as most online bookstore invariably offer big
discount for newly released books, or offer of free shipping if your order is above a
certain amount.

1-5. Limitation
The Limitation of this project classified as: -

In this project PhP is used, the possible opportunity for PhP is different types of tools
including sublime; a possible opportunity for the database is MySQL. Also, (Bootstrap and CSS)
are used for giving an amazing design to in front of the website. PhP is based on the JavaScript
which can have the most modern design for the website. Moreover, it has the security login page

2
The limitation of this project is university of Sulaimani.

1-6. SCOPE OF THE PROJECT:


As a first test, this project is work in Kurdistan regional government, because it is not
easy to cover all the costs to make this website as a global website.

1-7. Researches organize:


In chapter one, firstly, overview of this research is written, the overview is covered the short
description of this research. Then problem statement has explained, as well as aim and objects are
clarified, such as this project is built by using Node.js. Also, limitation of the project is written, finally,
research outline.

In chapter two, the background information and literature review about this project is written. In
the literature review some previous works have been discussed, also, in the background information, the
necessity of the project has been explained.

In chapter three, the design and implementation of the project is explained. The design of this
projects include design of whole system, also database and diagrams as well as the methodology, the
implementation of whole website has been discussed. The main two parts including admin part and
general user part have been explained in detail. The implementation is explained with different types of
page figures.

In chapter four, both future works and conclusion are illustrated. Future work includes all future
works that we want to add for this project. Also the main conclusion which we got from this project has
been discussed.

In chapter four, both future works and conclusion are illustrated. Future work includes all future
works that we want to add for this project. Also the main conclusion which we got from this project has
been discussed.

3
Chapter 2

LITERATURE REVIEW AND BACKGROUNDS

2.1 Related Works


The project [ CITATION INV06 \l 1033 ] describes the Inventory Management System sufficiently
to determine the feasibility and usability of a finished system. The core concept is to track the sale of
items from the cash registers with additional features for interpreting the data. It uses a client-server
model with a connected database to allow multiple stores and warehouses to be connected. This allows
for later expansion while still supporting the targeted small businesses. The core features and final
framework should be completed within 2 weeks, leaving 5 weeks to implement additional features and
testing.

Second project [CITATION Mee19 \l 1033 ] is about project is aimed at developing a desktop based
application named InventoryManagement System for managing the inventory system of any organization.
TheInventory Management System (IMS) refers to the system and processes to managethe stock of
organization with the involvement of Technology system. This systemcan be used to store the details of
the inventory, stock maintenance, update theinventory based on the sales details, generate sales and
inventory report daily orweekly based. This project is categorize individual aspects for the sales and
inventorymanagement system. In this system we are solving different problem affecting todirect sales
management and purchase management. Inventory Management Systemis important to ensure quality
control in businesses that handle transactions resolvingaround consumer goods. Without proper inventory
control, a large retail store may runout of stock on an important item. A good inventory management
system will alert thewholesaler when it is time to record. Inventory Management System is also
onimportant means of automatically tracking large shipment. An automated InventoryManagement
System helps to minimize the errors while recording the stock.

In Project [ CITATION POK16 \l 1033 ], in this asp.net project post we will going to learn about
inventory management system or stock management system software. We developed this stock
management system in windows application using C# language and we use Microsoft Access as database
in this system.

4
2.2 Inventory Management System

Inventory management systems track goods through the entire supply chain or the portion of it a business
operates in. That covers everything from production to retail, warehousing to shipping, and all the
movements of stock and parts between.

Practically, it means a business can see all the small moving parts of its operations, allowing it to make
better decisions and investments. Different inventory managers focus on different parts of the supply chain
—though small businesses are usually more interested in the ordering and sales end of the chain.

Because of their wide variation in scope, inventory management systems also vary widely in cost.
Software Advice’s Frontrunners report for inventory management gives you an idea of what that
price/features mix looks like.

Inventory management software features

Let’s start at the beginning and work our way toward the point of sale.

Again, the software you choose to manage your inventory could offer any, or all, of these features,
depending on your needs and budget. Each industry has its unique requirements, but all inventory
management systems will likely include:

 Barcoding
 Reporting tools
 Inventory forecasting
 Inventory alerts
 Accounting tools or tie-ins

2.3 BACKROUNDS

2.3.1 Website

A website is a collection of web pages (documents that are accessed through the Internet),
such as the one you're looking at now. A web page is what you see on the screen when you type
in a web address, click on a link, or put a query in a search engine. A web page can contain any

5
type of information, and can include text, color, graphics, animation and sound. [CITATION
com19 \l 1033 ][ CITATION Lea161 \l 1033 ]

A web page or web page is a document commonly written in HyperText Markup


Language (HTML) that is accessible through the Internet or other network using an Internet
browser. A web page is accessed by entering a URL address and may contain text, graphics, and
hyperlinks to other web pages and files. The page you are reading now is an example of a web
page.[CITATION com19 \l 1033 ]

2.3.2 website vs web page


A website refers to a central location that contains more than one web page.
For example, Computer Hope is considered a website, which includes thousands of
different web pages, including this web page you are reading now.

Figure 1 : URLExample

In the above URL example, the website is computerhope.com and the web page is
"url.htm" and is always the last part of the URL[4]

2.3.3 HTML5:

HTML5 is the most exciting step forward in web development since the launch of
XHTML 1.0 in the year 2000. HTML5 is the future of web design, but it can be implemented
right now; and yet it does not make any of your current knowledge of HTML4 or CSS2
redundant. It is a welcome enhancement that increases the flexibility and usefulness of HTML.

It also solves some problems; for instance, it can dispense with plugins for embedded
video and audio clips, and the number of video file formats is drastically reduced. A raft of new
semantic tags makes coding and maintaining a web site much easier.

The number of DOCTYPES is reduced from six to two, and the HTML5 DOCTYPES are
so brief that you can easily commit them to memory.
6
HTML5 has brought agreement between the browser vendors because they participated in
its formulation. This means that the way they handle coding errors is now standardized; all those
little differences are ironed out.

A browser’s parsing rules as specified by HTML5 ensure that all existing web sites
continue to function as before; HTML5 is backwardly compatible. Because this chapter focuses
on the aspects of HTML5 that will enhance the most common types of web site, you will not find
a comprehensive discussion on APIs (Application Programming Interfaces); nor will you find a
history of the development of HTML5.

Several books are available on APIs and the history of HTML5. They cover those topics
very well; duplicating them would be pointless (see the tip at the end of the chapter for a list of
resources). The chapter ends with a brief mention of some APIs, but it is probably safe to assume
that the great majority of web designers and site owners are not yet implementing them on
traditional web sites. This view is reinforced by a recent poll taken by CSS Tricks (http://css-
tricks.com). Two years after the release of the APIs, the poll asked web designers the following
question: Which HTML5 features have you implemented on production sites? The results were as
follows: Semantic tags 58% Forms 36% Audio/video 30% Other 16% CHAPTER 1 ■ MOVING
TO HTML5 2 The “Other”16 percent was split between nine APIs: Canvas, Web Workers, Web
Storage, Geolocation, Drag and Drop, ContentEditable, History, and Microdata.

The total adds up to more than 100 percent because most respondents implemented more
than one feature. Moving to HTML5 Now is the time to take advantage of the new features in
HTML5; by trying the projects in this and subsequent chapters, you will discover the benefits and
enhancements made possible by the new version of HTML.

The emphasis of this book is the word Practical in the title; therefore, I have “cut to the
chase” and provided fully-worked projects covering all the most useful new features of HTML5.
I expect you are eager to get started, so let’s move on! The HTML5 and XHTML5 DOCTYPES
HTML 4/XHTML have several DOCTYPES, but HTML5/XHTML5 have only one DOCTYPE
each, as follows: HTML5: meta details go here XHTML5: meta details go here. [ CITATION Pra15 \l
1033 ]

7
2.3.4. CSS:

CSS allows you to separate presentation from content when building a Web site. Put
another way, HTML itself is rather limited in what it can effectively display. It’s fine for holding
or describing content (such as a paragraph of text), but the appearance of raw HTML Web pages
isn’t very stylish (to put it kindly). With HTML, you often can’t find an easy way — or any way
at all — to display the content so that it looks really good when someone views it in a browser.
Using CSS techniques, you can often make your site much more attractive, and at the same time,
enforce style rules that help unify the entire site’s appearance across all its pages. In this book,
you find out how to wrap your online content in appealing visual designs using CSS, including
special dramatic effects such as animated transitions between images or entire pages. Style sheets
can provide striking, well designed containers into which relatively plain HTML content is
poured. The best Web pages aren’t merely efficient, logical, and stable — they also look really
cool. The end result of employing CSS is a more attractive Web site with a more coherent,
effective overall design. [ CITATION CSS15 \l 1033 ]

2.3.5 Bootstrap4:
Bootstrap has become a very popular tool in front-end projects over the years. The
framework's ease-of use along with its cross-browser compatibility, support for mobile user
interfaces, and responsive web design capabilities, make it an essential building block for any
modern web application. The course will enable you to rapidly build elegant, powerful, and
responsive interfaces for professional-level web pages using Bootstrap 4. At the beginning of the
course, take a deep dive into the Bootstrap frontend framework with the help of examples that
will illustrate the usage of each element and component in a proper way. By seeing examples,
you will get a better understanding of what is happening and where you want to reach. With this
guide, along the examples, you will get confident with the framework and develop some very
common examples using Bootstrap. These are a landing page, a web application, and a
dashboard, which is desired by 10 out 10 web developers. Second module is comprehensive
tutorial, which will teach you everything that you need to know to start building websites with
Bootstrap 4 in a practical way. You'll learn about build tools such as Node, Grunt, and many
others. You'll also discover the principles of mobile-first design in order to ensure your pages can

8
fit any screen size and meet the responsive requirements. This guide will make sure you're geared
up and ready to build amazingly beautiful and responsive websites in a jiffy. By third module, get
to the grips with Bootstrap's key features and quickly discover the various ways in which
Bootstrap can help you develop web-interfaces You will know how to both extend the
framework, integrate it with third-party components and frameworks, as well as optimize and
automate your Bootstrapped builds.[ CITATION Boo16 \l 1033 ]

2.3.6 JQuery:

JQuery is a fast, small, and feature-rich JavaScript library. It makes things like
HTML document traversal and manipulation, event handling, animation, and Ajax
much simpler with an easy-to-use API that works across a multitude of browsers. If
you're new to jQuery, we recommend that you check out the Center, If you're
updating to a newer version of jQuery, be sure to read the release notes published
on our blog. If you're coming from a version prior 1.9, you should check out the 1.9
Upgrade Guides as well [9].

2.3.7 PHP 7:
PHP 7: Object-Oriented Modular Programming using HTML5, CSS3, JavaScript, XML, JSON,
and MySQL is intended for use as a beginning level programming book. It is not the goal of this
book to cover advanced techniques in the current versions of the PHP programming language.
Some knowledge of general programming concepts is expected but no actual programming
experience or education is assumed. All code examples in this book are compatible with PHP 7.
Most examples are compatible with PHP 5.6. The newest (as of the publication date) methods
(functions) available in PHP have been used to provide the reader with the most current coding
techniques. The examples use core methods provided in the PHP language. PHP includes many
additional methods to accomplish similar tasks. The reader may, and should, research additional
ways of improving security, performance, and other techniques. It is the goal of this book to
9
prompt users to always consider using the most secure and efficient methods of program
development. The code in this book provides some examples of using these techniques. The user
should remember that no program is 100% secure. The programmer can only strive to make an
application as secure as possible. It takes a team of developers, network personnel, security
administrators, data center personnel, and others working together to provide the safest
environment.[ CITATION PHP16 \l 1033 ]

2.3.8 JavaScript:
JavaScript was developed by Brendan Eich, a developer at Netscape Communications
Corporation, in 1995. Its initial development was very rapid, and much of the criticism leveled at
JavaScript has cited the lack of planning foresight during its development. However, Brendan
Eich was not a dabbler: he had a solid foundation in computer science, and incorporated
remarkably sophisticated and prescient ideas into JavaScript. In many ways, it was ahead of its
time, and it took 15 years for main‐ stream developers to catch on to the sophistication the
language offered. JavaScript started life with the name Mocha, and was briefly named Live Script
before being officially renamed to JavaScript in a Netscape Navigator release in 1995. The word
“Java” in “JavaScript” was not coincidental, but it is confusing: aside from a common syntactic
ancestry, JavaScript has more in common with Self (a proto-type based language developed at
Xerox PARC in the mid-’80s) and Scheme (a language developed in the 1970s by Guy Steele and
Gerald Sussman, which was in turn heavily influenced by Lisp and ALGOL) than with Java. Eich
was familiar with both Self and Scheme, and used some of their forward-thinking paradigms in
developing Java‐ Script. The name JavaScript was partially a marketing attempt to tie into the
success Java was enjoying at the time.1 In November 1996, Netscape announced that they had
submitted JavaScript to Ecma, a private, international nonprofit standards organization that
carries significant influence in the technology and communications industries. Ecma International
published the first edition of the ECMA-26 specification, which was, in essence, JavaScript.
[ CITATION Lea161 \l 1033 ]

10
2.3.9 xampp :
XAMPP is an AMP stack which lets you install Apache, MySQL and PHP in your
computer together with some other useful software. It has been designed to provide you an easy
installation experience. It’s free and available for Windows, Mac OS and Linux.

Go to XAMPP web site and download the installer based on your operating system.
Installation should be similar to a normal software installation you do in your operating system.

When installing, there would be an option to select whether you want to run Apache and MySQL
as services. If you chose it, Apache and MySQL will start at system boot-up which may not need
if your computer is tight with memory resources or if you are not doing PHP development
frequently. You can change these settings after installation.

Go to the location where you installed XAMPP (usually C:\Program Files\xampp) and


double click on XAMPP Control Panel (xampp-control.exe). This will bring you following
screen.

Click on Start buttons next to Apache and MySQL for starting them.

Figure 2: Xampp

11
Once opened, you would see XAMPP icon on the right of your task bar. Clicking on that icon
will show/hide XAMPP control panel. To exit from XAMPP, click on Exit button in XAMPP
Control Panel [ CITATION wor19 \l 1033 ].

2.3.10 DataBase :
A database is a structured collection of data. Here are some typical examples of databases:

 An online store database that stores products, customer details and orders

 A database for a web forum that stores members, forums, topics and posts

 A database for a blog system, such as WordPress, that stores users, blog posts,
categories, tags, and comments

The software that manages databases is known as a database management system, or DBMS.
MySQL is an example of a DBMS. Rather confusingly, DBMSs are often called databases too.
Strictly speaking though, the database is the data itself, while the DBMS is the software that
works with the database.

There are many different ways to organize data in a database, known as database models. One of
the most popular is the relational model, which is what MySQL uses (along with PostgreSQL,
Oracle, Microsoft SQL Server, and other common systems). Consequently, MySQL is known as
a relational database management system, or RDBMS.

The following diagram shows how a database, the DBMS, and your website’s code interact with
each other.

Figure 3 database
12
A database (left) is a collection of related data, managed by a DBMS such as MySQL (centre).
Web scripts (right) communicate with the DBMS in order to insert, update, delete and retrieve
data in the database.[CITATION mys19 \l 1033 ]

2.3.11 MySQL:

MySQL Of course, there’s not a lot of point to being able to change HTML output
dynamically unless you also have a means to track the changes that users make as they use your
website. In the early days of the Web, many sites used “flat” text files to store data such as
usernames and passwords. But this approach could cause problems if the file wasn’t correctly
locked against corruption from multiple simultaneous accesses.
Also, a flat file can get only so big before it becomes unwieldy to manage—not to
mention the difficulty of trying to merge files and perform complex searches in any kind of
reasonable time. That’s where relational databases with structured querying become essential.
And MySQL, being free to use and installed on vast numbers of Internet web servers, rises
superbly to the occasion. It is a robust and exceptionally fast database management system that
uses English-like commands.[ CITATION Lea12 \l 1033 ]

2.3.12 The Apache Web Server:


The Apache Web Server In addition to PHP, MySQL, JavaScript, and CSS, there’s actually a fifth hero in
the dynamic Web: the web server. In the case of this book, that means the Apache web server. We’ve
discussed a little of what a web server does during the HTTP server/client exchange, but it actually does
much more behind the scenes. For example, Apache doesn’t serve up just HTML files—it handles a wide
range of files, from images and Flash files to MP3 audio files, RSS (Really Simple Syndication) feeds,
and more. Each element a web client encounters in an HTML page is also requested from the server,
which then serves it up. But these objects don’t have to be static files, such as GIF images. They can all be
generated by programs such as PHP scripts. That’s right: PHP can even create images and other files for
you, either on the fly or in advance to serve up later. To do this, you normally have modules either
precompiled into Apache or PHP or called up at runtime. One such module is the GD library (short for
Graphics Draw), which PHP uses to create and handle graphics.
Apache also supports a huge range of modules of its own. In addition to the PHP module, the
most important for your purposes as a web programmer are the modules that handle security. Other
examples are the Rewrite module, which enables the web server to handle a varying range of URL types
and rewrite them to its own internal requirements, and the Proxy module, which you can use to serve up
often-requested pages from a cache to ease the load on the server. Later in the book, you’ll see how to
actually use some of these modules to enhance the features provided by the core technologies we cover.
[ CITATION Lea12 \l 1033 ]

13
2.3.13 IDE :

IDE As good as dedicated program editors can be for your programming productivity, their utility
pales into insignificance when compared to Integrated Developing Environments (IDEs), which offer
many additional features such as in-editor debugging and program testing, as well as function descriptions
and much more.
When developing with an IDE, you can set breakpoints and then run all (or portions) of your code,
which will stop at the breakpoints and provide you with information about the program’s current state. As
an aid to learning programming, the examples in this book can be entered into an IDE and run there and
then, without the need to call up your web browser.[ CITATION Lea12 \l 1033 ]

2.3.14 HTTP :

HTTP is a communication standard governing the requests and responses that take place
between the browser running on the end user’s computer and the web server. The server’s job is
to accept a request from the client and attempt to reply to it in a meaningful way, usually by
serving up a requested web page—that’s why the term server is used. The natural counterpart to a
server is a client, so that term is applied both to the web browser and the computer on which it’s
running.
Between the client and the server there can be several other devices, such as routers,
proxies, gateways, and so on. They serve different roles in ensuring that the requests and
responses are correctly transferred between the client and server. Typically, they use the Internet
to send this information. A web server can usually handle multiple simultaneous connections and
—when not communicating with a client—spends its time listening for an incoming connection
request. When one arrives, the server sends back a response to confirm its receipt .[ CITATION
Lea12 \l 1033 ]

2.3.15 The web server:


When a web browser requests a page, it typically contacts a web server. Just as the web
browser is software that’s programmed to know how to read and parse web pages, the web server
is software that’s programmed to send web pages when they’re requested. Several popular web
server software packages are available, but two stand out above the rest: Apache httpd and
Microsoft Internet Information Services (IIS). Between the two of them, these server software
packages are responsible for hosting the vast majority of all web domains. Web servers and web
browsers talk to each other using a protocol called HyperText Transfer Protocol, or HTTP. In
essence, HTTP is just a way for these two parties to speak to each other. Think of it as being like
the protocol involved in making a telephone call. When you make a telephone call, you dial some
digits. (This is like the web browser using the IP address to contact the web server.) The
individual who answers the call is expected to say “Hello” or something similar. As a response,
you’re expected to say “Hello” or “What’s Shakin’” or some other appropriate greeting so that
you both know the conversation is underway.[ CITATION PHP13 \l 1033 ]
14
2.3.16 PHP MyAdmin:
In the left-hand pane of the main PHPMyAdmin screen, which should now appear in
your browser, click on the drop-down menu that says “(Databases)” and select the database
publications. This will open the database and display its two tables just below. Click on the
classics table, and you’ll see a host of information about it appear in the right-hand frame.
From here you can perform all the main operations for your databases, such as creating
databases, adding tables, creating indexes, and much more. To read the supporting documentation
for phpMyAdmin, visit http://www.phpmyadmin.net/documentation/.
If you worked with me through the examples in this chapter, congratulations—it’s been
quite a long journey. You’ve come all the way from creating a MySQL database through issuing
complex queries that combine multiple tables, use Boolean operators, and leverage MySQL’s
various qualifiers. In the next chapter, we’ll start looking at how to approach efficient database
design, advanced SQL techniques, and MySQL functions and transactions. [ CITATION Lea12 \l
1033 ]

2.3.17 The NetBeans:

The NetBeans IDE is a free, open source, Java-based Integrated Development


Environment (IDE) that is used the world over to develop Java, PHP, C/C++, HTML, and
other applications.

One of the first tasks when using NetBeans is to create projects or libraries or import
projects from Eclipse. In this chapter, we will discuss how to create different types of projects
based on different build tools (NetBeans, Maven, and Ant), how to create class libraries, and
how to import both existing Eclipse and Maven projects.

To follow the recipes in this chapter, you can use any of the Java NetBeans download bundles
(Java SE, Java EE, and All). All of these NetBeans versions can be downloaded
from https://netbeans.org/downloads/ .[ CITATION sub19 \l 1033 ]

15
2.3.18 Domain name

Simply put, a domain name (or just a domain) is the name of a website. It’s what comes after
“@” in an email address, or after “www.” in a web address. If someone asks how to find you
online, what you tell them is usually your domain name.

Examples of domain names are:


google.com
wikipedia.org
youtube.com

The first step in creating an online presence is purchasing a domain name. Anyone can purchase a
domain name by going to a domain host or registrar (see below), finding a name no one else is
using, and paying an annual fee to own it. You can also choose from various domain name
endings (or “TLDs”), like .com, .coffee, or .photography. If you’re thinking about buying a
domain name, check out our tips on how to come up with a good name.[ CITATION dom19 \l
1033 ]

2.3.19 URL

A URL (aka “Universal Resource Locator”) is a complete web address used to find a particular
web page. While the domain is the name of the website, a URL will lead to any one of the pages
within the website. Every URL contains a domain name, as well as other components needed to
locate the specific page or piece of content.[ CITATION dom19 \l 1033 ]

Examples of URLs:
http://www.google.com
https://en.wikipedia.org/wiki/umami
https://www.youtube.com/feed/trending

2.3.20 Hosting:

Web hosting is a massive industry. With hundreds of millions of web- sites currently online,
people all over the planet are finding them- selves diving into a strange new world of technology
that they’ve never explored before. It can be confusing and intimidating at first, and many people
never quite grasp what hosting is all about, what it does for them, or how it affects them. In this
chapter, I explain the whole system of web hosting, paralleling every aspect of it with things that
you already know and understand in the real world. I start by getting some confusing terminology
out of the way. Many different terms can be used to describe web hosting, such as the following:
✓ Web hosting ✓ Website hosting ✓ Self hosting ✓ Blog hosting ✓ Hosted website or blog
16
The different names can be confusing at first. However, with the exception of “hosted website,”
they all mean that you have complete control of how your website is made available to the world.
In the case of a hosted website or blog, the hosting and all its related func- tions are done by
another company. All you get is the facility to build your site, without any access to the powerful
tools behind the scenes. This has its advantages and disadvantages. The biggest advantage is that
you don’t have to worry about any of the background functions behind your site; you just get to
do all the fun stuff. The disadvantage to a hosted website is that you are restricted in what you
can do by the host in a multitude of ways. If you start out with a hosted site, it’s most likely that
after a year or so you will find that the limits and restrictions imposed by your host make it too
dif- ficult for your site to expand the way you want it to. This is the time to move to self hosting.[
CITATION Web13 \l 1033 ]

2.3.21 validation
Go to any popular site with a registration form, and you will notice that they give you
feedback when you don't enter your data in the format they are expecting. You'll get messages
such as:

 "This field is required" (you can't leave this field blank)


 "Please enter your phone number in the format xxx-xxxx" (it enforces three numbers
followed by a dash, followed by four numbers)
 "Please enter a valid e-mail address" (if your entry is not in the format of
"somebody@example.com")
 "Your password needs to be between 8 and 30 characters long, and contain one uppercase
letter, one symbol, and a number"
This is called form validation — when you enter data, the web application checks it to see that
the data is correct. If correct, the application allows the data to be submitted to the server and
(usually) saved in a database; if not, it gives you an error message explaining what corrections
need to be made. Form validation can be implemented in a number of different ways.
We want to make filling out web forms as easy as possible. So why do we insist on validating our
forms? There are three main reasons:

 We want to get the right data, in the right format — our applications won't work
properly if our user's data is stored in the incorrect format, or if they don't enter the correct
information, or omit information altogether.
 We want to protect our users' accounts — by forcing our users to enter secure
passwords, it makes it easier to protect their account information.
 We want to protect ourselves — there are many ways that malicious users can misuse
unprotected forms to damage the application they are part of.[ CITATION dev19 \l 1033 ]

17
CHAPTER 3

DESIGN AND IMPLEMENTATION

3.1 Design
the Inventory website consists of two main parts; one of them is administrator website and
another is Cashier user website as shows in figure 8.

Inventory
managment system

Administrator
Cashier
website
Figure 4 Design of Inventory Management system

18
3.1.1. Administrator Website
As previously mentioned that one of the main part of this online system is administrator
part. In administrator, also there are two other parts; admin and super admin; the responsibility of
admin is add new products, search for specific products for purpose of editing or updating.
Furthermore, edit items and delete items can be deleted in admin part.

However, super admin also have all responsibility of admin, but super admin is the manager of
bookstore, he/she can add new admin or delete the existing admin as shows in figure 8.

Administrator Website

Admin Super Admin

Add New Search Edit Delete Add Delete


products items Admin
item item Admin

Figure 5 Design of Administrator Website

19
3.1.2. Cashier
This type of user only can sell products that available on our system; they cannot see other parts of the
website such as statistics and accounting the system. They only see when they want to sell something.

cashier

Search item Detail Buy it now


Figure 6 Design of cashier User

3-2. Database design:

20
In the figure 6, the list of tables are available, which includes category, marka, product, sell and user.

Figure 7: all tables

In the figure 7, table user can have all information about user logins. The following table includes
password, username, email, zip code, phone and roll.

Figure 8: user table

In the figure 8, category_id, category_name are ustilized in the category table, the category table is about
the category of products such as food, drink, clothes.

21
Figure 9: category table.

In Marka table includes all information about brands, such as brand name, id and the quantity of available
brand items.

Figure 10: brand table.

Figure 10 is about products including id, barcode, pro_name, category_id, price, qnt, brand_id
and image. This table includes all information about products. This table is the main table.

22
Figure 11: products

In the Figure 11, all sale products will be registered including the date of the sale and the amount
of each data. This table includes sell_id,sell_product_id,sell_price,sell_qnt and so on, this table is
important for the whole project because it includes all archives information about the sale
product in the past.

Figure 12: Sell table

3.3 Implementation

23
Figure 13: login form

In the figure 12, the security login will be required, the about image includes the username and password
which are mandatory to enter.

Figure 14: setting inventory

Figure 13 is about managing sale and purchase products; this includes the name of brands, the name of
administrators, the list of discount and the list of products.

24
Figure 15: add administrator

As shows in figure 14, the administrator can register here, the new admin information will enter
in this forms, then, it will be a member of the system. The system has some administrators who
are registered from this form.

Figure 16: admin management

All information about the administrators are appeared in the figure 15, figure 15 includes all information
such as the role of admins, the mobile number, the email and the name of admins. This form has specific
permission to access, all the administrator cannot access this form.

25
In figure 16, all information about products will entered here. The whole information such as the name of
product, the barcode for each product, the quantity of product, the price of product and the brand of
products are entered in the form of figure 16.

Figure 17: add product table.

figure 17 shows the list of products, all products are available here, the can search for specific products b
using a text in the above textfield.

Figure 18: list of product.

The discount of products are illustrated in the figure 18, this figure has all discounts such as the number of
products and the price with the discount.
26
Figure 19: discount form

In the following figure, which is figure 19, category is available in the following category, the category
form includes all types of products, this category links to other information about products.

Figure 20: brand form

27
In the figure 20, brand is available in the following category, the brand form includes all brands of
products, this category links to other information about products. the international brands are available in
this form, the brand can be edit and delete on the figure 20.

Figure 21: brand menu

28
Figure 22: Side menu.

This tool includes all necessary links to pages. Pages like all products, add products, logout button,
setting, report, sale, and admin management.

29
CHAPTER 4

CONCLUSION AND FUTURE WORKS

4-1. Conclusion
In this study the web site database has designed for inventory. It consisted of several parts such as
purchase, sale, product add, product list and reports. Fortunately, the database was responsive which can
run for computer, iPad, and mobile. One of the properties of this project there have permitted for any users
who is allowed previously. This project has many different users, the different users have different roles,
and some pages have permission, such as permission has for some admin, for example add new user can
be access only by the super admin.

4-2. Future Work


The project is a part of great web site database which will develop in the future. In this study the
part of the project has taken and designed because of time restriction and several functionality of the
database. In the future work, this system will be online, it means administrator can access all pages
outside Kurdistan. Also, the real server will be add to this project. The project has some other future works
such as adding new brand and discount.

30
References

1. Ajax. (n.d.). Ajax. (Ajax) Retrieved 2 12, 2018, from Ajax: https://techterms.com/definition/ajax

2. Bootstrap 4 – Responsive Web Design. (September 2016). Birmingham B3 2PB, UK.: Packt
Publishing Ltd.

3. CSS Web Design For Dummies. (2015). Hoboken, NJ 07030-5774: Wiley Publishing, Inc.

4. database. (2017, May 18). Retrieved from definition: https://techterms.com

5. Database. (n.d.). Database. (Database) Retrieved 2 15, 2018, from


http://www.linfo.org/database.html

6. developer.mozilla.org. (2019, 5 2). Retrieved 5 10, 2019, from https://developer.mozilla.org/en-


US/docs/Learn/HTML/Forms/Form_validation?
fbclid=IwAR0TBFZbM9QqyKXyY8zoosYtNKpvjSa8KBZ_TVEtkruS5wgrxFn27JuFYgs.

7. domains.google. (2019, 5 2). Retrieved 5 10, 2019, from https://domains.google/learn/the-


difference-between-a-url-domain-website-more/?
fbclid=IwAR1CMAF1DvpmzxqGvE13Tx_NQaIpBpDI4ZVMS6EXIFBW2cisHLDPgTl9Uys#/.

8. Express. (n.d.). Express. Retrieved 3 12, 2018, from https://expressjs.com/en/guide/routing.html

9. (April 4,2006). INVENTORY MANAGEMENT SYSTEM.

10. JavaScript and JQuery: Interactive Front-End Web Development Hardcover. (2014). indyan: Jon
Duckett, Gilles Ruppert, Jack Moore.

11. jquery. (n.d.). jquery. (jquery) Retrieved 2 19, 2018, from jquery: https://jquery.com/

12. Learning JavaScript. (March 2016:). United States of America: Ethan Brown.

13. Learning PHP 7. (2016). Birmingham B3 2 PB , U k: Antonio Lopez.

14. Learning PHP, MySQL, JavaScript, and CSS, Second Edition. (2012). United States of America.:
Robin Nixon.

15. M.Hahn, E. (2016). Express In Action. New York.

16. Mastering Bootstrap 4. (2016). birmingham: Benjamin Jakobus, Jason Marah.

17. Mastering PHP 7. (2017). birmingham: Branko Ajzele.

18. Mazin, S. (2013). School management System by using Oracle 1og Express and Visual basic 6.0.
sulaimani: University of Sulaimani.

19. Meera Academy. (2018). Retrieved 4 15, 2019, from Meera Academy.

20. Mysql. (n.d.). Mysql. Retrieved 2 25, 2018, from Mysql:


http://www.oracle.com/technetwork/database/mysql/index.html

31
21. mysql-for-absolute-beginners. (2011 , AUGUST 25 ). Retrieved 4 25, 2019, from www.elated.com.

22. NodeJs. (n.d.). About. (NodeJs) Retrieved 1 12, 2018, from NodeJs: https://nodejs.org/en/about/

23. PHP 7. (2016). Stone Mountain, Georgia USA : Steve Prettyman.

24. PHP, MySQL®, JavaScript® & HTML5 All-in-One For Dummies®. (2013). Hoboken, New Jersey:
John Wiley & Sons, Inc.

25. (January, 2016). POKHARA UNIVERSITY. Kathmandu, Nepal.

26. Practical HTML 5 Projects. (2015). Adrian W.West.

27. Pro HTML5 Programming: Powerful APIs for Richer Internet Application Development. (2010). US:
Peter Lubbers, Brian Albers, Frank Salim.

28. script, J. (n.d.). Java Script. (Java script) Retrieved 2 13, 2018, from
https://techterms.com/definition/javascript

29. sivan, luqman, & dlsoz. (2016-2017). Faculty management System. Sulaimani: Uiniversity of
SUlaimani/ School of Basic Education.

30. subscription.packtpub.com. (2019). Retrieved 4 25, 2019, from book/application_development.

31. Web Hosting For Dummies. (2013). New Jersy: Jhon Wiley & sons.

32. webpage.htm. (2017, May 18). Retrieved from jargon/w: https://www.computerhope.com

33. WhatIsAWebsite.html. (2017, May 8). Retrieved from WebHosting101:


http://www.freeservers.com

34. working-with-xampp. (n.d.). Retrieved 4 12, 2019, from phpknowhow:


https://www.phpknowhow.com/basics/working-with-xampp/

35. www.computerhope.com. (n.d.). Retrieved 4 12, 2019, from jargon.

36. Xampp. (2010). VDM Publishing.

32

You might also like