SCHOLARS HOME SR.
SEC. SCHOOL
ONLINE MOVIE TICKET
BOOKING SYSTEM
NAME: PRIYANSHU BISHT
CLASS: XII-B
ROLL NO. :
SUBMMITED TO: NIDHI
CHAUHAN
ACADEMIC YEAR: 2025-26
CERTIFICATE
This is to certify that this project, entitled ‘Movie Ticket
Booking’ is a genuine work done by PRIYANSHU BISHT of class
XII, session 2025-26 in partial fulfillment of CBSE’s Board
Examination
2024 and has been carried out under my direct supervision and
guidance. This report or a similar report on the topic has not
been submitted for any other examination and does not form a
part of any other course undergone by the candidate.
SIGNATURE OF THE STUDENT SIGNATURE OF
THE TEACHER
SIGNATURE OF THE (EXTERNAL EXAMINER)
ACKNOWLEDGEMENT
I would like to express my sincere gratitude to all those who
supported and guided me throughout the development of this
Computer Science project, titled "Online movie ticket Booking
System".
First and foremost, I would like to thank my teacher/mentor
NIDHI CHAUHAN, for their constant encouragement, insightful
feedback, and valuable suggestions during the project. Their
guidance played a vital role in the successful completion of this
system.
I am also grateful to my school SCHOLARS HOME SR. SEC.
SCHOOL for providing me with the opportunity and resources
to work on this project.
This project helped me apply theoretical knowledge into
practical use. The system integrates SQL as the front-end
interface for storing and managing data efficiently, while the
backend is implemented using Python, enabling dynamic data
processing and business logic handling. Through this, I gained
valuable experience in software development, database
management, and real-world problem solving.
Lastly, I would like to thank my family and friends for their
continuous support and encouragement throughout this
journey.
INDEX
S. NO. DESCRIPTION
1. INTRODUCTION
2. OBJECTIVES OF THE PROJECT
3. PROPOSED SYSTEM
4. SYSTEM DEVELOPMENT LIFE CYCLE (SDLC)
5. PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE
6. SOURCE CODE
7, OUTPUT
8. TESTING
9. HARDWARE AND SOFTWARE REQUIREMENTS
10. BIBLIOGRAPHY
INTRODUCTION
In today’s digital era, online systems have become an integral
part of everyday life, offering convenience and efficiency in
various sectors. One such area is the entertainment industry,
where online movie booking systems have revolutionized the
way users book tickets, choose seats, and check show timings.
This project, titled “Online Movie Ticket Booking System,” is a
software application developed to simplify and automate the
process of booking movie tickets. The system provides an
intuitive interface for users to view available movies,
showtimes, select seats, and confirm bookings.
The frontend of the system is built using SQL, which manages
the storage and retrieval of data such as movie listings, seat
availability, user information, and bookings. The backend is
powered by Python, which handles the application logic, user
input processing, and interaction with the database.
This project also serves as a learning experience in integrating
database technologies with programming languages to build a
functional, real-world application.
OBJECTIVE
The main objective of this project is to design and develop a
Online Movie Ticket Booking System that allows users to book
movie tickets online in a simple, efficient, and user-friendly
manner. The system aims to reduce manual effort, minimize
errors, and improve the overall ticket booking experience.
Specific objectives of the project include:
To develop a functional and interactive system for browsing
movies, checking show timings, and selecting available seats.
To implement SQL as the frontend database to store and manage
movie details, user information, seat availability, and booking
records.
To use Python as the backend programming language to handle
user inputs, process bookings, and connect to the database.
To ensure data consistency, accuracy, and real-time updates for
bookings and seat availability.
To provide a simple and intuitive interface that can be used by
both customers and theater administrators.
To enhance understanding of software development, database
management, and backend programming through practical
application.
This system demonstrates the integration of database and
programming concepts to solve real-world problems in the field
of information technology and user service systems.
Purpose of the System
The purpose of the Online Movie Ticket Booking System is to
provide a digital platform that simplifies and automates the
process of booking movie tickets. It is designed to enhance user
convenience, improve the efficiency of ticket management, and
reduce the workload on cinema staff.
Key purposes of the system include:
Automation of Ticket Booking: To replace the traditional manual
ticket booking process with a fast, automated system.
User Convenience: To allow users to browse movies, check
showtimes, and book tickets from any location, at any time.
Efficient Seat Management: To display real-time seat availability
and prevent double bookings.
Data Management: To store, update, and manage user and
booking data using an SQL database for accuracy and consistency.
Backend Processing: To use Python for handling business logic,
processing user inputs, and interacting with the database.
Error Reduction: To minimize human errors in bookings and
record-keeping.
Enhanced User Experience: To create a user-friendly interface
that is easy to navigate for both end-users and administrators.
Overall, the system aims to demonstrate how a combination of
SQL (frontend/database) and Python (backend) can be used to
build a practical, real-world application that improves service
delivery in the entertainment sector.
SYSTEM
DEVELOPMENT LIFE
CYCLE (SDLC)
DEVELOPMEMT PHASE
The development phase involves converting design
specifications into executable programs. Effective
development standards include requirements that
programmers and other project participants discuss design
specifications before programming begins. The procedures
help ensure programmers clearly understand program designs
and functional requirements. Programmers use various
techniques to develop computer programs. The large
transaction-oriented programs associated with financial
institutions have traditionally been developed using
procedural programming techniques. Procedural programming
involves the line-by-line scripting of logical instructions that are
combined to form a program. Effective completion of the
previous stages is a key factor in the success of the
Development phase. The Development phase consists of:
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
• Translating the detailed requirements and design into
system components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system
• Translating the detailed requirements and design into
system components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system
• Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirements and design into system
components.
• Testing individual elements (units) for usability.
• Preparing for integration and testing of the IT system.
Translating the detailed requirement and design into
system components.
Testing individual elements (units) for usability.
Preparing for integration and testing of the IT system.
import [Link]
cn=[Link](host='localhost',user
='root',
passwd='Yashvi@1', database='movie_ticket')
cursor=[Link]()
if cn.is_connected():
print('---------------------------------------------')
print('MOVIE TICKET BOOKING SYSTEM')
print('---------------------------------------------')
print('[Link]')
print('[Link]')
ch=int(input('ENTER YOUR CHOICE:'))
if ch==1:
u1=input('ENTER USERNAME:')
p1=input('ENTER PASSWORD:')
print('SUCCESSFUL LOGIN')
elif ch==2:
print("EXIT")
exit()
SOURCE CODE
print('')
print('
WELCO
ME TO
MOVIE
TICKET
BOOKI
NG')
print('')
print('1
.BOOKI
NG
COUNT
ER')
print('2
.ALL
BOOKI
NG
DETAIL
S')
print('3
.FOOD
COUNT
ER')
print('4
.ALL
FOOD
DETAIL
S')
print('5
.ONE
BOOKI
NG
DETAIL
S')
print('6
.ONE
FOOD
DETAIL
S')
print('7
.EXIT')
import
mysql.c
onnect
or
cn=my
[Link]
nector.
connec
t(host=
'localho
st',user
='root',
passwd
='Yash
vi@1',
databa
se='mo
vie_tick
et')
cursor
=[Link]
rsor()
if
cn.is_c
onnect
ed():
print('--
----------
----------
----------
----------
---')
print('M
OVIE
TICKET
BOOKI
NG
SYSTE
M')
print('--
----------
----------
----------
----------
---')
print('1
.LOGIN'
)
print('2
.EXIT')
ch=int(
input('E
NTER
YOUR
CHOICE
:'))
if
ch==1:
u1=inp
ut('ENT
ER
USERN
AME:')
p1=inp
ut('ENT
ER
PASSW
ORD:')
print('S
UCCES
SFUL
LOGIN')
elif
ch==2:
print("E
XIT")
import sqlite3
exit()
from datetime import datetime
class TicketBookingSystem:
def __init__(self):
# Connect to SQLite in-memory database
[Link] = [Link](':memory:')
self.c = [Link]()
self.create_tables()
def create_tables(self):
# Create customers table
[Link]('''
CREATE TABLE customers (
customer_id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
address TEXT NOT NULL,
phone TEXT NOT NULL
)
''')
# Create theaters table
[Link]('''
CREATE TABLE theaters (
theater_id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
address TEXT NOT NULL,
phone TEXT NOT NULL
)
''')
# Create movies table
[Link]('''
CREATE TABLE movies (
movie_id INTEGER PRIMARY KEY AUTOINCREMENT,
movie_name TEXT NOT NULL,
price REAL NOT NULL
)
''')
# Create orders table
[Link]('''
CREATE TABLE orders (
order_id INTEGER PRIMARY KEY AUTOINCREMENT,
customer_id INTEGER NOT NULL,
theater_id INTEGER NOT NULL,
movie_id INTEGER NOT NULL,
quantity INTEGER NOT NULL,
order_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (customer_id) REFERENCES customers(customer_id),
FOREIGN KEY (theater_id) REFERENCES theaters(theater_id),
FOREIGN KEY (movie_id) REFERENCES movies(movie_id)
)
''')
[Link]()
def add_customer(self, name, address, phone):
[Link]('INSERT INTO customers (name, address, phone) VALUES (?, ?, ?)',
(name, address, phone))
[Link]()
print(f"Added customer: {name}")
def add_theater(self, name, address, phone):
[Link]('INSERT INTO theaters (name, address, phone) VALUES (?, ?, ?)', (name,
address, phone))
[Link]()
print(f"Added theater: {name}")
def add_movie(self, movie_name, price):
[Link]('INSERT INTO movies (movie_name, price) VALUES (?, ?)', (movie_name,
price))
[Link]()
print(f"Added movie: {movie_name}, Price: ${price:.2f}")
def place_order(self, customer_id, theater_id, movie_id, quantity):
# Check if customer exists
[Link]('SELECT * FROM customers WHERE customer_id = ?', (customer_id,))
if not [Link]():
print(f"Customer ID {customer_id} does not exist.")
return
# Check if theater exists
[Link]('SELECT * FROM theaters WHERE theater_id = ?', (theater_id,))
if not [Link]():
# Check if movie exists
[Link]('SELECT * FROM movies WHERE movie_id = ?', (movie_id,))
if not [Link]():
print(f"Movie ID {movie_id} does not exist.")
return
if quantity <= 0:
print("Quantity must be greater than zero.")
return
[Link]('''
INSERT INTO orders (customer_id, theater_id, movie_id, quantity)
VALUES (?, ?, ?, ?)
''', (customer_id, theater_id, movie_id, quantity))
[Link]()
print(f"Order placed: Customer ID {customer_id} booked {quantity} ticket(s) for Movie
ID {movie_id} at Theater ID {theater_id}")
def view_orders(self):
[Link]('''
SELECT
o.order_id, [Link] AS customer_name, [Link] AS theater_name,
m.movie_name, [Link], [Link], o.order_time
FROM orders o
JOIN customers c ON o.customer_id = c.customer_id
JOIN theaters t ON o.theater_id = t.theater_id
JOIN movies m ON o.movie_id = m.movie_id
ORDER BY o.order_time DESC
''')
orders = [Link]()
if not orders:
print("No orders found.")
return
total_bill = 0
print("\nOrders:")
print("-" * 80)
for order in orders:
order_id, customer_name, theater_name, movie_name, price, quantity, order_time =
order
subtotal = price * quantity
total_bill += subtotal
print(f"Order ID: {order_id}")
print(f" Customer : {customer_name}")
print(f" Theater : {theater_name}")
print(f" Movie : {movie_name}")
print(f" Price : ${price:.2f}")
print(f" Quantity : {quantity}")
print(f" Subtotal : ${subtotal:.2f}")
print(f" Time : {order_time}")
print("-" * 80)
print(f"Total Bill for all orders: ${total_bill:.2f}\n")
def close(self):
[Link]()
print("Database connection closed.")
if __name__ == "__main__":
system = TicketBookingSystem()
# Adding sample data
system.add_customer('Priyanshu', 'Dehradun', '9876567876')
system.add_customer('Vishal', 'Dehradun', '987876567')
system.add_customer('Ankur', 'Dehradun', '9865472165')
system.add_customer('Akshay', 'Dehradun', '865475215')
system.add_theater('PVR', 'Dehradun', '9876567876')
system.add_theater('Silver City', 'Dehradun', '987876567')
system.add_theater('Time Square', 'Dehradun', '8125652344')
system.add_theater('New Empire', 'Dehradun', '7542136984')
system.add_movie('Deadpool', 10.99)
system.add_movie('Fast and Furious', 12.99)
system.add_movie('Jawan', 10.99)
system.add_movie('John Wick', 11.99)
# Place some orders
system.place_order(1, 1, 1, 2) # Priyanshu orders 2 Deadpool tickets at PVR
system.place_order(2, 2, 3, 3) # Vishal orders 3 Jawan tickets at Silver City
system.place_order(3, 4, 2, 4) # Ankur orders 4 Fast and Furious tickets at New Empire
system.place_order(4, 3, 4, 3) # Akshay orders 3 John Wick tickets at Time Square
# View orders and totals
system.view_orders()
[Link]()
OUTPUT
CONCLUSION
The Online MOVIE Ticket Booking System successfully demonstrates
how a Python-based application can interact with a SQL database to
manage and automate movie ticket reservations. With SQLite as the
backend, the system ensures efficient data storage and retrieval for
customers, theaters, movies, and orders. The Python frontend provides
a simple yet effective interface to perform core functionalities such as
adding data, placing orders, and viewing order summaries.
This project highlights the importance of integrating databases with
programming logic to build real-world applications. It can be further
extended with a graphical user interface (GUI), seat availability tracking,
authentication, and payment integration to create a complete, user-
friendly ticketing platform.
BIBLIOGRAPHY
1. Google for problem solving
2. [Link]
3. .[Link]
4. computer science (Preeti arora)