Professional Documents
Culture Documents
Exam Registration System
Exam Registration System
system
# Importing modules
from tkinter import ttk
import tkinter as tk
from tkinter import *
from tkinter import messagebox
import random
import os
import mysql.connector
# Main Loop
# Setting up mysql
mydb = mysql.connector.connect(host='localhost',
user='root', passwd='tiger', database='test')
cursor = mydb.cursor()
root = tk.Tk()
root.state("zoomed")
mydb = mysql.connector.connect(host='localhost',
user='root', passwd='tiger', database='test')
cursor = mydb.cursor()
# Creating Labels
root.geometry("1350x750+0+0")
root.title("Exam Registration System")
root.configure(background='powder blue')
## FUNCTIONS
# Function for calculate cost
def calculate_cost():
if len(list(str(aadhar_num.get())))!=12:
messagebox.showwarning("Error","Please enter valid
Aadhar Card Number")
elif len(list(str(phone_num.get())))!=10:
messagebox.showwarning("Error","Please enter valid
Mobile Number")
elif len(list(str(pin_code.get())))!=6:
messagebox.showwarning("Error","Please enter valid Pin
Code")
else:
fees_exam()
messagebox.showinfo("Success","Registration
Successful")
def fees_exam():
# JEE FOR BOYS GENERAL CATEGORY
if exam_type.get() =='JEE' and gender_type.get() =='Male'
and category_type .get() == 'General':
total_cost.set(650)
elif nationality.get()=='Select':
messagebox.showwarning("Error", "Some Entry is left
unfilled")
else:
# Declaration of variables to be used in tables
root2 = Tk()
root2.title("Exam Registration")
root2.geometry("350x300")
cand_name_table = cand_name.get()
father_name_table = father_name.get()
mother_name_table = mother_name.get()
aadhar_card_num = aadhar_num.get()
natio_table=nationality.get()
address_cur_table=address_cur.get()
residence_place_table=residence_place.get()
city_name_table=city_name.get()
district_name_table=district_name.get()
state_name_table=state_name.get()
pin_code_table=pin_code.get()
email_add_table=email_add.get()
phone_num_table=phone_num.get()
pass_status_10_table=pass_status_10.get()
name_exam_10_table=name_exam_10.get()
school_board_10_table=school_board_10.get()
pass_year_10_table=pass_year_10.get()
pass_status_12_table=pass_status_12.get()
name_exam_12_table=name_exam_12.get()
school_board_12_table=school_board_12.get()
pass_year_12_table=pass_year_12.get()
mod_pay_table=mod_pay.get()
ge_type=gender_type.get()
ca_type=category_type.get()
ex_type=exam_type.get()
cursor.execute(statement, values)
mydb.commit()
# Resizing
for row in range(0, 8):
Grid.rowconfigure(root2, row, weight=1)
for col in range(0, 9):
Grid.columnconfigure(root2, col, weight=1)
#Frame1=Personal Details
title = Label(root, text='Exam Registration System',
font=("Arial", 20, 'bold'))
title.grid(row=0, column=0, columnspan=3, padx=600,
pady=20)
details = LabelFrame(root, text="Enter Personal Details:",
padx=5, pady=5, font=("Arial", 13, 'bold'))
details.grid(row=1, column=0, sticky=NW, padx=5,
columnspan=2)
labels_frame = Frame(details)
labels_frame.pack(expand=True, fill='both', side=LEFT)
entries_frame = Frame(details)
entries_frame.pack(expand=True, fill='both', side=RIGHT)
father_name = Entry(entries_frame)
father_name.pack(expand=True, fill='both', pady=(20,20))
mother_name = Entry(entries_frame)
mother_name.pack(expand=True, fill='both', pady=(15,30))
aadhar_num = Entry(entries_frame)
aadhar_num.pack(expand=True, fill='both', pady=(5,25))
nationality = Entry(entries_frame)
nationality.pack(expand=True, fill='both', pady=(10,10))
gender_type.set('Select')
category_type.set('Select')
exam_type.set('Select')
mod_pay.set('Select')
drop_menu1 = OptionMenu(entries_frame, gender_type,
"Male","Female")
drop_menu1.pack(pady=(20,0))
#Frame2=Contact Details
details1 = LabelFrame(root, text="Enter Contact Details:",
padx=5, pady=5, font=("Arial", 13, 'bold'))
details1.grid(row=1, column=1, sticky=NW, padx=5,
columnspan=2)
labels_frame1 = Frame(details1)
labels_frame1.pack(expand=True, fill='both', side=LEFT)
entries_frame1 = Frame(details1)
entries_frame1.pack(expand=True, fill='both', side=RIGHT)
residence_place = Entry(entries_frame1)
residence_place .pack(expand=True, fill='both', pady=20)
city_name = Entry(entries_frame1)
city_name .pack(expand=True, fill='both', pady=20)
district_name = Entry(entries_frame1)
district_name.pack(expand=True, fill='both', pady=20)
state_name = Entry(entries_frame1)
state_name .pack(expand=True, fill='both', pady=20)
pin_code = Entry(entries_frame1)
pin_code .pack(expand=True, fill='both', pady=20)
email_add = Entry(entries_frame1)
email_add .pack(expand=True, fill='both', pady=20)
phone_num = Entry(entries_frame1)
phone_num .pack(expand=True, fill='both', pady=20)
#Frame3=Academic Details
details2 = LabelFrame(root, text="Enter Academic Details:",
padx=5, pady=5, font=("Arial", 13, 'bold'))
details2.grid(row=1, column=2, sticky=NW, padx=5,
columnspan=2)
labels_frame2 = Frame(details2)
labels_frame2.pack(expand=True, fill='both', side=LEFT)
entries_frame2 = Frame(details2)
entries_frame2.pack(expand=True, fill='both', side=RIGHT)
name_exam_10= Entry(entries_frame2)
name_exam_10 .pack(expand=True, fill='both', pady=20)
school_board_10 = Entry(entries_frame2)
school_board_10 .pack(expand=True, fill='both', pady=20)
pass_year_10 = Entry(entries_frame2)
pass_year_10.pack(expand=True, fill='both', pady=20)
pass_status_12 = Entry(entries_frame2)
pass_status_12.pack(expand=True, fill='both', pady=20)
name_exam_12= Entry(entries_frame2)
name_exam_12.pack(expand=True, fill='both', pady=20)
school_board_12= Entry(entries_frame2)
school_board_12.pack(expand=True, fill='both', pady=20)
pass_year_12= Entry(entries_frame2)
pass_year_12.pack(expand=True, fill='both', pady=20)
#Frame4=Cost
total_cost = StringVar()
sit_1 = StringVar()
total_cost_entry = Label(cost_details,
textvariable=total_cost, font=("Arial", 13, 'bold'))
total_cost_entry.grid(row=0, column=1, pady=31, sticky='w')
)'''
cursor.execute(statement)
mydb.commit()
def retrive_data():
# Currently all widgets are packed
root1 = Tk()
root1.title("Exam Register")
global tree
Label(root1, text="Exam Registration Database",
font=('Arial',15,'bold')).pack(pady=10)
tree = ttk.Treeview(root1)
tree.pack(padx=5)
tree["columns"] = ("one", "two", "three", 'four', 'five', 'six',
'seven','eight', 'nine',
'ten','eleven','twelve','thirteen','fourteen','fifteen','sixteen','s
eventeen','eighteen','nineteen','twenty',
'twentyone','twentytwo','twentythree','twentyfour')
tree.column('#0', width=100)
tree.column("one", width=100)
tree.column("two", width=100)
tree.column("three", width=100)
tree.column("four", width=100)
tree.column("five", width=100)
tree.column("six", width=100)
tree.column("seven", width=100)
tree.column("eight", width=100)
tree.column("nine", width=100)
tree.column("ten", width=100)
tree.column("eleven", width=100)
tree.column("twelve", width=100)
tree.column("thirteen", width=100)
tree.column("fourteen", width=100)
tree.column("fifteen", width=100)
tree.column("sixteen", width=100)
tree.column("seventeen", width=100)
tree.column("eighteen", width=100)
tree.column("nineteen", width=100)
tree.column("twenty", width=100)
tree.column("twentyone", width=100)
tree.column("twentytwo", width=100)
tree.column("twentythree", width=100)
tree.column("twentyfour", width=100)
cursor.execute(
''' SELECT * FROM examregister ''')
record = cursor.fetchall() # Fetches all the data about the
ticket/receipt
root.mainloop()