Gym Management System2
Gym Management System2
Gym Management System2
1. INTRODUCTION
Existing system was manual, time consuming as data entry which include calculations
took lot of time, searching was very complex as there could be 100’s of entry every year, the
proposed system is expected to be faster than the existing system.
The project was made in order to effectively and efficient cater to requirements of the fitness
center. Very frequently the person who generally holds the tasks to manage the center needs to
keep records of all the transactions as well as data manually. Generally, in order to structure
these tasks separate registers are maintained. this whole process thus becomes quite cumbersome
for them to control manually. Moreover, any wrong data entered mistakenly can brings serious
results.
This manually managed system of the store was also heavily phoned to data loss due to certain
causes misplacement of registers destruction of registers, unauthorized access to registers etc.
which can bring in disastrous consequences.
The cost of maintaince of data and records of occurrence of transactions is very high, searching a
particular data specific to particular requirements is also very tedious in such system.in order to
retrieve records, the responsible person needs to manually locate the appropriate register and
locate the appropriate placement of that particular records which may be very time consuming.
The system is highly secured, because for login the system it requires the username and
password which is different for each department therefore providing each department a
different view of the customer information.
It provides wide range of certain criteria in each window the client is working for better
and quicker solution.
It maintains report for all criteria and transactions.
Manages member’s information separately for all exercise and employee information
separately for all exercise and employee information separately for considering the
requirements of gym.
This system can run on any windows operating system.
2. LITERATURE SURVEY
The following are the reasons why the current system should be computerized.
To save time management for recording details of each and every member and employee.
Manages member’s information separately for all exercise and employee information
separately for considering the requirements of gym.
The person’s time and work is reduced very much which prevails in the present system.
The people are not limited to receive or provide services in working hours of the branch
only; he is serviced 24 hours a day, 7 days of week and 365 days of the year.
Multi-user support.
Security management.
Administrator - operators who maintain the heath and efficiency of the DB.
Notepad:
Notepad is a common text-only (pain text) editor. The resulting files-typically saved with the
extension .txt –have no format tags or style, making the program suitable for editing system
file to use in a DOS environment and, occasionally, source code for later compilation or
execution, usually through a command prompt. It is also useful for its negligible use of
system resource; making for quick load time and processing time, especially on under-
powered hardware. Notepad support both left-to-right and right-to-left based languages.
Historically, Notepad did not treat newlines in UNIX-or classic Mac OS-style text files
correctly. However, on 8th May 2018, Microsoft announced that they had fixed this issue.
Notepad offers only the most basic text manipulation function, such as finding text. Only
newer versions of Windows include an updated version of Notepad with a search and replace
function. However, it has much less functionality in comparison to full-scale editors.
MySQL:
MySQL is an open source relational database management system (RDBMS). Its name is a
combination of “My”, the name of co-founders Michael Widenius’s daughter, and “SQL”, the
abbreviation for Structured Query Language.
MySQL is offered under two different editions: the open source MySQL Community Server and
the proprietary Enterprise Server MySQL Enterprise Server is differentiated by a series of
proprietary extensions which install as server plug-in, but otherwise shares the version
numbering system and is built from the same code base.
MySQL is written in C and C++. Its SQL parser is written in yacc, but it uses a home-brewed
lexical analyzer. MySQL works on many system platforms, including AIX, BSDi, FreeBSD, HP-
UX, eComStation, i5/OS, IRIX, Linux, macOS, Microsoft Windows, NetBSD, Novell NetWare,
OpenBSD, Open Solaris, OS/2 Warp, QNX, Oracle Solaris, Symbian, SunOS, SCO Open
Server, SCO UnixWare, Sanos and Tru64. A port of MySQL to OpenVMS also exists. The
MySQL server software itself and the client libraries use dual-licensing distribution. They are
offered under GPL version 2, beginning from 28 June 2000 (which in 2009 has been extended
with a FLOSS License Exception) or to use a proprietary license.
Support can be obtained from the official manual. Free support additionally is available in
different IRC channels and forums. Oracle offers paid support via its MySQL Enterprise
products. They differ in the scope of services and in price. Additionally, a number of third party
organizations exist to provide support and services, including Maria DB and Persona.
MySQL has received positive reviews, and reviewers noticed it "performs extremely well in the
average case" and that the "developer interfaces are there, and the documentation (not to mention
feedback in the real world via Web sites and the like) is very, very good”. It has also been tested
to be a "fast, stable and true multi-user, multi-threaded sql database server".
3. SYSTEM REQUIREMENTS
XAMPP
PHP
MySQL
HTML
XAMPP:
XAMPP is a free and open-source cross-platform web server solution stack package
developed by Apache Friends, consisting mainly of the Apache HTTP Server, Maria DB
database, and interpreters for script written in the PHP and Perl programming languages. Since
most actual web server deployments use the same components as XAMPP, it makes transitioning
from a local test server to a live server possible.
XAMPP is regularly updated to the latest releases of Apache, Maria DB, PHP and Perl. It
also comes with a number of other modules including Open SSL, phpMyAdmin, MediaWiki,
Joomla, Word Press and more. Self-contained, multiple instances of XAMPP can exist on a
single computer, and any given instance can be copied from one computer to another. XAMPP is
offered in both a full and a standard version (Smaller version).
PHP:
PHP code may be embedded into HTML code, or it can be used in combination with
various web template systems, web content management systems, and web frameworks. PHP
code is usually processed by a PHP interpreter implemented as a module in the web server or as
a Common Gateway Interface (CGI) executable. The web server combines the results of the
interpreted and executed PHP code, which may be any type of data, including images, with the
generated web page. PHP code may also be executed with a command-line interface (CLI) and
can be used to implement standalone graphical applications.
MySQL:
MySQL is an open source relational database management system (RDBMS). Its name is
a combination of “My”, the name of co-founders Michael Widenius’s daughter, and “SQL”, the
abbreviation for Structured Query Language.
MySQL is offered under two different editions: the open source MySQL Community
Server and the proprietary Enterprise Server MySQL Enterprise Server is differentiated by a
series of proprietary MySQL is an open source relational database management system
(RDBMS). Its name is a combination extensions which install as server plug-in, but otherwise
shares the version numbering system and is built from the same code base.
HTML:
The extended reach of information and services to customers that the Internet has
enabled, has created a new challenge for the developer. The developer should develop a user
interface that is distributable, available on multiple platforms and supports a wide range of client
environments from handheld wireless devices to high-end workstations. So to maintain a broad
reach to client environments and to achieve greatest compatibility with all browsers, this system
uses standard HTML.
Hyper Text Markup Language is the standard language for creating documents for the
World Wide Web. An HTML document is a text file, which contains the elements, in the form of
tags that a web browser uses to display text, multimedia objects, and hyperlinks using HTML;
we can format a document for display and add hyperlinks to other documents.
4. IMPLEMENTATION DETAILS
During the software-testing phase each module of software is thoroughly tested for bugs
and for accuracy of output. The system developed is very user-friendly and the detailed
documentation is also given to the user as online help wherever necessary. The implementation
phase normally ends with the formal test involving all the components.
The entire system was developed using the PHP, HTML, XAMPP Server, and MySQL as
back end. The HTML is used to design the web page. The XAMPP Server is used to understand
the client’s request and to send response to them. The PHP are used for client-side validations so
that the user can enter only appropriate input in the input fields. The MySQL is the back end tool
where the database resides.
Hence the design of the entire system is user-friendly and simple the implementation has
been quite easy.
INDEX PAGE:
In this module a member can login with his userid and password which has given by the admin
while registration.
<? php
session_start();
require('db.php');
Susername="";
Serrors = array():
if (isset($_POST['login_user'])) {
Susername = mysqli_real_escape_string(Sconn, S_POST['username']); Spwd =
mysqli_real_escape_string(Sconn, $_POST['pwd']);
if (count(Serrors) ==0) {
Squery= "SELECT FROM login WHERE uname-Susername' AND pwd="Spwd":
Sresults = mysqli_query($conn, Squery); 1) {
if (mysqli_num_rows(Sresults) = $_SESSION['uname'] = Susername;
header("location.home.php");
}
Else
{
array_push(Serrors,
combination</b></div>");
}
}
?>
<!DOCTYPE html>
<html>
<head>
"<div
class='alert
alert-warning><b>Wrong
username/pass
<title>gym management</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link
href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
rel="stylesheet"
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script
src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
position: fixed; z-index: -1000; width: 100%; height: 100%; overflow: hidden; left: 0;
<style type="text/css"> background
top: 0;
}
form (
width:30%;
margin-left:35%; margin-top:7%;
}
background-color: white;
hr{
}
.navbar{
background-color: transparent !important;
}
</style>
</head>
<body>
<nav class="navbar navbar-expand-md bg-dark navbar-dark"> <div class="container-fluid">
<a class="navbar-brand" href="index.php"><h3>GYM MANAGEMENT SYSTEM</h3></a>
</div>
<nav>
<hr>
<h2 style="color:white; text-align:center;"> To be used by admin only.</h2>
<hr>
<form class="form" action="" method="post">
<input type="text" placeholder="USERNAME" required> <br/> mb-2
class="form-control
<input type="password" class="form-control
placeholder="PASSWORD" required> <br/>
<button
type="submit"
name="login_user">Login</button>
</form>
<div class="background"> <img src="images/gym_bg.jpg">
</div>
</body>
</html>
Add member:
Here a new member enters to a gym he has to give his details to a gym admin, so that admin can
add a new member to a gym.
<?php
require('db.php'),
Serrors = array():
if (isset($_REQUEST['member'])) {
Smem_id=mysqli_real_escape_string(Sconn, S_REQUEST['id']); Sname =
mysqli_real_escape_string(Sconn, S_REQUEST['name']); Sdob=
mysqli_real_escape_string(Sconn, S_REQUEST['dob']); Spackage =
mysqli_real_escape_string(Sconn, S_REQUEST['package']); Smobileno =
mysqli_real_escape_string(Sconn, S REQUEST['mobileno']);
Spay_id=mysqli_real_escape_string(Sconn, S_REQUEST['pay_id']);
Strainer_id=mysqli_real_escape_string(Sconn, S_REQUEST['trainer_id]); Suser_check_query=
"SELECT FROM member WHERE mem_id-Smem_id' LIMIT 1". Sresult =
mysqli_query(Sconn, Suser_check_query); Suser=mysqli_fetch_assoc($result);
Sage=mysqli_real_escape_string(Sconn, $_REQUEST['age']);
if (Suser) …
Squery"INSERT INTO member
(mem_id,name,age,dob,package,mobileno,pay_id,trainer_id) VALUES('Smem_id',
'Sname','Sage","Sdob', 'Spackage","Smobileno, "Spay_id','Strainer_id'y",
Ssql-mysqli_query(Sconn, Squery),
if ($sql) {
Smsg="<div class='alert alert-success><b>Member added successfully</b></div>";
}
else
{
Smsg="<div class='alert alert-warning><b>Member not added</b></div>";
}
?>
<div class="container">
Add payment:
Here in this module after adding a member to a gym he has to do a payment after 1 month in
online mode.
<?php
require('db.php');
Serrors = array()
if (isset($_REQUEST['payment'])) {
Spay_id= mysqli_real_escape_string(Sconn, S_REQUEST['id']).
Samount = mysqli_real_escape_string(Sconn, S_REQUEST ['amount']);
Sgym_id=mysqli_real_escape_string(Sconn, S_REQUEST ['gym_id']);
Suser_check_query= "SELECT FROM payment WHERE pay_id='Spay_id' LIMIT Sresult =
mysqli_query(Sconn, Suser_check_query); Suser=mysqli_fetch_assoc($result);
if (Suser) {
if (Suser['pay_id"]=Spay_id) {
array_push(Serrors, "<div class='alert alert-warning><b>ID already exists</b></di
}
if (count(Serrors)=0) {
Squery="INSERT INTO payment (pay_id,amount,gym_id)
VALUES('Spay_id','Samount','Sgym_id")",
Ssql-mysqli_query($conn, Squery);
if ($sql) {
Smsg="<div class 'alert alert-success><b>Payment area added successfully</b></div>";
}
Else
{
Smsg"<div class='alert alert-warning'><b>Payment area not added</b></div>",
}
?>
<div class="container">
<form class="mt-3 form-group" method="post" action=""> <h3>ADD PAYMENT AREA</h3>
<?php include('errors.php');
echo @Smsg,
Add trainer:
Here a new trainer enters to a gym he has to give his details to a gym admin, so that admin can
add a new trainer to a gym.
<?php
require('db.php');
Serrors = array():
if (isset($_REQUEST[trainer'])) {
Strainer_id=mysqli_real_escape_string(Sconn, S_REQUEST['id']): Sname=
mysqli_real_escape_string(Sconn, S_REQUEST['name']): Stime
mysqli_real_escape_string(Sconn, S REQUEST['time']): Smobileno=
mysqli_real_escape_string(Sconn, S_REQUEST['mobileno']);
Spay_id=mysqli_real_escape_string(Sconn, S_REQUEST['pay_id']); Suser_check_query=
"SELECT FROM trainer WHERE trainer_id='Strainer_id' LIMIT Sresult =
mysqli_query(Sconn, Suser_check_query); Suser mysqli_fetch_assoc($result);
if (Suser) {
if (Suser[trainer_id] =Strainer_id) { array_push(Serrors, "<div class='alert alert-warning><b>ID
already exists</b></div>")
}
}
if (count(Serrors) = 0) {
Squery="INSERT INTO trainer (trainer_id,name,time,mobileno,pay_id) VALUES('Strainer_id',
'Sname', 'Stime','Smobileno', 'Spay_id")";
Ssql-mysqli_query(Sconn, Squery);
if ($sql) {
Smsg="<div class='alert alert-success><b>Trainer added successfully</b></div>",
}
Else
{
Smsg="<div class='alert alert-warning'><b>Trainer not added</b></div>";
<div class="container">
<form class="mt-3 form-group" method="post" action="">
<h3>ADD TRAINER</h3> <?php include('errors.php');
echo @Smsg.
Update member:
Here a new details of member of a gym then admin can update his details which he has given for
updating details admin can update this.
<?php
require('db.php');
if (isset($_REQUEST['member'])) {
Smem_id = mysqli_real_escape_string(Sconn, S_REQUEST['id']);
Sname = mysqli_real_escape_string(Sconn, S_REQUEST['name']):
Sage = mysqli_real_escape_string(Sconn, S_REQUEST['age']);
Sdob= mysqli_real_escape_string(Sconn, $_REQUEST['dob']);
Spackage = mysqli_real_escape_string(Sconn, S_REQUEST['package']);
Smobileno= mysqli_real_escape_string(Sconn, S_REQUEST['mobileno']);
Supdate_query="update member set
mem_id='Smem_id',name='Sname',age='Sage',dob='Sdob'.package='Spackage,mobileno=" eno'
where mem_id="".$_GET['id']."";
Supdate_sql-mysqli_query(Sconn,Supdate_query);
Serr="<div class='alert alert-success><b>Member Area Details updated</b></div>";
Scon-mysqli_query(Sconn,"se…
<label class="mt-3">MEMBER ID</label>
<input type="text" name="id" value="<?php echo @Sres[mem_id"];?>"
class="form-control">
<label class="mt-3">MEMBER NAME</label>
<input type="text" name "name" value="<?php echo @Sres['name'],?>"
class="form-control">
<label class="mt-3">AGE</label>
<input type="text" name "age" value="<?php echo @Sres['age'];?>"
class="form-control">
<label class="mt-3DOB</label>
<input type="text" name="dob" value="<?php echo @Sres['dob'];?>"
class="form-control">
<label class="mt-3">PACKAGE</label>
Update trainer:
Here a new details of trainer of a gym then admin can update his details which he has given for
updating details admin can update this.
<? php
require('db.php');
if (isset(S_REQUEST['trainer'])) {
Strainer_id = mysqli_real_escape_string(Sconn, S_REQUEST['id']).
Sname = mysqli_real_escape_string(Sconn, S_REQUEST['name']):
Stime = mysqli_real_escape_string(Sconn, S_REQUEST['time']).
Smobileno = mysqli_real_escape_string(Sconn, $_REQUEST['mobileno']).
Supdate_query="update trainer set
trainer_id='Strainer_id,name-Sname, time-Stime',mobileno-Smobileno' where
trainer_id="S_GET['id'].""";
Supdate_sql-mysqli_query(Sconn,Supdate_query);
Serr="<div class='alert alert-success><b>Trainer Details updated</b></div>";
}
Scon mysqli_query(Sconn,"select from trainer where trainer_id=""$_GET[ie Sres-
mysqli_fetch_assoc(Scon):
?>
<div class="container">
<form class="mt-3 form-gr…
<input type="text" name="id" value="<?php echo @Srestrainer_id].?>
class="form-control">
<label class="mt-3">TRAINER NAME</label>
<input type="text" name="name" value="<?php echo @Sres['name'],?>
class="form-control">
<label class="mt-3">TIME</label>
<input type="text" name="time" value="<?php echo @Sres['time'];?>"
class="form-control">
<label class="mt-3">MOBILE NO</label> <input type="text" name="mobileno" value="<?php
echo @Sres['mobileno].?>
class="form-control">
Delete member:
Here admin can handle overall activities such as member attendance, trainer attendance and
member left the gym admin can delete the member id and his details.
<?php
require('db.php');
Sinf-S_GET['id'];
Ssql_query="DELETE FROM member WHERE mem_id-Sinf";
Sdelete mysqli_query(Sconn,Ssql_query);
if ($delete) {
header("location:home.php?info-manage_member");
} else {
echo "error".mysqli_error(Sconn);
}
?>
Delete trainer:
Admin can view the package details of an individual trainer. Admin can also view the member's
attendance taken by the trainer. Admin can delete the trainer if he is not working in gym.
<?php
require('db.php');
Sinf $_GET['id'];
Ssql_mem="DELETE FROM member WHERE trainer_id-(select trainer_id from trair
trainer_id-Sinf)";
Ssql_query_mem-mysqli_query ($conn,Ssql_mem);
if (Ssql_query_mem) {
Ssql_query="DELETE FROM trainer WHERE trainer_id='Sinf";
Sdelete mysqli_query(Sconn,Ssql_query);
if ($delete) {
header("location:home.php?info-manage_trainer");
}else{
echo "error".mysqli_error ($conn);
}
}else{
echo "Not deleted";
}
5. DETAILED DESIGN
5.1. ER-DIAGRAM
USER_ID USERNAME PASSWORD
PAY_ID
LOGIN
GYM_NAME
MEM_ID TRNR_ID
GYM_ID TYPE
NA M E
MEMBER
Login
GYM
Manage Manage
gym ADDRESS
Training ADMIN
Manage Manage
trainer payment
P_ID
TRAINER
PAY_ID M O B _ NO
GYM_ID
NAM E
Pay
Gym:
Field Type
Gym_id int(11)
Gym_name varchar(20)
Address varchar(20)
Type Varchar(20)
Gym member:
Field Type
Mem_id varchar(30)
Name varchar(30)
Mobile Number int(11)
Dob varchar(11)
Package varchar(20)
Age int(100)
Pay_id varchar(20)
Trainer_id Varchar(255)
Login:
Field Type
Id int(30)
Uname varchar(30)
Pwd Varchar(30)
Payment:
Field Type
Pay_id varchar(11)
Amount int(11)
gym_id varchar(255)
Trainer:
Field Type
trainer_id varchar(11)
Name varchar(100)
Time time(120)
MobileNo int(11)
Pay_id Longtext
Package
Management
GYM Trainer
Management Management
Gym
Management
System
Login Management
I Level – DFD:
Generate gym
Gym management report
Generate gym
Gym branch branch report
management
II Level – DFD:
7. SCREEN SHOTS
LOGIN:
ADD MEMBER:
ADD TRAINER:
8. TESTING
System testing is the stage before system implementation where the system is made error
free and all the needed modifications are made. The system was tested with test data and
necessary corrections to the system were carried out. All the reports were checked by the user
and approved. The system was very user friendly with online help to assist the user wherever
necessary.
Test Plan:
A test plan is a general document for the entire project, which defines the scope,
approach to be taken, and schedule of testing, as well as identifying the test item for the entire
testing process, and the personal responsible for the different activities of testing. This document
describes the plan for testing, the knowledge management tool.
Test units
Features to be tested
Test deliverables
Schedule
Personal allocation
Test units:
Test Case specification is major activity in the testing process. In this project, I have
performed two levels of testing.
Unit testing
System testing
Exception handling
Test deliverables:
The following documents are required besides the test plan
Error report
The test case specification for system testing has to be submitted for review before the
system testing commences.
9. CONCLUSION
This project has given me a sample opportunity to design, code, test and implements an
application. This has helped in putting into practice of various Software Engineering principles
and Database Management concepts like maintaining integrity and consistency of data. Further,
this has helped me to learn more about MySQL, XAMPP server, HTML, and PHP.
I thank my guide for his invaluable contribution in guiding me through out the project. I
also thank my parents and friends who have supported and motivated me to complete this project
successfully.
9.1 Advantages:
9.1.1 Extensibility:
The other features, which the Blood bank services provide, can also be incorporated into
this Blood Bank. The Encryption standards can also be used to make the transactions more
secure. The Socket Secure Layer protocol can also used in implementing the system, which gives
highest security in the Internet.
As there was a little number of contact person’s information given, some people may face
difficulty in getting blood fast. So I like to gather more information regarding the contact
persons in other cities as well as villages and will provide much more services for the people and
help everyone with humanity.
Limitation:
In this project the searching can be done for donors for majority of cities but not for every
city.
In this project the contact person’s details are given for the limited cities only.
REFERENCES
"Head First PHP and MySQL"- Lynn Beighley & Michael Morrison.
WEBSITES
https://sites.google.com/site/project-report/gym-management-system-project-report
https://www.coursehero.com/file/gym-management-documentation
https://projectworlds.in/free-projects/php-projects/gym-management-system-project-in-php
https://www.freeprojectz.com/paid-projects/gym-management-system-0
https://code-projects.org/gym-management-system-c-programming-source-code