master 25b00f281fdf cached
3 files
10.3 KB
3.3k tokens
8 symbols
1 requests
Download .txt
Repository: Sid-149/DBMS-Movie-Ticket-Booking-System
Branch: master
Commit: 25b00f281fdf
Files: 3
Total size: 10.3 KB

Directory structure:
gitextract_cqne0_dr/

├── MiniProject_Backend.py
├── MiniProject_Frontend.py
└── README.md

================================================
FILE CONTENTS
================================================

================================================
FILE: MiniProject_Backend.py
================================================
#backend
import sqlite3

def MovieData():
    con=sqlite3.connect("movie1.db") 
    cur=con.cursor()
    cur.execute("CREATE TABLE IF NOT EXISTS book (id INTEGER PRIMARY KEY, Movie_ID text,Movie_Name text,Release_Date text,Director text,Cast text,Budget text,Duration text,Rating text")
    con.commit()
    con.close()
    
def AddMovieRec(Movie_ID,Movie_Name,Release_Date,Director,Cast,Budget,Duration,Rating):
    con=sqlite3.connect("movie1.db")    
    cur=con.cursor()
    cur.execute("INSERT INTO book VALUES (NULL, ?,?,?,?,?,?,?,?)", (Movie_ID,Movie_Name,Release_Date,Director,Cast,Budget,Duration,Rating))
    con.commit()
    con.close()

def ViewMovieData():
    con=sqlite3.connect("movie1.db")    
    cur=con.cursor()
    cur.execute("SELECT * FROM book")
    rows=cur.fetchall()
    con.close()    
    return rows

def DeleteMovieRec(id):    
    con=sqlite3.connect("movie1.db")    
    cur=con.cursor()
    cur.execute("DELETE FROM book WHERE id=?", (id,))
    con.commit()
    con.close()  

def SearchMovieData(Movie_ID="",Movie_Name="",Release_Date="",Director="",Cast="",Budget="",Duration="",Rating=""):  
    con=sqlite3.connect("movie1.db")    
    cur=con.cursor()
    cur.execute("SELECT * FROM book WHERE Movie_ID=? OR Movie_Name=? OR Release_Date=? OR Director=? OR Cast=? OR Budget=? OR Duration=? OR Rating=?",(Movie_ID,Movie_Name,Release_Date,Director,Cast,Budget,Duration,Rating))
    rows=cur.fetchall()
    con.close()    
    return rows

def UpdateMovieData(id,Movie_ID="",Movie_Name="",Release_Date="",Director="",Cast="",Budget="",Duration="",Rating=""):
    con=sqlite3.connect("movie1.db")    
    cur=con.cursor()
    cur.execute("UPDATE book SET Movie_ID=?,Movie_Name=?,Release_Date=?,Director=?,Cast=?,Budget=?,Duration=?,Rating=?, WHERE id=?",(Movie_ID,Movie_Name,Release_Date,Director,Cast,Budget,Duration,Rating))
    con.commit()
    con.close()



================================================
FILE: MiniProject_Frontend.py
================================================
#Frontend

from tkinter import *
import tkinter.messagebox
import MiniProject_Backend

