Mobile Cinema Booking System Analysis
Mobile Cinema Booking System Analysis
BY
SUPERVISOR
MR. CHIMA IGIRI
APRIL, 2021
1
DECLARATION
declare that this research work was carried out by me under the supervision of
my project supervisor Mr. Chima Igiri, I hereby claim that this project work
_____________________ _________________
Chukwuma Akachi Date
DE.2017/4602
2
CERTIFICATION
We certify that this project was carried out by Chukwuma Akachi David,
Nigeria, and accept that it is fit for the award of Bachelor of Science (BSc) in
3
DEDICATION
I dedicated this work to God Almighty and to my parents, siblings and friends
and well-wishers who through their support and encouragement have seen me
throughout my academy.
4
ACKNOWLEDGMENT
especially in carrying out this research. I will not fail to express my appreciation
to my supervisor Mr. Chima Igiri who did not only play a supervisory role
during the research but also a fatherly role, his approachable and easy going life
is worthy of emulation.
5
ABSTRACT
Cinema booking system is basically made for providing movie ticket anywhere and anytime
and gets information about the movies online. It is a mobile-based system; the customers can
buy tickets online and cancel the seat at a suitable time. The newly designed system is faster,
more convenient and you do not have to go to queue up to buy movie tickets. The system
provides a convenient way for a customer to buy movie tickets. Chapter three chapter
involves a process whereby the existing or current system is studied to identify the
information requirements. It is used to refer to a specific series of steps or procedures which
governs the analysis and design of a particular project. It also includes the techniques and
methods which are used to collect and analyze information. To achieve all these stated above,
Methodology (SSADM) is a systems approach to the analysis and design of information
systems. SSADM method involves the application of a sequence of analysis; an
internationally accepted software engineering model was use which is Structured System
Analysis and Design Methodology (SSADM). Structured System Analysis and design tasks
concerned with analysis of the current system, logical data design, logical process design etc.
Chapter four focuses on the implementation of the system. System implementation is a
collection of inter-dependent physical devices together with their programming which
provides the functionality and performance for which the system was designed. It covers all
the activities necessary to set the system that has been analyzed and designed to be fully
functional to the users. The development tools are the necessary requirement tools used
during the design to enable us achieve the system design. The listed packages were used
because of their features, accessibility and also because it is more effectivity: (1) MySQL
database application (2) PHP scripting Language (3) HTML language and JavaScript (4)
Notepad plus (5) CodeIgniter. Chapter five project highlighted the practical implementation
of computer system with view of demonstrating the success and utility of the knowledge base
on system in order to gain the practitioners who are the ultimate users of the system. It also
discusses the issues of selecting appropriate database model, interface design, system
deployment and maintenance. A projection of record growth in relation to student population
and system requirement was carried out in the study. Finally, it discusses the applicability of
the system in academic institutions. This project is a cinema ticket booking system is
designed to meet the requirements. It has been developed in PHP and database keeping in
mind the specifications of the system have been created in My SQL server. Our project: ticket
system with the cinema; Cinema companies can meet customer comfort. Cinema manager,
employee, and customer relations to complete the process of ticket satisfied a good
communication. With this platform developed, to avoid wasting time, reduce
misunderstandings, easy data flow, customer happiness, and are expected to provide less
difficult task.
6
TABLE OF CONTENTS
Page
Title Page i
Declaration ii
Certification iii
Dedication iv
Acknowledgement v
Abstract vi
Table of Contents vii
List of Tables ix
List of Figures x
7
2.5.1 Historical Background of Cinema 11
2.6 Theatre Background 13
2.7 Human Computer Interface (HCI) 14
2.8 Analysis of Similar Systems 14
2.9 Conclusion 15
9
LIST OF FIGURES
Figure Page
4.6 The upcoming page contains a list of movie image with data list by
clicking the image users can view all the information related to that
particular movie. 37
4.7 Here user can book ticket and also give information about their credit
card like card no, card type exp. Date etc. 39
10
CHAPTER ONE
INTRODUCTION
Cinema booking system is basically made for providing movie ticket anywhere
and anytime and gets information about the movies online. It is a mobile-based
system; the customers can buy tickets online and cancel the seat at a suitable
time.
The system is to provide an alternate and convenient way for a customer to buy
to work automatically without the need of any human operator to provide inputs
productivity assistance such as email, calendar, and contact database but the
public demand for applications caused rapid expansion into other areas such as
mobile games, factory automation, GPS and location-based services, and ticket
platforms which are operated by the owner of the mobile operating system, such
11
Some applications are free, and others have a price, with the profit being split
run on desktop computers, and web application which run in mobile web
The applications of mobile apps have been embraced since its existence and it
being utilized in different ways such as social media networking, internet chat,
Through booking systems, the service providers are able to sell their services
and people are able to book tickets, hotel rooms, airline, and tables in
restaurants, etc.
Cinema booking system is basically made for providing movie ticket anywhere
anytime and gets information about the movie online. The system provides a
The name “movie” originates from the fact that photographic film (also called
film stock) has historically been the medium for recording and displaying
12
technology in any activity would go a long way in making that activity much
easier. It also believed that the benefit and advantages of using computer out
The major problems that give rise to this research project include; late seats
by computer illiterate customers, and corrupt and tactical customers who have
ways of sneaking into the cinema hall with fake seats number printout.
1.3.1 Aims
The main aim of this research work is to develop a mobile application for ticket
booking system, which is to provide a simple and comfortable way for the
This newly aimed system is basically sighted at providing the customers the
customer can book the tickets and proceed to make payments for the desired
movies booked.
1.3.2 Objectives
13
2. To create a reliable database of movies in the case study with their
description.
saves a lot of time for the customers because, they do not need to arrive early to
The main scope of this project is to create room for reservation online and to
enable customers choose the most desirable movie; it saves the customer’s time
and labor. On the other hand, some of the tickets of the movie are provided for
booking online while the remaining is for manual box office sale as the case
may be.
This process reduces the labor of company staffs since the system can be
accessed by anyone who has internet connection at any time of the day or night,
14
thus providing customer’s comfort, and also plays a major role in promoting the
and interview).
with other academic work. This consequently will cut down on the time
In order to do away with ambiguity, some terms and keywords in the context of
15
Login: To sign in through registered ID.
Users: Persons throughout the organization who add, delete, modify data in the
system.
Ticket: Is a piece of paper, cardboard, etc., showing that the holder is entitled to
16
CHAPTER TWO
LITERATURE REVIEW
2.1 Introduction
This chapter will discuss the background research which was carried out within
Mobile Booking System. A sub section regarding Cinema Booking System will
also be discussed with reference to the software being used to implement the
Ticket Reservation System for Genesis Cinemas. Similar systems will also be
discussed.
The above provides access only to multimedia devices directly connected to the
data but the middleware cannot extend its control to other devices on the
17
network. For example, it is impossible to transparently watch TV via the TV
card in your colleague's PC, or control remote cameras attached to other PCs or
process and understand an input in text, speech, images etc and responding to it.
engineering platform, this new technology comes with new features, restrictions
and new possibilities which does not exist before. Building capable software for
characteristics that are not used in the previous traditional estimation method.
The rapid increase in global users have made mobile computing one of the
application market estimates that more than 2 million mobile applications are
18
2.4.1 Characteristics of Mobile Applications
businesses and introduced new technologies. The most common attributes are
largely based on service design level, so if used wisely then the apps will be
1. User Interface
The way your mobile application looks and operates is crucial to its success.
This is especially true with free applications because there is a high churn rate.
If the app doesn’t look and perform as well as a rival app, the user won’t bother
If your app takes too long to load, it will automatically be avoided by users.
However, more complex apps like Facebook sometimes take a bit longer to
load. These apps require large amounts of data to start up. For Facebook, users
usually stick around because they see ongoing activity when they start the app.
3. Responsiveness
19
This is the ability of the mobile application to respond to the command being
Creating a successful app is great, but if you can’t maintain that success, it’s all
for naught. Winnings apps introduce new features, fix bugs, and streamline the
5. Portability
regardless of the device’s operating system, Version, and Mobile phone model.
6. Affordable
The app may be appealing and beautiful, but if it is not affordable, it is doomed
to fail. Why should the customer choose your expensive app if he can get an app
with same features for free? Try to offer both a free version and full-feature
paid version. However, it is still important to have your full-feature paid version
affordable.
7. Security
20
There are several aspects of security like transferred data over network via
carrier network. Some applications sync data with online, web apps, so the
breach can be the mobile device itself as I do not want anybody to play with my
mobile phone. These may be general features and characteristics but play vital
2.5 Cinema
voices, sounds, and music, still telling stories, still entertaining, and most
Cinema, or motion picture, is the art of moving images; a visual medium that
tells stories and exposes reality. Created in the dusk of the 19th century, cinema
is the world’s most recent art form. It is also, by far, the world’s most complex,
19th century scientific endeavor, it has, over the past century, become an
21
No one person invented cinema. However, in 1891 the Edison Company in the
one person at a time to view moving pictures. The first to present projected
moving pictures to a paying audience (i.e. cinema) were the Lumière brothers in
At first, films were very short, sometimes only a few minutes or less. They were
shown at fairgrounds and music halls or anywhere a screen could be set up and
a room darkened. Subjects included local scenes and activities, views of foreign
By 1914, several national film industries were established. Europe, Russia and
see movies, the industry which grew around them was prepared to invest more
established and special cinemas built. The First World War greatly limited the
film industry in Europe, and the American industry grew in relative importance.
The first 30 years of cinema were characterized by the growth and consolidation
technology.
22
Adding Color
Color was first added to black-and-white movies through tinting, toning and
so-called ‘natural color’ moving images with the British Kinemacolor process,
first presented to the public in 1909. The early Technicolor processes from 1915
onwards were cumbersome and expensive, and color was not used more widely
Adding Sound
synchronized dialogue, The Jazz Singer, (USA, 1927), used the Warner
Brothers’ Vitaphone system, which employed a separate record disc with each
This system proved unreliable and was soon replaced by an optical, variable
Theatre is the division of the performing arts that acts out stories in front of an
audience using a mixture of speech, gesture, music, dance, sound and spectacle.
Together with the narrative dialogue style, theatres also take the forms as opera,
23
ballet, mime, kabuki, classical Indian dance, Chinese opera, mummers' plays,
and pantomime.
possible, in the design of the system, HCI must take Centre place in order to
design and develop a system which will be as usable as possible and will meet
the requirements of all its users. The system will be the creation of an automated
ticket booking system for Genesis Cinemas which will be fully automated. This
means that in order for someone to book tickets for a movie they will simply
login to the application, choose their desired movies and proceed to make
payment for them. These will be discussed in more detail in chapter four. When
designing this system, the team will take into consideration the following
factors:
1. User Interface
2. Portability
In this section similar systems to the Ticket Reservation System for the Mobile
24
An online booking system is a system on the internet where users can book
products or services. Usually customers are required to fill out web-forms with
details such as their name, address and telephone number and are also required
Online availability systems are systems on the internet where users can check
available, customers may be able to reserve it. Both systems are similar to the
Reservation System
Reservation systems are electronic systems that allow users to check the
availability of a product or service and then if available, allows the end user to
reserve the product or service with payment or pay on delivery, as the case may
be. These types of systems can be used for reserving hotel rooms or reserving
tables at a restaurant.
2.9 Conclusion
This chapter provided a background on the relevant areas for this project,
25
Applications, Cinema Booking System, Theatre, Reservation Systems, and the
HCI Guidelines.
CHAPTER 3
3.1 Introduction
particular project. It also includes the techniques and methods which are used to
collect and analyze information. To achieve all these stated above, Methodology
System Analysis and design tasks concerned with analysis of the current
26
3.1.2 Description of the Existing System
Customers strict order and without delay and inconvenience of standing in long
queues to pay for their tickets wanted an easy way. Their loyalty program
mechanism is needed. Cinemas phone book was launched, but un-sold seats to
customers, leading to frequent "no shows" were, because it was not feasible to
The proposed system is more reliable, entertaining and easier than the present
system. The solution targets those users who do not have spare time to stand in
queue for booking tickets. This proposes an easy way of ordering and paying for
the tickets without any delays and inconvenience. It enables users book tickets
Customers who book tickets on their mobile phones will receive an instant
the client can receive physical tickets. No longer issue tickets to staff at the
27
Ticket information can be accessed at any time for verification, which is safely
stored in a database.
Use case Diagram Use Case diagram for Cinema Booking System is shown
Actors: - Registered User, Visitor, and Admin the corresponding use cases for
● Registered User: Choose Movie, Select Time and Venue, Select Seat,
Movie Records
28
Fig. 3.1: Showing the Use Case Diagram of a Cinema Booking System.
29
3.4 Database Design
In this section, the basic structure of the tables composing the database for the
project are shown along with information about primary and foreign keys.
Table 3.1, this table is the movie table the information of the movie details are
store in this table, the users provide the movie details for users to purchase
tickets.
30
Table 3.2: User Information
S/NO ATTRIBUTES DATATYPE/ WIDTH DESCRIPTION
1 Name Varchar (200) Name of the user
2 Email Varchar (20) Email of the user
3 Username Varchar (200) Username of the user
4 Password Varchar (200) Security password
5 Sex varchar (200) Gender of the User
6 Phone Varchar (200) Phone number of the user
7 Photo Varchar (200) Photo of the user
8 DOB Varchar(200) Date of Birth
9 State Varchar(200) State of the country
10 Country Varchar(200) Country where the user
lives
11 Address Text Address of the User
12 User type Varchar(200) Type of the User
Table 3.2, this table stores the details of the User in the database table.
31
Table 3.3: Booking Table
S/NO ATTRIBUTES DATA DESCRIPTION
TYPE/WIDTH
1 Order Id Varchar (200) Order id to be booked
2 Name of movie Varchar (200) Name of movie
3 Phone number Varchar(200) Phone number of the
customers who ordered for
the movie.
4 Email Address Varchar (200) Email Address of the
customers who ordered for
the movie.
5 Address Varchar(200) Address of the Customer
6 State Varchar(200) State of the country
7 Country Varchar(200) Country of the Customer
8 Ticket Varchar(200) Number of ticket of the
movie the customer ordered
for.
9 Cost Varchar(200) Cost for the each ticket
10 Total cost Varchar(200) The total cost (cost X ticket)
11 Name Varchar(200) The name of the customer
12 Username Varchar(200) Username of the customer
Table 3.3, this is the movie booking table it stores the details of the movie
booked.
32
Table 3.4: Category Table
S/NO ATTRIBUTES DATA DESCRIPTION
TYPE/WIDTH
1 Category id Varchar (200) Primary key
Table3.4, this is the Category table it stores the details of the movie to be
shown.
33
CHAPTER 4
SYSTEM IMPLEMENTATION
performance for which the system was designed. It covers all the activities
necessary to set the system that has been analyzed and designed to be fully
The development tools are the necessary requirement tools used during the
design to enable us achieve the system design. The listed packages were used
4. Notepad plus
5. CodeIgniter
34
MySQL Database Server: MySQL is a popular choice of database for use in
web applications, and is a central component of the widely used XAMP open
with full commit, rollback, and crash recovery and row level locking
capabilities. MySQL delivers the ease of use, scalability, and performance that
has made MySQL the world's most popular open source database.
PHP: PHP is a server-side scripting language that allows your Web site to be
truly dynamic. PHP stands for PHP: Hypertext Preprocessor Its flexibility and
language and realize that PHP’s benefits most certainly outweigh the costs.
network known as the World Wide Web. HTML documents are text files that
35
and mark-up or tags, encoded information that directs the text format on the
for example: games, responses when buttons are pressed or data entered in
The new system is designed to be put into efficient use here, we will look into
this system and determine the effective operation of the system. System
implementation follows the approval of the system proposal and its objectives,
The admin module makes the admin user to login with admin username and
password. The admin is the main administrator and controller of the whole
system. He also maintains the user registration and the logins. The admin needs
Admin can add a movie, update the information regarding an old movie and
even delete a movie from the theatre. The admin can even add a theatre and
36
delete a theatre. The admin makes the user available with search by movie and
The first page in my module is the main page of the project which contain a
menu consisting of options like home, now showing, cinema, coming soon,
contact, advertise with us, and ticket info. This page also contains the login
option for the users to login into their account and also to register an account
with us. The next page is the user login page asking them to enter their
username and password. If the password and the username exists in our
database, the user enters into his main page. A registration page is also available
In cinemas page the user can select the movie by using search by theatre. In
now
showing page, the user can search by movie. Admin has a separate admin page
where the admin can login using a username and password. In admin the user
can add a theatre, delete a theatre, add a movie and also delete a movie. In add
theatre the admin can add a theatre by entering the name, type of theatre,
delete theatre the admin can directly enter the theatre name and delete that
particular theatre. In add movie the admin can add a movie by entering the
37
name, rating, review, genre, director, producer and music director of a movie. In
delete movie the admin can directly enter the movie name and delete the movie.
The transaction module takes care about the issue of the tickets it is used to
enter the details like name, cinema name, no of tickets, timings and dates, types
Next we enter submit and enter into payment page. In this payment page we
enter details like CVV number and card number. During the payment, after
entering details, we enter pay button then it run and display transaction is
During the tickets booking the user can also add some refreshments to the
payments. In this cancellation they can also cancel the tickets after ticket
booking. check out is used to verify whether details entered for ticket booking is
correct or not if not entered correctly we can rectify the errors in this check out.
theatres. If the customers frequently enter to theatres, they can gain more points.
The Validation is automatic checks make ensure that any data entered into
system is sensible. This validation does not make sure that data has been entered
favorites when we click the favorites next to theatre name on any show times
38
page to mark it as favorites and then come back here to see show time at your
favorite’s theatres.
like name, account number, seat no's, and amount. In this module we show the
list of movies and maintaining schedule timings for each movie. Points to be
added to the frequently visiting customers, points for the available customers
will be given some offers so that they will be attracted towards these cinemas.
The timings, upcoming movies should be updated time to time so that customers
will be given correct information about the movies running at present and the
show timings. The Publicity material should be maintained such as the contact
details and frequently updated. In this module we make the user available to
The Validation is an automatic check make ensure that any data entered into
system is sensible. This validation does not make sure that data has been entered
At the end in this module we provide report for different customers. Here we
In the reports module we will maintain reports regarding many things like list of
nil sale items, list of daily sales, list of frequently used theatre, list of frequently
39
visited customers and others. This helps us to analyze the profits and also
improve our infrastructure and services if necessary. In this module the user can
also print his ticket. This will be shown at the theatre for getting the ticket at
time of show.
4.3 Flowchart
A flowchart type of diagram that represents an algorithm, workflow or process.
The flowchart shows the steps as boxes of various kinds, and their order by
They are widely used in multiple fields to document, study, plan, improve and
40
41
Fig. 4.1: Admin Flowchart
42
Fig 4.2: Transaction Module
43
Fig. 4.3: Maintenance Module
44
4.4 Software Testing
45
Unit Test
Each unit of the new system was tested (test run) individually alongside with the
System Test
The entire system was as well tested (test run) in general alongside with the old
46
Screenshot of the Cinema interface.
Fig. 4.5: Here the user Cinema system for movie booking
47
Screenshot of Movie description
Fig. 4.6: The upcoming page contains a list of movie image with data list by
clicking the image users can view all the information related to that
particular movie.
48
Screenshot displaying dashboard for both users and admin
49
Fig 4.7: Here user can book ticket and also give information about their
credit card like card no, card type exp. Date etc.
50
4.5 Documentation
In order for the proposed system to be used on any computer system it takes the
following:
vii. Open any browser on your system (Microsoft internet Explorer, Mozilla
viii. Type [Link] on the address bar and press the return key or
enter key.
view the movie catalog you can book for seat reservation and adding to
51
password this verifies that you are a registered user if not the customer
iii. If the username and password supplied are correct as that of a user you
are prompted with the user dashboard page with the list of available task
vi. As a user you are prompted with the user page where the user can
manager products.
bar.
viii. As an administrator you are prompted with the administrator page that is
52
CHAPTER 5
5.1 Summary
Cinema being the modern society social, economic and cultural influence is a
serious incident, the most popular out-of-Home is one of the cultural activities.
booking. Theater management system, easy to understand, easy to use and fast
ticket selling software. The intuitive visual interface refund, exchange, and for
both users and administrators quick and easy reporting, day-to-day aspects of
functionalities movie details, ticket rates, and show time, customer information
and sales history, such as, etc. Theater administrator intelligent counter reports
daily, weekly, monthly reports and film-like details of the report Reports that
manages controls.
5.2 Conclusions
Nowadays, the traditional book cinema tickets dying methods. This technology
has dominated human life, where is the new era. Software and technical
equipment, exceptions are reduced and even eliminated. Moreover, for every
part of their lives easy, fast and secure way to make the choice. This project is a
53
cinema ticket booking system is designed to meet the requirements. It has been
developed in PHP and database keeping in mind the specifications of the system
have been created in My SQL server. Our project: ticket system with the
reduce misunderstandings, easy data flow, customer happiness, and are expected
5.3 Recommendations
It is obvious that this theatre booking system is far from being fully functional.
One of the fundamental steps towards this goal is to have all the database tables
linked by the appropriate relationship, which in turn requires that all tables be
namely normal forms and functional dependency would be required, and would
Access web page would also require some effort. Once the database can be
modified from a page, this can simply be posted on the theatre’s web site,
allowing online users to book their seats for the chosen performance.
54
REFERENCES
Hoson, J.P. (2008). The CSLU Toollkit: A Platform for Research and
Development of Spoken Language Systems. [online]. Available from:
[Link] Toolkit_slideshow.htm. [Accessed: 21st
March 2009].
55
Sommerville, I. (2007), Software Engineering, 6th Edition, Pearson Education
Ltd.
56
APPENDIX
SOURCE CODES
Home Page
<?php
//Start session
session_start();
<script type="text/javascript">
$("#slideshow > div:gt(0)").hide();
setInterval(function() {
$('#slideshow > div:first')
.fadeOut(1000)
.next()
.fadeIn(1000)
.end()
.appendTo('#slideshow');
}, 3000);
</script>
<!--sa calendar-->
<script type="text/javascript" src="js/[Link]"></script>
<link href="css/[Link]" rel="stylesheet" type="text/css" />
<link href="css/[Link]" rel="stylesheet" type="text/css" />
<script type="text/javascript">
//<.value = "";
[Link]("ed").value = "";
var initAttempts = 0;
function setReservationDates(e) {
// Internet Explorer will not have created the datePickers yet so we poll the
datePickerController Object using a setTimeout
// until they become available (a maximum of ten times in case something
has gone horribly wrong)
try {
var sd = [Link]("sd");
var ed = [Link]("ed");
} catch (err) {
if(initAttempts++ < 10)
setTimeout("setReservationDates()", 50);
return;
}
// Grab the value set within the endDate input and parse it using the
dateFormat method
// N.B: The second parameter to the dateFormat function, if TRUE, tells the
function to favour the m-d-y date format
var edv =
[Link]([Link]("ed").value, [Link](0) == "m");
// Set the low range of the second datePicker to be the date parsed from the
first
[Link]( dt );
// If theres a value already present within the end date input and it's smaller
than the start date
// then clear the end date value
if(edv < dt) {
[Link]("ed").value = "";
}
}
function removeInputEvents() {
// Remove the onchange event handler set within the function
initialiseInputs
58
[Link]([Link]("sd"),
"change", setReservationDates);
}
//]]>
</script>
</head>
<body>
<div id="wrapper">
<div id="header">
<h1><a href="[Link]"><img src="xres/images/[Link]" class="logo" alt="" /></a></h1>
<ul id="mainnav">
<li class="current"><a href="[Link]">Home</a></li>
<li><a href="[Link]">Gallery</a></li>
<li><a href="[Link]">Movies Available</a></li>
<li><a href="[Link]">location</a></li>
<li><a href="[Link]">Contact Us</a></li>
</ul>
</div>
<div id="content">
<div id="rotator">
<ul>
<li class="show"><img src="xres/images/jb2/[Link]" width="861" height="379" alt="" /></li>
<li><img src="xres/images/jb2/[Link]" width="861" height="379" alt="" /></li>
<li><img src="xres/images/jb2/[Link]" width="861" height="379" alt="" /></li>
<li><img src="xres/images/jb2/[Link]" width="861" height="379" alt="" /></li>
<li><img src="xres/images/jb2/[Link]" width="861" height="379"
alt="" /></li>
</ul>
<div id="logo" style="left:600px; height: auto; top: 23px; width: 260px; position:
absolute; z-index:4;">
59
}
?>
</select>
</span><br>
<span style="margin-right: 11px;">Date:
<input type="text" class="w8em format-d-m-y
highlight-days-67 range-low-today" name="date" id="sd" value="" maxlength="10" readonly="readonly"
style="width: 165px; margin-left: 15px; border: 3px double #CCCCCC; padding:5px 10px;"/>
</span><br>
<span style="margin-right: 11px;">No. of Seats:
<select name="qty" style="width: 191px; margin-left:
15px; border: 3px double #CCCCCC; padding:5px 10px;">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
</select>
</span><br><br>
<input type="submit" id="submit" value="Next"
style="height: 34px; margin-left: 15px; width: 191px; padding: 5px; border: 3px double rgb(204, 204, 204);" />
</form>
</div>
<h2 class="accordion-header" style="height: 18px; margin-bottom:
15px; color: rgb(255, 255, 255); background: none repeat scroll 0px 0px rgb(53, 48, 48);">Admin Login</h2>
<div class="accordion-content" style="margin-bottom: 15px;">
<form action="[Link]" method="post"
style="margin-bottom:none;">
<span style="margin-right: 11px;">Username: <input
type="text" name="username" style="width: 165px; margin-left: 15px; border: 3px double #CCCCCC;
padding:5px 10px;"/></span><br>
<span style="margin-right: 11px;">Password: <input
type="password" name="password" style="width: 165px; margin-left: 15px; border: 3px double #CCCCCC;
padding:5px 10px;"/></span><br><br>
<input type="submit" id="submit" class="medium gray
button" value="Login" style="height: 34px; margin-left: 15px; width: 191px; padding: 5px; border: 3px double
rgb(204, 204, 204);" />
</form>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
LOGIN PAGE
60
<?php
//Start session
session_start();
//Connect to mysql server
require "[Link]";
//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
$str = @trim($str);
if(get_magic_quotes_gpc()) {
$str = stripslashes($str);
}
return mysql_real_escape_string($str);
}
//Sanitize the POST values
$login = clean($_POST['username']);
$password = clean($_POST['password']);
//Create query
$qry="SELECT * FROM admin WHERE username='$login' AND password='$password'";
$result=mysql_query($qry);
//while($row = mysql_fetch_array($result))
// {
// $level=$row['position'];
// }
//Check whether the query was successful or not
if($result) {
if(mysql_num_rows($result) > 0) {
//Login Successful
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['id'];
$_SESSION['SESS_FIRST_NAME'] = $member['username'];
session_write_close();
//if ($level="admin"){
header("location: admin/[Link]");
exit();
}else {
//Login failed
header("location: [Link]");
exit();
}
}else {
die("Query failed");
}
?>
SAVE PAGE
61
<?php
include('[Link]');
function createRandomPassword() {
$chars = "abcdefghijkmnopqrstuvwxyz023456789";
srand((double)microtime()*1000000);
$i = 0;
$pass = '' ;
while ($i <= 7) {
$num = rand() % 33;
$tmp = substr($chars, $num, 1);
$pass = $pass . $tmp;
$i++;
}
return $pass;
}
$confirmation = createRandomPassword();
$fname=$_POST['fname'];
$qty=$_POST['qty'];
$lname=$_POST['lname'];
$busnum=$_POST['busnum'];
$setnum=$_POST['setnum'];
$date=$_POST['date'];
$contact=$_POST['contact'];
$address=$_POST['address'];
$result = mysql_query("SELECT * FROM route WHERE id='$busnum'");
while($row = mysql_fetch_array($result))
{
$price=$row['price'];
}
$payable=$qty*$price;
mysql_query("INSERT INTO customer (fname, lname, address, contact, bus, transactionum, payable,
setnumber)
VALUES ('$fname', '$lname', '$address', '$contact', '$busnum', '$confirmation','$payable','$setnum')");
mysql_query("INSERT INTO reserve (date, bus, seat_reserve, transactionnum, seat)
VALUES ('$date', '$busnum', '$qty', '$confirmation','$setnum')");
header("location: [Link]?id=$confirmation&setnum=$setnum");
?>
SEAT LOCATION
<?php
include('[Link]');
$id=$_GET['id'];
$result = mysql_query("SELECT * FROM route WHERE id='$id'");
while($row = mysql_fetch_array($result))
{
$seatnum=$row['numseats'];
}
?>
Bus Layout <br>
<div style="border:1px solid red; padding:10px 5px; border-radius:5px; width: 136px;">
<?php
62
$N = $seatnum+1;
for($i=1; $i < $N; $i++)
{
echo '<input type="button" style="border:none; width:23px; padding:2px; margin:2px;" value="'.$i.'"
/>';
}
?>
</div>
PRINT PAGE
<?php
//Start session
session_start();
63
function initialiseInputs() {
// Clear any old values from the inputs (that might be cached by the
browser after a page reload)
[Link]("sd").value = "";
[Link]("ed").value = "";
var initAttempts = 0;
function setReservationDates(e) {
// Internet Explorer will not have created the datePickers yet so we
poll the datePickerController Object using a setTimeout
// until they become available (a maximum of ten times in case
something has gone horribly wrong)
try {
var sd = [Link]("sd");
var ed = [Link]("ed");
} catch (err) {
if(initAttempts++ < 10)
setTimeout("setReservationDates()", 50);
return;
}
// Grab the value set within the endDate input and parse it using the
dateFormat method
// N.B: The second parameter to the dateFormat function, if TRUE,
tells the function to favour the m-d-y date format
var edv =
[Link]([Link]("ed").value, [Link](0) ==
"m");
// Set the low range of the second datePicker to be the date parsed
from the first
[Link]( dt );
// If theres a value already present within the end date input and it's
smaller than the start date
// then clear the end date value
64
if(edv < dt) {
[Link]("ed").value = "";
}
}
function removeInputEvents() {
// Remove the onchange event handler set within the function
initialiseInputs
[Link]([Link]("sd"),
"change", setReservationDates);
}
//]]>
</script>
</head>
<body>
<div id="wrapper">
<div id="header">
<h1><a href="[Link]"><img src="xres/images/[Link]" class="logo" alt="" /></a></h1>
<ul id="mainnav">
<li class="current"><a href="[Link]">Home</a></li>
<li><a href="[Link]">Gallery</a></li>
<li><a href="[Link]">Movies Available</a></li>
<li><a href="[Link]">location</a></li>
<li><a href="[Link]">Contact Us</a></li>
</ul>
</div>
<div id="content">
<div id="rotator">
<script language="javascript">
function Clickheretoprint()
{
var disp_setting="toolbar=yes,location=no,directories=yes,menubar=yes,";
disp_setting+="scrollbars=yes,width=400, height=400, left=100, top=25";
var content_vlue = [Link]("print_content").innerHTML;
var docprint=[Link]("","",disp_setting);
[Link]();
[Link]('<html><head><title>Inel Power System</title>');
[Link]('</head><body onLoad="[Link]()" style="width: 400px; font-size:12px;
font-family:arial;">');
[Link](content_vlue);
[Link]('</body></html>');
[Link]();
[Link]();
}
65
</script>
<div style="background:#FFFFFF; color:#000000; height:100%; padding:17px; font-size:18px;
font-family:Verdana, Geneva, sans-serif;">
Print and present this details at the Cinema<br><br>
<h1> <a href="javascript:Clickheretoprint()">Print</a></h1>
<div id="print_content" style="width: 400px;">
<strong>Ticket Reservation Details</strong><br><br>
<?php
include('[Link]');
$id=$_GET['id'];
$setnum=$_GET['setnum'];
$result = mysql_query("SELECT * FROM customer WHERE transactionum='$id'");
while($row = mysql_fetch_array($result))
{
echo 'Transaction Number: '.$row['transactionum'].'<br/><br><hr>';
echo 'Name: '.$row['fname'].' '.$row['lname'].'<br/><br><hr>';
echo 'Address: '.$row['address'].'<br/><br/><hr>';
echo 'Contact: '.$row['contact'].'<br/><br/><hr>';
echo 'Payable: '.$row['payable'].'<br/><br/><hr>';
}
echo'<hr>';
$results = mysql_query("SELECT * FROM reserve WHERE transactionnum='$id'");
while($rows = mysql_fetch_array($results))
{
$ggagaga=$rows['bus'];
echo 'Movie and Theatre Category: ';
$resulta = mysql_query("SELECT * FROM route WHERE id='$ggagaga'");
while($rowa = mysql_fetch_array($resulta))
{
echo
': '.$rowa['route'].' '.$rowa['type'].
' '.$time=$rowa['time'];
}
echo 'Time of Movie: '.$time;
echo '<br>';
echo 'Seat Number: '.$setnum.'<br>';
echo 'Date Of Movie: '.$rows['date'].'<br>';
}
?>
</div>
<h2 style=" text-align:left;"><a href="[Link]">Home</a></h2>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
66
GALLERY PAGE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"[Link]
<html xmlns="[Link]
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title></title>
<link rel="stylesheet" type="text/css" href="xres/css/[Link]" />
<link rel="icon" type="image/png" href="xres/images/[Link]" />
<link type="text/css" href="css/[Link]" rel="stylesheet" media="all" />
<script type="text/javascript" src="js/[Link]"></script>
<script src="js/[Link]" type="text/javascript"></script>
<script src="js/[Link]" type="text/javascript"></script>
<script src="js/[Link]" type="text/javascript"></script>
<script src="js/[Link]" type="text/javascript"></script>
<link href="css/[Link]" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="wrapper">
<div id="header">
<h1><a href="[Link]"><img src="xres/images/[Link]" class="logo" alt="James Buchanan
Pub and Restaurant" /></a></h1>
<ul id="mainnav">
<li><a href="[Link]">Home</a></li>
<li class="current"><a href="[Link]">Gallery</a></li>
<li><a href="[Link]">Routes</a></li>
<li><a href="[Link]">location</a></li>
<li><a href="[Link]">Contact Us</a></li>
</ul>
</div>
<div id="content">
<div id="gallerycontainer">
<ul class="portfolio-categ filter">
<li>categories:</li>
<li class="all active"><a href="#">All</a></li>
<li class="cat-item-1"><a href="#" title="Category 1">Category
1</a></li>
<li class="cat-item-2"><a href="#" title="Category 2">Category
2</a></li>
<li class="cat-item-3"><a href="#" title="Category 3">Category
3</a></li>
<li class="cat-item-4"><a href="#" title="Category 4">Category
4</a></li>
</ul>
<ul class="portfolio-area" style="width: 860px;">
67
<span class="image-block">
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Wall-E"><img width="225" height="140"
src="images/thumbs/[Link]" alt="Wall-E" title="Wall-E" />
</a>
</span>
<div class="home-portfolio-text">
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Wall-E">Wall-E</a></h2>
<p class="post-subtitle-portfolio">released: 2008</p>
</div>
</div>
</li>
<li class="portfolio-item2" data-id="id-1" data-type="cat-item-2">
<div>
<span class="image-block">
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Up"><img width="225" height="140" src="images/thumbs/[Link]"
alt="Up" title="Up" />
</a>
</span>
<div class="home-portfolio-text">
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Up">Up</a></h2>
<p class="post-subtitle-portfolio">released: 2009</p>
</div
</div>
</li>
<li class="portfolio-item2" data-id="id-2" data-type="cat-item-1">
<div>
<span class="image-block">
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Cars 2"><img width="225" height="140"
src="images/thumbs/[Link]" alt="Cars 2" title="Cars 2" />
</a>
</span>
<div class="home-portfolio-text">
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Cars 2">Cars 2</a></h2>
<p class="post-subtitle-portfolio">released: 2011</p>
</div>
</div>
</li>
<li class="portfolio-item2" data-id="id-3" data-type="cat-item-4">
<div>
<span class="image-block">
68
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Toy Story 3"><img width="225" height="140"
src="images/thumbs/[Link]" alt="Toy Story 3" title="Toy Story 3" />
</a>
</span>
<div class="home-portfolio-text">
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Toy Story 3">Toy Story 3</a></h2>
<p class="post-subtitle-portfolio">released: 2010</p>
</div>
</div>
</li>
<li class="portfolio-item2" data-id="id-4" data-type="cat-item-3">
<div>
<span class="image-block">
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Finding Nemo"><img width="225" height="140"
src="images/thumbs/[Link]" alt="Finding Nemo" title="Finding Nemo" />
</a>
</span>
<div class="home-portfolio-text">
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Finding Nemo">Finding Nemo</a></h2>
<p class="post-subtitle-portfolio">released: 2003</p>
</div>
</div>
</li>
</div>
</li>
<li class="portfolio-item2" data-id="id-6" data-type="cat-item-1">
<div>
<span class="image-block">
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Happy Feet 2"><img width="225" height="140"
src="images/thumbs/[Link]" alt="Happy Feet 2" title="Happy Feet 2" />
69
</a>
</span>
<div class="home-portfolio-text">
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Happy Feet 2">Happy Feet 2</a></h2>
<p class="post-subtitle-portfolio">released: 2011</p>
</div>
</div>
</li>
</div>
</li>
<li class="portfolio-item2" data-id="id-9" data-type="cat-item-2">
<div>
<span class="image-block">
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Madagascar 3"><img width="225" height="140"
src="images/thumbs/[Link]" alt="Madagascar 3" title="Madagascar 3" />
</a>
</span>
<div class="home-portfolio-text">
70
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Madagascar 3">Madagascar 3</a></h2>
<p class="post-subtitle-portfolio">released: 2012</p>
</div>
</div>
</li>
<li class="portfolio-item2" data-id="id-10" data-type="cat-item-3">
<div>
<span class="image-block">
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Rango"><img width="225" height="140"
src="images/thumbs/[Link]" alt="Rango" title="Rango" />
</a>
</span>
<div class="home-portfolio-text">
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Rango">Rango</a></h2>
<p class="post-subtitle-portfolio">released: 2011</p>
</div>
</div>
</li>
<li class="portfolio-item2" data-id="id-11" data-type="cat-item-4">
<div>
<span class="image-block">
<a class="image-zoom" href="images/big/[Link]"
rel="prettyPhoto[gallery]" title="Shrek Forever After"><img width="225" height="140"
src="images/thumbs/[Link]" alt="Shrek Forever After" title="Shrek Forever After" />
</a>
</span>
<div class="home-portfolio-text">
<h2 class="post-title-portfolio"><a href="#" rel="bookmark"
title="Shrek Forever After">Shrek Forever After</a></h2>
<p class="post-subtitle-portfolio">released: 2010</p>
</div>
</div>
</li>
<div class="column-clear"></div>
</ul>
<div class="clearfix"></div>
</div>
</div>
</div>
</body>
</html>
71
SELECT SET PAGE
<link href="src/[Link]" media="screen" rel="stylesheet" type="text/css" />
<script src="lib/[Link]" type="text/javascript"></script>
<script src="src/[Link]" type="text/javascript"></script>
<script type="text/javascript">
jQuery(document).ready(function($) {
$('a[rel*=facebox]').facebox({
loadingImage : 'src/[Link]',
closeImage : 'src/[Link]'
})
})
</script>
<style>
body{
font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif;
font-size:12px;
}
p, h1, form, button{border:0; margin:0; padding:0;}
.spacer{clear:both; height:1px;}
/* ----------- My Form ----------- */
.myform{
margin:0 auto;
width:400px;
padding:14px;
}
72
color:#666666;
display:block;
font-size:11px;
font-weight:normal;
text-align:right;
width:140px;
}
#stylized input{
float:left;
font-size:12px;
padding:4px 2px;
border:solid 1px #aacfe4;
width:200px;
margin:2px 0 20px 10px;
}
#stylized button{
clear:both;
margin-left:150px;
width:125px;
height:31px;
background:#666666 url(img/[Link]) no-repeat;
text-align:center;
line-height:31px;
color:#FFFFFF;
font-size:11px;
font-weight:bold;
}
</style>
<?php
include('[Link]');
$busnum=$_POST['route'];
$date=$_POST['date'];
$qty=$_POST['qty'];
$result = mysql_query("SELECT * FROM route WHERE id='$busnum'");
while($row = mysql_fetch_array($result))
{
$numofseats=$row['numseats'];
$query = mysql_query("SELECT sum(seat_reserve) FROM reserve where date =
'$date'");
while($rows = mysql_fetch_array($query))
{
$inogbuwin=$rows['sum(seat_reserve)'];
}
$avail=$numofseats-$inogbuwin;
$setnum=$inogbuwin+1;
}
?>
<?php
if ($avail < $qty){
echo 'Qty reserve exced the available seat on the theatre';
}
73
else if($avail > 0)
{
?>
<script type="text/javascript">
function validateForm()
{
var x=[Link]["form"]["fname"].value;
if (x==null || x=="")
{
alert("First Name must be filled out");
return false;
}
var y=[Link]["form"]["lname"].value;
if (y==null || y=="")
{
alert("Last Name must be filled out");
return false;
}
var a=[Link]["form"]["address"].value;
if (a==null || a=="")
{
alert("Address must be filled out");
return false;
}
var b=[Link]["form"]["contact"].value;
if (b==null || b=="")
{
alert("Contact Number must be filled out");
return false;
}
}
</script>
<div id="stylized" class="myform">
74
?>
" id="name" readonly/><br>
<label>First Name
<span class="small">Enter first name</span>
</label>
<input type="text" name="fname" id="name"/><br>
<label>Last Name
<span class="small">Enter last name</span>
</label>
<input type="text" name="lname" id="name"/><br>
<label>Address
<span class="small">Enter Address</span>
</label>
<input type="text" name="address" id="name"/><br>
<label>Contact
<span class="small">Enter Contact Number</span>
</label>
<input type="text" name="contact" id="name"/><br>
<button type="submit">Confirm</button>
</form>
</div>
<?php
}
else if($avail <= 0)
{
echo 'no available sets';
}
?>
75
Middleware in traditional multimedia systems, such as DirectShow and QuickTime, provides the necessary platform for applications to access multimedia data like video and audio from connected devices. However, it has limitations in network support, meaning it mainly supports devices directly connected to the PC on which the application runs. In contrast, modern mobile applications are not bound by these hardware limitations; they utilize web technologies to access media across networks, offering more flexibility and functionality. This progression allows for greater scalability and accessibility in multimedia applications on mobile platforms compared to traditional systems .
Automated systems like mobile booking applications significantly reduce staff workload at cinemas by handling routine tasks such as ticket sales, cancellations, and seat reservations. This automation minimizes the need for manual intervention, allowing staff to focus on more critical customer service tasks and operational maintenance. As a result, cinemas can operate more efficiently, reduce human error, and improve customer satisfaction by providing faster, streamlined services .
Mobile applications enhance customer convenience by allowing users to book services such as movie tickets anytime and anywhere without the need for physical presence or queuing at a box office. This flexibility saves time and effort. Additionally, mobile apps are designed with user-friendly interfaces, making them accessible to a wider audience. They also offer features such as interactive user interfaces, secure payment options, and instant updates about movie availability and ticket confirmations. These advantages significantly outweigh the time-consuming and effort-intensive nature of traditional booking methods .
The mobile cinema booking system facilitates market research by providing a robust platform for collecting and analyzing user data. It maintains a reliable database of booking records, user preferences, and transaction histories, which can be mined for insights into consumer behavior and preferences. This data can be used to tailor marketing strategies, plan movie releases, and optimize schedules to meet audience demand. Additionally, analysis of peak booking times and popular movie genres can help in better resource allocation and promotional efforts, effectively using market research to enhance the cinema's competitiveness .
Mobile apps offer several advantages over desktop and web applications for cinema bookings, primarily due to their portability and integration with mobile-specific features such as GPS and push notifications. They provide greater convenience by enabling users to make reservations on the go, regardless of their location. Mobile apps also offer offline capabilities, allowing users to view movie information without an internet connection, unlike web applications that require continuous connectivity. Furthermore, mobile apps can integrate with device hardware for enhanced user experience, such as using fingerprint authentication for secure, quick access .
The mobile cinema booking system incorporates several security measures to prevent fraud and protect data, such as secure user authentication to ensure that only registered users can access the system. The system also uses encrypted transactions for ticket purchases to safeguard credit card and personal information. It can verify ticket validity at the cinema hall to prevent unauthorized entry with counterfeit tickets. Additionally, detailed logging of transaction details helps monitor irregularities and provide audit trails, thereby enhancing the system's overall trustworthiness .
The primary issues with traditional cinema booking systems include late seat reservations, network service fluctuations, and difficulties for computer illiterate customers, alongside the problem of fraudulent customers sneaking in with fake seat number printouts. The proposed mobile booking system aims to address these challenges by providing a convenient and reliable platform for customers to reserve seats and pay for tickets through an interactive mobile application. This system is designed to offer a simple and user-friendly interface, which includes a reliable database of movies and supports secure transactions, thus preventing fraud and catering to a wider range of customers .
The database design is crucial for the effectiveness of the cinema booking system as it organizes and stores all necessary data such as movies information, user credentials, booking records, and categories efficiently. This structured storage allows for quick retrieval and management of information, enabling the system to function smoothly and reliably. A well-designed database supports analytical functions, such as generating statistical information from booking records for research purposes and ensuring data integrity and security, contributing to the overall robustness and scalability of the cinema booking system .
Implementation challenges from financial constraints include limited resources for acquiring high-quality development tools and conducting comprehensive testing, which could affect the system's quality and reliability. Time constraints may lead to inadequate testing periods and rushed functionalities, potentially resulting in subpar user experiences. To address these, prioritization of critical system features that offer maximum user impact is essential. Furthermore, phased deployment with iterative testing can help manage these constraints effectively, ensuring thorough testing and resource allocation, gradually enhancing the system's features and reliability .
The design of the user interface (UI) is closely tied to customer satisfaction in a mobile ticket booking system. A well-designed UI provides an intuitive and efficient navigation experience, which is crucial for ease of use and a positive user experience. Clear layout and functionality help users find and book tickets with minimal effort, reducing friction and enhancing satisfaction. Moreover, responsive design elements ensure compatibility across devices, contributing to accessible and pleasing interactions, thus fostering a stronger user satisfaction .