Skip to content
Mehedi Shafi edited this page Apr 5, 2017 · 3 revisions

Welcome to Library Management System WIKI

Introduction

To manage a library we need various options available. There are many works to be done in a library. If the work can be automatize the manual works can be at ease and the process’s precisions will be greater. Thus the productivity will be at its best. If users can browse the available booklist they can plan of their own reading order or can know what to fetch for the topic he/she is looking for. Thus this will help them a lot in its own automatic way.

Platform

The system is a web based application which can also be referred as a web portal. Therefore the system is for all platform that has web access. (For the demonstration the database and all files are stored locally). While in real life application the system will be a cross platform system.

Work environment

Operating system(s): Windows 10 Ubuntu 16.04

Editor:

Atom
Sublime

Browsers:

Mozila Firefox
Google Chrome

Language(s)

HTML (version 5)
PHP (version 5.6.28)
CSS 
JavaScript
SQL (mysql mariadb server edition)

Availability

There are features for 3 category visitors. Unregistered users can browse through the book list and check out the book he likes by reading the descriptions and other details on the book.

Registered users can browse through the book list and check out the book he likes by reading the descriptions and other details on the book. And they can also check out their subscription at the library by marking any book they like as “reading” or “read” and they can also check out their monthly payment status. They can update their profiles as necessary.

Admins can do all that of a user and they also have the privileges to control or modify any content of the systems like adding book and its details to the library database. Checking any user’s status modify them. Modifying admins and also they are the ones to handle payment and withdrawal of a user’s returning book.

Website design There are several (around 26) front end web pages which make up the interface of the system. And there are around 10 or more back-end pages to run the server side operations. Each of the pages does different actions or shows different contents as per request.

Pages with their works and description

Landing

Landing page is the starting page of the system. Everyone who tries to enter the system will go through this page to navigate the location he desires. This page navigates to: - log in/ signup, project details. This page also let the no registered visitor to browse and look up books.  

Login/ signup

This page is a form page which let new users to register for the library or existing users to log in to their account. Logged in users will be navigated to their dashboard and registered user will be redirect to this page again to log in with their log in credentials as of given in the signup form. 

_Dashboard _

Dashboard is the main pages like control panel or system that will let user do use the resources of their accounts and library resources. The dashboard consists of various pages. The pages are categorized in 4 sections. They are 

General

Profile

Admin

Browse

The admin panel can only be accessed with an authorization level admin or creator. Other than that General and profile section is visible to all registered users. And anyone can see the Browse section with or without logging in.

General

This section includes the summary of a user/ admin/ creator’s library status, bookshelf and his library statistics. Basically the summary is made up with his/her recent activities while the library statistics is build up with his/her latest payment information. And the bookshelf contains the information about the person’s reading. There he/she can find the books he/she has already read or is reading currently or the book(s) he/she has borrowed from the library.  [Fig 3.a]

Profile

This section includes the personal information about the user. User can also modify his/her personal information that was given while registering except the fact that no one can change the gender once set. User can also change the password information to make his/her login more secured and being well aware of being the only one to use that account. [Fig 3.b]

_Admin _

Only user with authentication level admin or higher can access this panel. This panel is for the library moderator to moderate the system content.

Admin can assign a book that a user wants to borrow for a specific period of time. The period of time is usually set by the admin while assigning. It will follow as the library standard protocol.

Admin can look up the information of any user. And remove him/her If wishes.

An admin can also add another user as admin. But no user level account can be upgraded to an admin level account.

Admins are also responsible for the book information given in the databases. Which means only admin can add any books into the library and add their information in the system to make them available to the users to browse and to look up.

When a user returns any book(s) it is also the duty of the admin to look if there is any due for that return and if there is to collect the necessary fine as applicable.

Admins are also the ones to collect monthly fee of the library to keep the finance of the system going. And to check up every ones due.

Admins can also generate report to evaluate the current processes that is going on with the library management and users.

Browse This is the section which is also available for the non-registered users as well as the registered ones. This section let people browse through the collection of the library to get information about if he/she is willing to create account and enjoy the features that the system will allow or just read about the book summaries and later on buy or borrow from other source.

Description on the project work

This project has three division of works. 

Design Database Connection

Design division includes designing the necessary web pages to create the interface for the system and make it more user friendly and attractive looking. This division works included the knowledge of HTML CSS and JAVASCRIPT. Although most of pages were built from downloaded templates the templates required opulent modification and required a lot of coding as well.

Database division includes creating database with necessary tables and defining fields as of system requirement. This portion also includes necessary data-entry for the system to run on a sample environment to evaluate the system and its work-abilities.

Connection division is the bridging between the database and the system to get and update necessary data as of demand. This is basically the fetch and publish part of the system. This division’s coding includes coding of PHP and SQL. PHP has a mysql integration for working right away in the server side.

Installation

  1. Install XAMPP / WAMPP or MYSQL and PHP individually working with any APCHE server. (local)
  2. Start mysql, apache
  3. Clone or download the project as zip
  4. extract and copy the Library-Management-System folder to htdocs or whatever server folder you have for your application from step 01.
  5. Download the library.sql
  6. Create a database in phpmyadmin named library
  7. Import the library.sql in the database
  8. Change your mysql password to 'open' for the 'root' user. 8.1. Or you can just move change the line $dbpass = "open"; to $dbpass = ""; in all the .php files.
  9. In your browser go to http://localhost/Library-Management-System/production/
  10. for log in use admin as both ID and password to get admin control in the dashboard.

Reference

Templates

Dashboard : https://github.com/puikinsh/gentelella

Login-signup : https://colorlib.com/wp/html5-and-css3-login-forms/

Landing page : https://colorlib.com/wp/html5-landing-page-templates/

Project Repository

https://github.com/mehedi-shafi/Library-Management-System

Demo Live Version

https://libraryenf.000webhostapp.com