class Movie:
	def __init__(self, root):
		self.root=root
		self.root.title("Online Movie Ticket Booking System")
		self.root.geometry("1350x750+0+0")
		self.root.config(bg="black")

		Movie_Name=StringVar()
		Movie_ID=StringVar()
		Release_Date=StringVar()
		Director=StringVar()
		Cast=StringVar()
		Budget=StringVar()
		Duration=StringVar()
		Rating=StringVar()

		#Fuctions
		def iExit():
			iExit=tkinter.messagebox.askyesno("Online Movie Ticket Booking System", "Are you sure???")
			if iExit>0:
				root.destroy()
			return

		def clcdata():
			self.txtMovie_ID.delete(0,END)
			self.txtMovie_Name.delete(0,END)
			self.txtRelease_Date.delete(0,END)
			self.txtDirector.delete(0,END)
			self.txtCast.delete(0,END)
			self.txtBudget.delete(0,END)
			self.txtRating.delete(0,END)
			self.txtDuration.delete(0,END)

		def adddata():
			if(len(Movie_ID.get())!=0):
				MiniProject_Backend.AddMovieRec(Movie_ID.get(),Movie_Name.get(),Release_Date.get(),Director.get(),Cast.get(),Budget.get(),Duration.get(),Rating.get())
				MovieList.delete(0,END)
				MovieList.insert(END,(Movie_ID.get(),Movie_Name.get(),Release_Date.get(),Director.get(),Cast.get(),Budget.get(),Duration.get(),Rating.get()))

		def disdata():
			MovieList.delete(0,END)
			for row in MiniProject_Backend.ViewMovieData():
				MovieList.insert(END, row, str(""))

		def movierec(event):
			global sd
			searchmovie=MovieList.curselection()[0]
			sd=MovieList.get(searchmovie)

			self.txtMovie_ID.delete(0,END)
			self.txtMovie_ID.insert(END,sd[1])
			self.txtMovie_Name.delete(0,END)
			self.txtMovie_Name.insert(END,sd[2])
			self.txtRelease_Date.delete(0,END)
			self.txtRelease_Date.insert(END,sd[3])
			self.txtDirector.delete(0,END)
			self.txtDirector.insert(END,sd[4])
			self.txtCast.delete(0,END)
			self.txtCast.insert(END,sd[5])
			self.txtBudget.delete(0,END)
			self.txtBudget.insert(END,sd[6])
			self.txtDuration.delete(0,END)
			self.txtDuration.insert(END,sd[7])
			self.txtRating.delete(0,END)
			self.txtRating.insert(END,sd[8])

		def deldata():
			if(len(Movie_ID.get())!=0):
				MiniProject_Backend.DeleteMovieRec(sd[0])
				clcdata()
				disdata()

		def searchdb():
			MovieList.delete(0,END)
			for row in MiniProject_Backend.SearchMovieData(Movie_ID.get(),Movie_Name.get(),Release_Date.get(),Director.get(),Cast.get(),Budget.get(),Duration.get(),Rating.get()):
				MovieList.insert(END, row, str(""))

		def updata():
			if(len(Movie_ID.get())!=0):
				MiniProject_Backend.DeleteMovieRec(sd[0])
			if(len(Movie_ID.get())!=0):
				MiniProject_Backend.AddMovieRec(Movie_ID.get(),Movie_Name.get(),Release_Date.get(),Director.get(),Cast.get(),Budget.get(),Duration.get(),Rating.get())
				MovieList.delete(0,END)
				MovieList.insert(END,(Movie_ID.get(),Movie_Name.get(),Release_Date.get(),Director.get(),Cast.get(),Budget.get(),Duration.get(),Rating.get()))

		#Frames
		MainFrame=Frame(self.root, bg="black")
		MainFrame.grid()

		TFrame=Frame(MainFrame, bd=5, padx=54, pady=8, bg="black", relief=RIDGE)
		TFrame.pack(side=TOP)

		self.TFrame=Label(TFrame, font=('Arial', 51, 'bold'), text="ONLINE MOVIE TICKET BOOKING SYSTEM", bg="black", fg="orange")
		self.TFrame.grid() 

		BFrame=Frame(MainFrame, bd=2, width=1350, height=70, padx=18, pady=10, bg="black", relief=RIDGE)
		BFrame.pack(side=BOTTOM)

		DFrame=Frame(MainFrame, bd=2, width=1300, height=400, padx=20, pady=20, bg="black", relief=RIDGE)
		DFrame.pack(side=BOTTOM)

		DFrameL=LabelFrame(DFrame, bd=2, width=1000, height=600, padx=20, bg="black", relief=RIDGE, font=('Arial', 20, 'bold'), text="Movie Info_\n", fg="white")
		DFrameL.pack(side=LEFT)

		DFrameR=LabelFrame(DFrame, bd=2, width=450, height=300, padx=31, pady=3, bg="black", relief=RIDGE, font=('Arial', 20, 'bold'), text="Movie Details_\n", fg="white")
		DFrameR.pack(side=RIGHT)

		#Labels & Entry Box

		self.lblMovie_ID=Label(DFrameL, font=('Arial', 18, 'bold'), text="Movie ID:", padx=2, pady=2, bg="black", fg="orange")
		self.lblMovie_ID.grid(row=0, column=0, sticky=W)
		self.txtMovie_ID=Entry(DFrameL, font=('Arial', 18, 'bold'), textvariable=Movie_ID, width=39, bg="black", fg="white")
		self.txtMovie_ID.grid(row=0, column=1) 

		self.lblMovie_Name=Label(DFrameL, font=('Arial', 18, 'bold'), text="Movie Name:", padx=2, pady=2, bg="black", fg="orange")
		self.lblMovie_Name.grid(row=1, column=0, sticky=W) 
		self.txtMovie_Name=Entry(DFrameL, font=('Arial', 18, 'bold'), textvariable=Movie_Name, width=39, bg="black", fg="white")
		self.txtMovie_Name.grid(row=1, column=1)

		self.lblRelease_Date=Label(DFrameL, font=('Arial', 18, 'bold'), text="Release Date:", padx=2, pady=2, bg="black", fg="orange")
		self.lblRelease_Date.grid(row=2, column=0, sticky=W) 
		self.txtRelease_Date=Entry(DFrameL, font=('Arial', 18, 'bold'), textvariable=Release_Date, width=39, bg="black", fg="white")
		self.txtRelease_Date.grid(row=2, column=1)

		self.lblDirector=Label(DFrameL, font=('Arial', 18, 'bold'), text="Director:", padx=2, pady=2, bg="black", fg="orange")
		self.lblDirector.grid(row=3, column=0, sticky=W) 
		self.txtDirector=Entry(DFrameL, font=('Arial', 18, 'bold'), textvariable=Director, width=39, bg="black", fg="white")
		self.txtDirector.grid(row=3, column=1)

		self.lblCast=Label(DFrameL, font=('Arial', 18, 'bold'), text="Cast:", padx=2, pady=2, bg="black", fg="orange")
		self.lblCast.grid(row=4, column=0, sticky=W) 
		self.txtCast=Entry(DFrameL, font=('Arial', 18, 'bold'), textvariable=Cast, width=39, bg="black", fg="white")
		self.txtCast.grid(row=4, column=1)

		self.lblBudget=Label(DFrameL, font=('Arial', 18, 'bold'), text="Budget (Crores INR):", padx=2, pady=2, bg="black", fg="orange")
		self.lblBudget.grid(row=5, column=0, sticky=W) 
		self.txtBudget=Entry(DFrameL, font=('Arial', 18, 'bold'), textvariable=Budget, width=39, bg="black", fg="white")
		self.txtBudget.grid(row=5, column=1)

		self.lblDuration=Label(DFrameL, font=('Arial', 18, 'bold'), text="Duration (Hrs):", padx=2, pady=2, bg="black", fg="orange")
		self.lblDuration.grid(row=6, column=0, sticky=W) 
		self.txtDuration=Entry(DFrameL, font=('Arial', 18, 'bold'), textvariable=Duration, width=39, bg="black", fg="white")
		self.txtDuration.grid(row=6, column=1)

		self.lblRating=Label(DFrameL, font=('Arial', 18, 'bold'), text="Rating (Out of 5):", padx=2, pady=2, bg="black", fg="orange")
		self.lblRating.grid(row=7, column=0, sticky=W) 
		self.txtRating=Entry(DFrameL, font=('Arial', 18, 'bold'), textvariable=Rating, width=39, bg="black", fg="white")
		self.txtRating.grid(row=7, column=1)

		#ListBox & ScrollBar
		sb=Scrollbar(DFrameR)
		sb.grid(row=0, column=1, sticky='ns')

		MovieList=Listbox(DFrameR, width=41, height=16, font=('Arial', 12, 'bold'), bg="black", fg="white", yscrollcommand=sb.set)
		MovieList.bind('<<ListboxSelect>>', movierec)
		MovieList.grid(row=0, column=0, padx=8)
		sb.config(command=MovieList.yview)

		#Buttons
		self.btnadd=Button(BFrame, text="Add New", font=('Arial', 20, 'bold'), width=10, height=1, bd=4, bg="orange", command=adddata)
		self.btnadd.grid(row=0, column=0)

		self.btndis=Button(BFrame, text="Display", font=('Arial', 20, 'bold'), width=10, height=1, bd=4, bg="orange", command=disdata)
		self.btndis.grid(row=0, column=1)

		self.btnclc=Button(BFrame, text="Clear", font=('Arial', 20, 'bold'), width=10, height=1, bd=4, bg="orange", command=clcdata)
		self.btnclc.grid(row=0, column=2)

		self.btnse=Button(BFrame, text="Search", font=('Arial', 20, 'bold'), width=10, height=1, bd=4, bg="orange", command=searchdb)
		self.btnse.grid(row=0, column=3)

		self.btndel=Button(BFrame, text="Delete", font=('Arial', 20, 'bold'), width=10, height=1, bd=4, bg="orange", command=deldata)
		self.btndel.grid(row=0, column=4)

		self.btnup=Button(BFrame, text="Update", font=('Arial', 20, 'bold'), width=10, height=1, bd=4, bg="orange", command=updata)
		self.btnup.grid(row=0, column=5)

		self.btnx=Button(BFrame, text="Exit", font=('Arial', 20, 'bold'), width=10, height=1, bd=4, bg="orange", command=iExit)
		self.btnx.grid(row=0, column=6)


