Professional Documents
Culture Documents
CSprojectclass 12
CSprojectclass 12
CSprojectclass 12
Project
2023-24
Done by:
Anurag Subramaniyan
Chris itty biju
Vedanth saravanan
of
CLASS XII-A3
INDEX:
Software used:
Our Python program utilizes several software components to achieve its functionality:
Python:
Python is the programming language in which the entire application is written. It is used
to define the logic, control flow, and interactions with various components.
MySQL Database:
MySQL is an open-source relational database management system (RDBMS) used to
store structured data. In this program, MySQL is used to store information about trainers,
members, login credentials, and other related data.
mysql-connector-python:
This is a Python library that provides an interface for connecting to a MySQL database
and performing various database operations using Python code. In the program, the
mysql.connector module is used to establish connections, create tables, execute SQL
queries, and commit changes.
Text Editor/IDE:
A text editor or integrated development environment (IDE) is used to write, edit, and save
the Python code. Common choices include Visual Studio Code, PyCharm, Sublime Text,
or any other preferred code editor.
Command Line Interface (CLI):
The program primarily interacts with users through a command-line interface. The CLI
provides a way to input data, make choices, and receive textual output. The user enters
options and data as text, and the program processes these inputs accordingly.
MySQL Server:
A MySQL server is required to host the database where the program stores its data. The
program connects to this server to read and write data.
Database Management Tool (Optional):
While not directly mentioned in the code, a database management tool like phpMyAdmin
or MySQL Workbench can be used to interact with and manage the MySQL database
visually. These tools offer graphical interfaces to manage database schemas, execute
queries, and view data.
Terminal/Command Prompt:
The program is run from a terminal or command prompt, where the user interacts with
the program by entering choices and data. The terminal provides an environment for
executing the Python script and observing its output.
Operating System:
The program can run on various operating systems, such as Windows, macOS, or Linux,
as long as Python and the required libraries are installed.
In summary, the program utilizes Python as the programming language and the mysql-
connector-python library to connect to and manipulate a MySQL database. It interacts with
users through a command-line interface and relies on the MySQL server for data storage and
retrieval. The overall execution environment includes a text editor or IDE, a terminal/command
prompt, and potentially a database management tool for database administration.
Modules used :
, here's a brief description of the modules used in the program:
mysql.connector:
This module provides the necessary tools for connecting to a MySQL database and
performing operations such as executing queries and managing transactions.
print:
The built-in print function is used to display text on the console. It's used to show menus,
messages, and information to the user.
input:
The built-in input function is used to capture user input from the console. It's used to
gather choices, passwords, and other information from the user.
while loop:
The while loop is used to repeatedly display menus and gather user input until the user
decides to exit. It ensures an interactive experience.
if statements:
if statements are used to conditionally execute certain parts of the program. They're used
to determine if the provided password matches the admin password and for various menu
options.
execute:
The execute method is part of the mysql.connector module and is used to execute SQL
queries on the database.
commit:
The commit method is used in combination with database operations to save changes
made to the database.
string manipulation:
Various string manipulation techniques are used to format and construct SQL queries,
messages, and user prompts.
integer conversion:
The int function is used to convert user input (which is captured as a string) into integer
values for comparisons and calculations.
input validation and loops:
Loops and conditional statements are used for input validation, ensuring that users enter
appropriate data.
These modules and techniques collectively enable the program to interact with users, manage
data in the MySQL database, and provide a functional and interactive experience for gym
management tasks.
Algorithm :
here's a stepwise algorithm for the Gym Management System program:
Import the mysql.connector module for database interactions.
Print the gym management title.
Establish a connection to the MySQL database using a predefined host, username, and
password.
Create necessary database tables ('fees', 'login', 'member', 'trainer', 'sno') if they don't
already exist.
Initialize flags for table existence checks.
Check if 'sno' table exists:
If not, insert an initial record with ID and DID set to 0.
Check if 'fees' table exists:
If not, insert default membership fee values for silver, gold, and platinum plans.
Check if 'login' table exists:
If not, insert an initial admin login record with a default password.
Display the main menu with options: LOGIN and EXIT.
Take user's choice:
If choice is 1 (LOGIN):
Prompt user for admin password.
Fetch the stored admin password from the 'login' table.
If entered password matches stored password, proceed to admin sub-menu.
Display admin sub-menu with various options.
Based on the selected option, execute corresponding actions:
Add Trainer:
Gather trainer details and generate a unique ID.
Insert trainer data into the 'trainer' table and update 'sno' table.
Add Member:
Gather member details and membership category.
Generate a unique ID and calculate the membership fee.
Insert member data into the 'member' table and update 'sno' table.
Remove Trainer:
Take the ID of the trainer to be removed.
Delete the corresponding record from the 'trainer' table.
Remove Member:
Take the ID of the member to be removed.
Delete the corresponding record from the 'member' table.
Modify:
Display options to modify trainer info, member info, or go back.
Depending on the choice:
Update necessary fields in the respective table.
Change Password:
Take the old and new passwords.
If the old password matches the stored admin password, update the password in the 'login'
table.
Go Back:
Return to the main menu.
If the password does not match, show an error message and return to the main menu.
If choice is 2 (EXIT):
End the program.
If an invalid choice is entered, display an error message.
Close the connection to the MySQL database.
This stepwise algorithm outlines the flow of the Gym Management System program, detailing
how it interacts with users, manages data in the database, and performs various gym management
tasks.
Source code:
import mysql.connector
print('''
GYM MANAGEMENT
''')
myd=mysql.connector.connect(host='localhost',user='root',passwd='kuki2510')
myc=myd.cursor()
# Creating DATABASE
myc.execute('use dio')
myd.commit()
#Creating Tables
flag=0
for i in myc:
flag=1
if flag==0:
for i in myc:
flag=1
if flag==0:
myd.commit()
flag=0
for i in myc:
flag=1
if flag==0:
myd.commit()
#main section
while True:
print('''
1.LOGIN
2.EXIT
''')
ch=int(input('''
if ch==1:
passs=input('''
for i in myc:
t_user,t_pas=i
if t_pas==passs:
print('''
1.ADD TRAINER
2.ADD MEMBER
3.REMOVE TRAINER
4.REMOVE MEMBER
5.MODIFY
6.CHANGE PASSWORD
7.GO BACK
''')
ch=int(input('''
#Adding Trainer
if ch==1:
name=input('''
age=input('''
gender=input('''
salary=int(input('''
for i in myc:
t_id,t_did=i
t_id=t_id+1
myc.execute("insert into trainer values('"+str(t_id)
+"','"+name+"','"+age+"','"+gender+"','"+str(salary)+"')")
myd.commit()
print(f'''
''')
print('''
SUCCESSFULLY ADDED..........
''')
#Adding Member
elif ch==2:
name=input('''
gender=input('''
print('''
1.SILVER
2.GOLD
3.PLATINUM
''')
ch=int(input('''
for i in myc:
t_silver,t_gold,t_platinum=i
if ch==1:
category='silver'
amt=t_silver
elif ch==2:
category='gold'
amt=t_gold
elif ch==3:
category='platinum'
amt=t_platinum
for i in myc:
t_id,t_did=i
t_did=t_did+1
myd.commit()
print(f'''
''')
#Removing Trainer
elif ch==3:
idd=int(input('''
flag=0
for i in myc:
t_id=i[0]
if t_id==idd:
flag=1
if flag==1:
myc.execute("delete from trainer where id='"+str(idd)+"'")
myd.commit()
print('''
else:
print('''
#Removing Member
elif ch==4:
idd=int(input('''
flag-0
for i in myc:
t_id=i[0]
if t_id==idd:
flag=1
if flag==1:
myd.commit()
print('''
else:
print('''
#Modify
elif ch==5:
loop1='y'
while loop1=='y':
print('''
1.PLANS
2.TRAINER INFO
3.MEMBER INFO
ch=int(input('''
if ch==1:
print('''
1.SILVER
2.GOLD
3.PLATINUM
''')
ch2=int(input('''
amt=int(input('''
if ch2==1:
myd.commit()
elif ch2==2:
myd.commit()
elif ch2==3:
myd.commit()
elif ch==2:
idd=int(input('''
flag=0
for i in myc:
t_id=i[0]
if t_id==idd:
flag=1
if flag==1:
print('''
1.NAME
2.AGE
3.GENDER
4.SALARY ''')
ch=int(input('''
if ch==1:
name=input('''
myd.commit()
if ch==2:
age=input('''
myd.commit()
if ch==3:
gender=input('''
if ch==4:
salary=int(input('''
myd.commit()
elif ch==3:
idd=int(input('''
flag=0
for i in myc:
t_id=i[0]
if t_id==idd:
flag=1
if flag==1:
print('''
1.NAME
2.GENDER
3.CATEGORY ''')
ch2=int(input('''
if ch2==1:
name=input('''
myd.commit()
elif ch2==2:
gender=input('''
ENTER UPDATED GENDER: ''')
myd.commit()
elif ch2==3:
print('''
1.SILVER
2.GOLD
3.PLATINUM
''')
for i in myc:
t_silver,t_gold,t_platinum=i
ch3=int(input('''
if ch3==1:
category="silver"
amt=t_silver
elif ch3==2:
category="gold"
amt=t_gold
elif ch3==3:
category="platinum"
amt=t_platinum
myd.commit()
else:
print('''
break
#Change Password
elif ch==6:
passs=input('''
for i in myc:
t_user,t_pas=i
if t_pas==passs:
new_pas=input('''
myd.commit()
print('''
else:
print('''
else:
Break
Output:
1. Adding trainer:
2. Adding member:
3.Removing Trainer:
4.Removing Member:
5.MODIFY:
Member table post info modification now category changed to platinum from silver :
BIBLIOGRAPHY:
. CLASS 12 – SUMITA ARORA CS TEXTBOOK
.Geeksforgeeks.org
. Youtube