if __name__=='__main__':
	root=Tk()
	datbase=Movie(root)
	root.mainloop()

================================================
FILE: README.md
================================================
# DBMS-Movie-Ticket-Booking-System
This repository contains the source code for Online Movie Ticket Booking System, which was a Mini Project for Database Management System (DBMS). 

![UI](Screenshots/OMTBS.PNG)
Download .txt
gitextract_cqne0_dr/

├── MiniProject_Backend.py
├── MiniProject_Frontend.py
└── README.md
Download .txt
SYMBOL INDEX (8 symbols across 2 files)

FILE: MiniProject_Backend.py
  function MovieData (line 4) | def MovieData():
  function AddMovieRec (line 11) | def AddMovieRec(Movie_ID,Movie_Name,Release_Date,Director,Cast,Budget,Du...
  function ViewMovieData (line 18) | def ViewMovieData():
  function DeleteMovieRec (line 26) | def DeleteMovieRec(id):
  function SearchMovieData (line 33) | def SearchMovieData(Movie_ID="",Movie_Name="",Release_Date="",Director="...
  function UpdateMovieData (line 41) | def UpdateMovieData(id,Movie_ID="",Movie_Name="",Release_Date="",Directo...

FILE: MiniProject_Frontend.py
  class Movie (line 7) | class Movie:
    method __init__ (line 8) | def __init__(self, root):
Condensed preview — 3 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (12K chars).
[
  {
    "path": "MiniProject_Backend.py",
    "chars": 1942,
    "preview": "#backend\r\nimport sqlite3\r\n\r\ndef MovieData():\r\n    con=sqlite3.connect(\"movie1.db\") \r\n    cur=con.cursor()\r\n    cur.execu"
  },
  {
    "path": "MiniProject_Frontend.py",
    "chars": 8362,
    "preview": "#Frontend\r\n\r\nfrom tkinter import *\r\nimport tkinter.messagebox\r\nimport MiniProject_Backend\r\n\r\nclass Movie:\r\n\tdef __init__"
  },
  {
    "path": "README.md",
    "chars": 211,
    "preview": "# DBMS-Movie-Ticket-Booking-System\nThis repository contains the source code for Online Movie Ticket Booking System, whic"
  }
]

About this extraction

This page contains the full source code of the Sid-149/DBMS-Movie-Ticket-Booking-System GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 3 files (10.3 KB), approximately 3.3k tokens, and a symbol index with 8 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!