You are on page 1of 72

TOUR MANAGEMENT SYSTEM

A project report submitted to


Sri Ramakrishna Mission Vidyalaya College of Arts and Science, Coimbatore- 20
in partial fulfillment of the requirements for the award of the degree of

BACHELOR OF COMPUTER APPLICATIONS


Project Report Submitted
by

DEEPAN K
(21UCA007)

Under the guidance of

Sri. M.K. PRAKASH MCA., M.Phil., (Ph.D.,),


Assistant Professor, Department of Computer Applications (UG)

DEPARTMENT OF COMPUTER APPLICATIONS


SRI RAMAKRISNA MISSION VIDYALAYA COLLEGE OF ARTS AND SCIENCE
(An Autonomous Institution Affiliated to Bharathiar University,
Re-Accredited by NAAC with ‘A+’ grade)
COIMBATORE-641 020

APRIL-2024
CERTIFICATE

This is to certify that the project entitled “TOUR MANAGEMENT SYSTEM’’ submitted to
Sri Ramakrishna Mission Vidyalaya College of Arts and Science, Coimbatore-20 Affiliated to
Bharathiar University, in partial fulfillment of the requirements for the award of the degree of
BACHELOR OF COMPUTER APPLICATIONS is a record of original project work done by
DEEPAN K (21UCA007) during the academic year 2023-2024 of his study in the Department
of Computer Applications at Sri Ramakrishna Mission Vidyalaya College of Arts and Science,
Coimbatore – 20, under my supervision and guidance and the dissertation has not formed the
basis for the award of any Degree /Diploma /Associateship/ Fellowship or other similar title to
any candidate of any university.

Date:

Place: Coimbatore-20 Signature of the Guide

Countersigned

Head of the Department Principal

Internal Examiner External Examiner


DECLARATION

I hereby declare that the thesis entitled “TOUR MANAGEMENT SYSTEM” submitted in
partial fulfillment of the requirements for the award of the degree of BACHELOR OF
COMPUTER APPLICATIONS of Bharathiar University is a record of original work done
by us during 2022-2023 under the supervision and guidance of M.K. PRAKASH MCA,
M.Phil., (Ph.D.,), Assistant Professor, Department of Computer Applications, Sri
Ramakrishna Mission Vidyalaya College of Arts and Science, Coimbatore-
20. The dissertation has not formed the basis for the award of any
Degree/Diploma/Associateship/Fellowship or other similar title to any candidate of any
university.

Date: Signature of the Candidate

Place: Coimbatore. DEEPAN K


(21UCA007)
ACKNOWLEDGEMENT
I would like to express my sincere thanks to our Secretary, SWAMI
NIRMALESHANANDA MAHARAJ, Sri Ramakrishna Mission Vidyalaya College of
Arts and Science, Coimbatore and SWAMI ANAPEKSHANANDA MAHARAJ, Incharge
– SF Wing, Sri Ramakrishna Mission Vidyalaya College of Arts and Science, Cbe - 20 for
giving me the permission to do the project.

At the outset I record my profound thanks to our Principal Dr. R. THANGAVEL M.Sc.,
MBA., MTech., M.Phil., Ph.D., Sri Ramakrishna Mission Vidyalaya College of Arts and
Science, Cbe-20 for following me to carry out this project work. I take this opportunity to
acknowledge my deep sense of gratitude to our honourable Director Dr. R. SRIDHAR M.Sc.,
MCA, M.Phil., Ph.D., Sri Ramakrishna Mission Vidyalaya College of Arts and Science for
permitting me to carry my project work.

I would like to express my heartfelt gratitude to Dr.K. KANDHAPPAN M.A., M.Phil.,


D.L.L., DCHI., Ph.D., Dean Student Support Services at Sri Ramakrishna Mission
Vidyalaya College of Arts and Science for following me to carry out this project work.

I wish to express my sincere heartfelt thanks to Dr. M.JAI KUMAR MCA, M.Phil.,
Ph.D., M.Sc. (Psych)., Associate Prof. & Head, Department of Computer Applications, Sri
Ramakrishna Mission Vidyalaya College of Arts and Science, Cbe-20 for his kind help,
generous support, valuable advice and suggestion for the successful completion of the study.

wish to express my sincere heartfelt thanks to my guide Sri M.K. PRAKASH MCA,
M.Phil., (Ph.D.), Assistant Professor in Computer Applications for his kind support,
guidance and suggestion for the successful completion of the project work.

I would also express my sincere thanks to Dr. J.M. DHAYASHANKAR MCA, M.Phil.,
Ph.D., Associate Professor in Computer Applications, D.GOVINDARAJ M.Sc., M.Phil.,
(Ph.D.,), Assistant Professor in Computer Applications, Sri Ramakrishna Mission
Vidyalaya College of Arts and Science, Cbe-20 and all the faculty members of Computer
Applications Department for their valuable support and suggestions in my project work.

Finally, I express my heartful gratitude to my beloved Parents and Friends without whose
Sustained support, I could not have made debut in Computer Application.
SYNOPSIS

The project entitled as “Tour Management System”, which is developed using HTML,
JavaScript as the Front-End and MySQL as the Back-End.

Primarily, it eliminates the manual data entry, and ensure that booking figures are
accurate. Accounting principles, procedures and processes are of paramount importance,
and this is often where booking software is utilized to reduce or eliminate errors and keep
booking figures precise.

Apart from the above, a computer booking software usually carries useful features
such as invoice creation, financial tracking, travellers tracking, reporting options,
database and records management, and many others. Efficiency gains and cost-saving are
the most crucial advantages of booking system. booking software helps create instant
reports that enable business owners to keep track of their customers and monitor
outstanding invoices. Automation allows you to create reports, export data through PDF,
CSV files that you can share directly through email.

CONTENTS
CERTIFICATE
i
DECLARATION ii
ACKNOWLEDGEMENT iii
SYNOPSIS
iv

CHAPTER TITLE PAGE

1. INTRODUCTION 1
1.1 OVERVIEW OF THE PROJECT 1

1.1.1 ABOUT THE PROJECT 1

1.2 NEED FOR THE SYSTEM 1

1.2.1 PHP 2

1.2.2 HTML 2

1.2.3 MYSQL 3

1.2.4 CSS 5

1.2.5 JAVASCRIPT 5

1.3 FEASIBILITY STUDY 6

1.3.1 TECHNICAL FEASIBILITY 6

1.3.2 ECONOMIC FEASIBILITY 7

1.3.3 BEHAVIOURAL FEASIBILITY 7

1.4 SYSTEM SPECIFICATION 8

1.5 HARDWARE CONFIGURATION 8

1.6 SOFTWARE SPECIFICATION 8

2. SYSTEM STUDY 9
2.1 EXISTING SYSTEM 9

2.2 PROPOSED SYSTEM 9

3 . SYSTEM DESIGN 11

3.1 INPUT DESIGN 11

3.2 INPUT VALIDATION 11

3.3 OUTPUT DESIGN 12

3.4 DATABASE DESIGN 12

3.5 DATA FLOW DIAGRAM 13

3.6 E-R DIAGRAM 16

18
3.7 DATABASE TABLES

4 . SYSTEM TESTING AND IMPLEMENTATION 25

4.1 SYSTEM TESTING 25

4.2 SYSTEM IMPLEMENTATION 27

4.3 MAINTENANCE OF THE SYSTEM 28

5. APPENDIX

5.1 SAMPLE CODE

5.2 SCREENSHOT
52
6.
CONCLUSION 59
7. SCOPE FOR FURTHER ENHANCEMENTS 61
8. BIBLIOGRAPHY 62

8.1 REFERENCE BOOKS


62

8.2 REFERENCE WEBSITES


62
1. INTRODUCTION

1.1 OVERVIEW OF THE PROJECT

This project "TOUR MANAGEMENT SYSTEM" is used to automate all


process of the tourism, which deals with creation, booking and confirmation and user
details. The project is designed in PHP as front end and MySQL as backend which
works in any browsers. My Thirumalaivasan Tours is used to book a tour from
anywhere in the world by a single dynamic website which will help the user to know
all about the places and tour details in a single website. The admin can add packages,
Expenses, Tax, Payment types and can generate reports. Then the users can sign in and
book package, they can be confirmed by the admin in them manage booking page. The
user can see the confirmation in their booking page. It is an easiest platform for all
travellers which can be easily booked and know all details. Keywords: Tourism
management, travel packages, tourism, package booking. Tour Management system is
a dynamic website for tourism business. It is dynamic and responsive web design. It is
also called travel technology solution for agencies & tour operation. Nearly everyone
goes on a vacation for this 'a Tour management system' would play a vital role in
planning the perfect trip.

1.1.1 ABOUT THE PROJECT

Modules

➢ User Login
➢ Packages
➢ Bookings
➢ Reports
➢ Admin Login
➢ Add Travellers
➢ Add Bookings
➢ Create User
➢ Change Password
➢ Payment Types

1
1.2 NEED FOR THE SYSTEM

1.2.1 PHP

PHP is an open-source, interpreted, and object-oriented scripting language that


can be executed at the server-side. PHP is well suited for web development. Therefore,
it is used to develop web applications (an application that executes on the server and
generates the dynamic page.).
➢ PHP stands for Hypertext Pre-processor.
➢ PHP is faster than other scripting languages, for example, ASP and JSP.

➢ PHP is a server-side scripting language, which is used to manage the dynamic


content of the website.

➢ PHP can be embedded into HTML.


➢ PHP is an object-oriented language.
➢ PHP is an open-source scripting language.

The benefits of using the PHP for developing application include

➢ Gives Web Developer more control.

➢ Open source and dynamic Library support.

➢ East to understand and easy for developers to use.

1.2.2 HTML

HTML or Hyper-text Mark-up Language is a globally accepted programming


language for formatting web pages. In today's world, it is commonly used along with
JavaScript and Cascading Style Sheets (CSS) to give web pages the look and feel we
desire. Through HTML, the look and appearance of images, links, headings, text, page
layout and just about every element of a web page can be formatted.

If at any point in time you need to hire the services of a different web design
firm or professional for making changes or updates to your website, it would be
relatively easy to find cost-effective and affordable solution providers who can make
the changes you need to your website.

2
Almost- if not all browsers support HTML Certainly more browsers support
HTML than any other web programming language as a result, when you build a
website using HTML it would show up on most browsers around the world.

Today, XML is increasingly being used for data storage The similarity of
syntax between HTML and XML means that it is easier and seamless working
between the two platforms.

1.2.3 MYSQL

What is a Database?

A database is a separate application that stores a collection of data. Each


database has one or more distinct APIS for creating, accessing, managing, searching,
and replicating the data it holds.

Other kinds of data stores can also be used, such as files on the file system or
large hash tables in memory, but data fetching, and writing would not be so fast and
easy with those type of systems.

Nowadays, we use relational database management systems (RDBMS) to store


and manage huge volume of data This is called relational database because all the data
is stored into different tables and relations are established using primary keys or other
keys known as Foreign Keys.

RDBMS Terminology

Before we proceed to explain the MYSQL database system, let us revise a few
definitions related to the database.

➢ Database: A database is a collection of tables, with related data

➢ Table: A table is a matrix with data. A table in a database looks like a simple
spreadsheet.

➢ Column: One column (data element) contains data of one and the same kind, for
example the column postcode.

3
➢ Row: A row (tuple, entry, or record) is a group of related data. For example, the
data of one subscription.

➢ Redundancy: Storing data twice, redundantly to make the system faster.

➢ Primary Key: A primary key is unique. A key value cannot occur twice in one
table with a key, you can only find one row.

➢ Foreign Key: A foreign key is the linking pin between two tables.

➢ Compound Key: A compound key (composite key) is a key that consists of


multiple columns, because one column is not sufficiently unique.

➢ Index: An index in a database resembles an index at the back of a book.

MySQL Database

MYSQL is a fast, easy to use DOMS being used for many small and big businesses,
MYSQL is developed marketed and supported by MYSQL AB, which is a Swedish company

MYSQL is becoming so popular because of many good reasons:

➢ MYSQL is released under an open-source license, so you have nothing to pay to


use it.

➢ MYSQL is a very powerful program. It handles a large subset of the functionality


of the most expensive and powerful database packages.

➢ MYSQL uses a standard form of the well-known SOL data language.

➢ MYSQL works on many operating systems and with many languages including
PHP, PERL, C, C++, JAVA, etc.

➢ MYSQL works very quickly and works well even with large data sets:

➢ MYSQL is very friendly to PHP the most appreciated language for web
development.
➢ MYSQL supports large databases up to 50 million rows or more in a table.

➢ The default file size limit for a table is 4GB, but you can increase this (if your
operating system can handle it) to a theoretical limit of 8 million terabytes (TB).

4
➢ MYSQL is customizable the open-source GPL license allows programmers to
modify the MYSQL software to fit their own specific environments.

Some Advantage

➢ Data Security

➢ On-Demand Scalability

➢ High Performance

➢ Round-the-clock Uptime

➢ Comprehensive Transactional Support

➢ Complete Workflow Control

➢ Reduced Total Cost of Owner

1.2.4 CASCADING STYLE SHEET (CSS)

CSS is a language used to detail the presentation of a web page's mark-up language
most commonly HTML or XHTML)- such as colours, fonts, and layout. One of its key
benefits is the way it allows the separation of document content (written in HTML or a
similar mark-up language) from document presentation (written in CSS).

Why is CSS important?

CSS is one of the most powerful tools a web designer can learn because with it you
can affect the entire mood and tone of a web site. Well written style sheets can be updated
quickly and allow sites to change what is prioritized or valued without any changes to the
underlying
XHTML.

1.2.5 JavaScript

JavaScript is not a programming language in strict sense. Instead, it is a scripting


language because it uses the browser to do the dirty work If you command an image to be
replaced by another one, JavaScript tells the browser to go do it. Because the browser actually
does the work you only need to pull some strings by writing some relatively easy: lines of
code.

5
That's what makes JavaScript an easy language to start with.

Secondly, and more importantly, there are the browser differences Though modem
web browsers all support JavaScript, there is no sacred law that says they should support
exactly the same JavaScript A large part of this site is devoted to exploring and explaining
these browser differences and finding ways to cope with them.

Advantages:

➢ JavaScript is executed on the client side.


➢ JavaScript is a relatively easy language.
➢ JavaScript is relatively fast to the end user.
➢ Extended functionality to web pages.

1.3 Feasibility Study

Feasibility study is made to see if the project on completion will serve the purpose of
the organization for the amount of work, effort and the time that spends on it. Feasibility
study lets the developer for see the future of the project and the usefulness. A feasibility
studies of a system proposal is according to its workability, which is the impact on the
organization, ability to meet the user needs and effective use of resources. Thus, when a
new application is proposed it normally goes through a feasibility study before it is
approved for the development.

The document provides the feasibility of the project that is being designed and lists
various that were considered very carefully during the feasibility study of this project such
as Technical Economic and Operational feasibility The following are its features:

1.3.1 Technical Feasibility

The system must be evaluated from the technical point of view first. The assessment
of this feasibility must be based on an outline design of the system requirement in the terms
input, output, program, and procedures Having identified an outline system, the
investigation must go on to suggest the type of equipment required method developing the
system of running the system once it has been designed.

Technical issues raised during the investigation are:


6
1.Does the existing technology sufficient for the suggested one?
2. Can the system expand if developed?

The project should be developed such that the necessary functions and performance
achieved within the constraints The project is developed within latest technology. Through
Technology may become obsolete after some periods of time. due to the fact that newer
version of same software supports older versions, the system may still be used. So, there are
minimal constraints involved with this project. The system has been developed using Java the
project is technically feasible for development.

1.3.2 Economic Feasibility

The developing system must be justified by cost and benefit. Criteria to ensure that
effort is concentrated on project, which will give best, return at the earliest. One of the
factors, affect the development of a new system, is the cost it would require.

The following are some of the important financial questions asked during preliminary
investigation:

➢ The cost conducts a full system investigation.


➢ The cost of the hardware and software.
➢ The benefits in the form of reduced costs or fewer costly errors.

Since the system is developed as part of project work there is no manual cost to spend for the
proposed system. Also, all the resources are already available, it gives, and indication of the
system is economically possible for development.

1.3.3 Behavioural Feasibility


This includes the following question

➢ Is there sufficient support for the users?

➢ Will the proposed system cause harm?

The project would be beneficial because it satisfies the objectives when developed and
installed. All behavioural aspects are considered carefully and conclude that the project is
behaviourally feasible.

7
1.4 SYSTEM SPECIFICATION

A system requirements specification is normally produced in response to a user requirements


specification or other expression of requirements and is then used as the basis for system
design. The system requirements specification typically differs from the expression of
requirements in both scope and precision: the latter may cover both the envisaged system and
the environment in which it will operate but may leave many broad concepts unrefined.
Traditionally, system requirements and specifications tool the form of natural- language
documents.

1.5 HARDWARE CONFIGURATION

Processor : Intel core i5 Processer


Speed : 2.40 GHz
Memory : 8 GB RAM
Storage : 1TB HDD
Keyboard : 104 Keys Keyboard
Pointer device : USB Mouse

1.6 SOFTWARE SPECIFICATION

Front End : HTML, CSS, JavaScript


Back End : PHP
Database : MySQL
Operating System : Windows 11

8
2. SYSTEM STUDY

2.1 EXISTING SYSTEM

In the existing system the registrations are done manually but in proposed system
we must computerize all the students and company registrations using the career guidance
and placement cell management system. The processing of huge data will be stored in the
database easily and can help to view the selected data speedily to us but, still the processing
is too huge for them to provide the results in the given limited time. To avoid all these
limitations and make the working more accurately the system needs to be computerized.

Drawbacks

➢ Inconsistency in data entry.

➢ System is dependent on good individuals.

➢ Reduction in sharing information.

➢ Time consuming and costly to produce reports.

➢ Lack of security.

➢ Duplication of data entry.

2.2 PROPOSED SYSTEM

The aim of proposed system is to develop a system of improved facilities. The


proposed system can overcome all the limitations of the existing system. The system
provides proper security and reduces the manual work.

Merits of the System

9
The system is very simple in design and to implement. The system requires very low
system resources, and the system will work in almost all configurations. It has got following
features.

➢ Easy and User Friends Control Panel from where user can access and
perform actions on the required information.
➢ It provides easy and user friends menu driven access.
➢ Reports of all processed data can be easily printed.
➢ Daily entries as reported.

3. SYSTEM DESIGN

10
Design is the first step into the development phase for any engineered product or
system. Design is a creative process. A good design is the key to effective system. The term
“design” is defined as “the process of applying various techniques and principles for the
purpose of defining a process or a system in sufficient detail to permit its physical
realization”. It may be defined as a process of applying various techniques and principles for
the purpose of defining a device, a process, or a system in sufficient detail to permit its
physical realization. Software design sits at the technical kernel of the software engineering
process and is applied regardless of the development paradigm that is used. The system

design develops the architectural detail required to build a system or product.

3.1 INPUT DESIGN

The design of input focuses on controlling the amount of input required, controlling
the errors, avoiding delay, avoiding extra steps, and keeping the process simple. The input is
designed in such a way so that it provides security and ease of use with retaining the privacy.
Input Design is the process of converting a user-oriented description of the input into a
computer-based system. This design is important to avoid errors in the data input process
and show the correct direction to the management for getting correct information from the
computerized system.

It is achieved by creating user-friendly screens for the data entry to handle large
volume of data. The goal of designing input is to make data entry easier and to be free from
errors. The data entry screen is designed in such a way that all the data manipulates can be
performed.
It also provides record viewing facilities.

3.2 INPUT VALIDATION

Validation checks are performed on the following fields. The text field can contain
only the number of characters lesser than or equal to its size. The text fields are
alphanumeric in some tables and alphabetic in other tables. Incorrect entry always flashes
and error message.

The numeric field can contain only numbers from 0 to 9. An entry of any character
flashes an error message. The individual modules are checked for accuracy and what it must
11
perform. Each module is subjected to test run along with sample data. The individually
tested modules are integrated into a single system.

3.3 OUPUT DESIGN

A quality output is one, which meets the requirements of the end user and presents
the information clearly. In output design it is determined how the information is to be
displaced for immediate need and the hard copy output. It is the most important and direct
source information to the user. Efficient and intelligent output design improves the system’s
relationship to help user decision-making.

Designing computer output should proceed in an organized, well thought out


manner; the right output must be developed while ensuring that each output element is
designed so that people will find the system can use easily and effectively. When analysis
design computer output, they should

➢ Identify the specific output that is needed to meet the requirements.


➢ Select methods for presenting information.
➢ Create document, report, or other formats that contain information produced by the
system.

3.4 DATABASE DESIGN

Database design is the process of producing a detailed data model of a database. This
logical data model contains all the needed logical and physical design choices and physical
storage parameters needed to generate a design in a data definition language, which can then
be used to create a database. A fully attributed data model contains detailed attributes for
each entity.

The term database design can be used to describe many different parts of the design of
an overall database system. Principally, and most correctly, it can be thought of as the logical
design of the base data structures used to store the data.
In the relational model these are the tables and views. In an object database the
entities and relationships map directly to object classes and named relationships. However,
the term database design could also be used to apply to the overall process of designing, not
12
just the base data structures, but also the forms and queries used as part of the overall
database application within the database management system (DBMS).

The process of doing database design generally consists of a number of steps which
will be carried out by the database designer. Usually, the designer must:

➢ Determine the relationships between the different data elements.

➢ Superimpose a logical structure upon the data on the basis of these relationships.

3.5 DATA FLOW DIAGRAM

Data flow diagram (DFD) shows the functional relationships of the values A
computed by a system, including input values, output values & internal data stores. A data
flow diagram contains processes that transform data, data flows that move data, data store
objects that store data passively.

13
DFD Level 1:

14
Package
Pakage
s

Add View/Update
Pakages Pakages

3.5.3 DFD Level-2:

Booking
s

Create Bill
View Bookings PDF Generate
or
Print

3.6 E-R DIAGRAM

The Entity-Relationship (ER) model is a conceptual data model that views the real
world as entities and relationships. A basic component of the model is the Entity-
15
Relationship diagram, which is used to visually represent data objects. The model has been
extended and today it is commonly used for database design.

The entity relationship diagram is based on a perception of real world that consists of
a collection of basic objects, called entities and of relationship among the objects. Entities
are described in a database by a set of attributes. The set of all entities of the same type, and
the set of all relationships of the same type, are termed as an entity set, and relationship set
respectively. The overall logical structure of a database can be expressed graphically by an
entity relationship diagram, which is built up using the notations.

16
3.7 DATABASE TABLES

17
The project “Tour Management System” is fully connected with the database
MySQL. The main of choosing this database is the flexibility and the data security that can
provide to the entire program. The general theme behind database is to handle information as
a whole. There is no artificiality that is normally embedded in separate files or applications.
A database is a collection of interrelated data stored with minimum redundancy to serve
many users quickly and efficiently. The general objective is to make information access
easy, quick, inexpensive, and flexible for the user.

Database design is the most critical part of the Design phase. An elegantly designed,
well defined Database is a strong foundation for the whole system. The tables are classified
and fully normalized by inputting with Primary Keys and Foreign Keys for each table.

Table Name : admin


Primary Key : admin_id

Attribute Data Length Descriptio


s Types n
admin_id int 11 Autoincrement
uname varcha 200 Not Null
r
email Varcha 200 Not Null
r
passwor Varcha 200 Not Null
d r
fname Varcha 200 Not Null
r
lname Varcha 200 Not Null
r
contact Varcha 200 Not Null
r
address Text - Not Null
file Varcha 200 Not Null
r
cdate Date Not Null
group_id Int 11 Not Null
total_amount Int 11 Not Null
delete_statu Int 11 Not Null
s

18
19
Table Name :

Booking
Primary Key : Booking _id

Attributes Data Length Description


Types
Booking Int 11 Autoincrement
_id
Traveller Varchar 200 Not Null
State_id Varchar 200 Not Null
Package_id Varchar 200 Not Null
no_of_adults Int 11 Not Null
no_of_children Int 11 Not Null
from_date Date - Not Null
to_date Date - Not Null
total_amount Int 11 Not Null
adv_amount Varchar 200 Not Null
total Int 11 Not Null
tax Int 11 Not Null
created_date Date - Not Null

Table Name : booking_payment


Primary Key : bkp_id

Attributes Data Length Description


Types
bkp_id Int 11 Autoincrement
advance_amount Int 11 Not Null
date varchar - Not Null
note varchar 200 Not Null

2
0
Table Name :

booking_report
Primary Key : Bkr_id

Attributes Data Length Description


Types
Bkr_id int 11 Autoincrement
From_date Date - Not Null
To_date Date - Not Null

Table Name : currency


Primary Key : Curr_id

Attributes Data Types Length Description


Curr_id Int 10 Autoincrement
Curr_code Varchar 50 Not Null
Curr_symbol Varchar 15 Not Null

Table Name : demo


Primary Key : demo_id
Attributes Data Length Description
Types
demo_id Int 10 Autoincrement
photo Varchar 200 Not Null

Table Name : email_setup


Primary Key : emailset_id
Attribute Data Length Description
s Types
emailset_id Int 11 Autoincrement
name Varchar 50 Not Null

2
1
Table Name :
mail_driver_host Varchar 50 Not Null
mail_port Int 50 Not Null
mail_username Varchar 50 Not Null
mail_password Varchar 50 Not Null

expense
Primary Key : expense _id

Attributes Data Lengt Description


Types h
expense _id Int 11 Autoincrement
expense_for Varchar 200 Not Null
expense_name Varchar 200 Not Null
amount Int 11 Not Null
created_date Date - Not Null

Table Name : expense_category


Primary Key : expcat_id

Attributes Data Lengt Description


Types h
expcat_id Int 11 Autoincrement
expense_name Varchar 200 Not Null
status Varchar 200 Not Null

Table Name : packages


Primary Key : pack_id

Attributes Data Lengt Description


Types h
pack_id Int 11 Autoincrement
pname Varchar 200 Not Null
price_adult Int 11 Not Null
price_children Int 11 Not Null

2
2
Table Name :

payment
Primary Key : pay_id

Attributes Data Lengt Description


Types h
pay_id Int 11 Autoincrement
booking_id Int 11 Not Null
amount Int 11 Not Null
paid_amount Int 11 Not Null
insert_amount Int 11 Not Null
payment_type Varchar 200 Not Null
cdate Varchar 200 Not Null
due_date Date - Not Null

Table Name : payment_type


Primary Key : paytype_id

Attribute Data Length Description


s Types
paytype_id Int 11 Autoincrement
payment_type Varchar 200 Not Null

Table Name : register


Primary Key : reg_id

Attributes Data Lengt Description


Types h

2
3
Table Name :
reg_id Int 11 Autoincrement
Uname Varchar 200 Not Null
Email Varchar 200 Not Null
Password Varchar 200 Not Null
Contact Varchar 200 Not Null
Photo Varchar 200 Not Null
docs Varchar 200 Not Null

settings
Primary Key : setting_id

Attributes Data Lengt Description


Types h
setting_id Int 11 Autoincrement
Title Varchar 200 Not Null
F_image Varchar 200 Not Null
Logo_image Varchar 200 Not Null
Login_image Varchar 200 Not Null
Currency Varchar 200 Not Null
Footer Varchar 200 Not Null
Address Varchar 200 Not Null
Add1 Varchar 200 Not Null

Table Name : sms_setting


Primary Key : sms_id

Attributes Data Lengt Description


Types h
sms_id Int 11 Autoincrement
Uname Varchar 200 Not Null
Password Varchar 200 Not Null

Table Name : tax


2
4
Table Name :

Primary Key : tax_id

Attributes Data Lengt Description


Types h
tax_id Int 11 Autoincrement
tname Varchar 200 Not Null
Percent Varchar 200 Not Null
Short_code Varchar 200 Not Null

2
5
Table Name
: travellers
Primary Key :id

Attributes Data Lengt Description


Types h
travellers_id Int 11 Autoincrement
Name Varchar 200 Not Null
Email Varchar 200 Not Null
Password Varchar 200 Not Null
confirm Varchar 200 Not Null
State name Varchar 200 Not Null
Mobile Varchar 200 Not Null
address Varchar 200 Not Null
Photo Varchar 200 Not Null
status Varchar 200 Not Null

26
4. SYSTEM TESTING AND IMPLEMENTATION

4.1. SYSTEM TESTING

The purpose of testing is to discover errors. Testing is the process of trying to


discover every conceivable fault or weakness in a work product. It provides a way to check
the functionality of components, sub-assemblies, assemblies and/or a finished product It is the
process of exercising software with the intent of ensuring that the Software system meets its
requirements and user expectations and does not fail in an unacceptable manner. There are
various types of tests. Each test type addresses a specific testing requirement.

Unit Testing

Unit testing is usually conducted as part of a combined code and unit test phase of
the software lifecycle, although it is not uncommon for coding and unit testing to be
conducted as two distinct phases. Field testing will be performed manually, and functional
tests will be written in detail.

Test objectives

➢ All field entries must work properly.


➢ Pages must be activated from the identified link.
➢ The entry screen, messages and responses must not be delayed.

Features to be tested

➢ Verify that the entries are of the correct format


➢ No duplicate entries should be allowed
➢ All links should take the user to the correct page.

Integration Testing

27
Software integration testing is the incremental integration testing of two or more
integrated software components on a single platform to produce failures caused by interface
defects.

The task of the integration test is to check that components or software applications,
e.g., components in a software system or – one step up – software applications at the
company level – interact without error.

Test Results

All the test cases mentioned above passed successfully. No defects encountered.

Functional Testing

Functional tests provide systematic demonstrations that functions tested are available
as specified by the business and technical requirements, system documentation, and user
manuals.

Functional testing is centred on the following items

Valid Input : identified classes of valid input must be accepted.

Invalid Input : identified classes of invalid input must be rejected.

Functions : identified functions must be exercised.

Output : identified classes of application outputs must be exercised.

Systems/Procedures : interfacing systems or procedures must be invoked.

Organization and preparation of functional tests is focused on requirements, key


functions, or special test cases. In addition, systematic coverage pertaining to identify
Business process flows; data fields, predefined processes, and successive processes must be
considered for testing. Before functional testing is complete, additional tests are identified
and the effective value of current tests is determined.

White Box Testing

28
White Box Testing is a testing in which in which the software tester has knowledge
of the inner workings, structure and language of the software, or at least its purpose. It is
used to test areas that cannot be reached from a black box level.

Black Box Testing

Black Box Testing is testing the software without any knowledge of the inner workings,
structure or language of the module being tested. Black box tests, as most other kinds of tests,
must be written from a definitive source document, such as specification or requirements
document, such as specification or requirements document. It is a testing in which the
software under test is treated, as a black box. you cannot “see” into it. The test provides inputs
and responds to outputs without considering how the software works.

Acceptance Testing

User Acceptance Testing is a critical phase of any project and requires significant
participation by the end user. It also ensures that the system meets the functional
requirements.

Test Results

All the test cases mentioned above passed successfully. No defects encountered.

4.2 SYSTEM IMPLEMENTATION


System implementation is the important stage of project when the theoretical design
is tuned into practical system. After proper testing and validation, system implementation
should be done.
System implementation includes all those activities that take place to convert an old
system to the new one. The new system may be totally new. Replacing an existing manual or
automated system may be a major modification to an existing system.
There are types of implementations:

➢ Implementation of computer system to replace a manual system

➢ Implementation of a new computer system to replace an existing system


29
Implementation Procedure

Implementation is the stage, which is crucial in the life cycle of the new system
designed. The main stage in the implementation is planning, training, system testing.
Implementation is converting a new or revised system into an operational one. It is the
process of changing from the old system to the new one. After system is implemented, user
conducts a review of the system. It is used to gather information for the maintenance of the
system. The basic review method is a data collection method of questionnaire, interview etc.

User Training

User training cannot be provided for every user in the organization. So, in order to
make it understandable and usable to every user, the screens are provided efficiently and user
friendly so that even a novice user can be able to work with.

4.3 MAINTENANCE OF THE SYSTEM

All system is dynamic and subjects to constantly changing requirements. Effort must
be devoted to adapting them and design must be flexible specified so that such changes can be
easily implemented. This activity is called system maintains. It includes improvement of
system functions and correction of errors. We may define system maintenance by describing
four activities that are undertaken after a program is released for use.

Corrective Maintenance

The first maintenance activity occurs since it is unreasonable to assume that system
testing will uncover all errors in a large software system. The process of including the
diagnosis and correction of one or more errors is called corrective maintenance.

Adaptive Maintenance

30
This activity that contributes to the definition of maintenance occurs since rapid
change is encounter in every aspect of computing. Therefore, adaptive maintenance modifies
software to properly interface with the changing environment.

Perfective Maintenance

This activity involves recommendations for new capabilities modifications to the


existing functions and general enhancements when the software is used to satisfy these
requests, perfective maintenance is performed.

5. APPENDIX

31
5.1 SAMPLE CODE

Index.html

<!DOCTYPE html>
<html lang="zxx">
<head>
<title>Travels | Home</title>

<meta name="viewport" content="width=device-width, initial-scale=1">


<meta charset="UTF-8" />
<meta name="keywords" content="" />
<script> addEventListener("load",
function () {
setTimeout(hideURLbar, 0);
}, false); function
hideURLbar() {
window.scrollTo(0, 1);
</script>
<link rel="stylesheet" href="css/bootstrap.css">
<link href="css/font-awesome.min.css" rel="stylesheet">
</head>
<body>
<div class="banner_w3lspvt he-codes">
<div class="banner-text pl-lg-5 pl-sm-4 ml-lg-3">
<h1 class="my-md-4 my-3">Thirumalaivasan Tours </h1>
<h2>Complete solution for travel agencies and tour operators.It is a web
based travel software that automates your Travel Business.
<a href="./user" class="btn button-style mt-5">User Login</a>
<a href="./admin" class="btn button-style mt-5">Admin Login</a>
</div>
<div class="wthree_copy_right text-right ml-auto mr-sm-5 mr-4">
<p class="text-li">
</div>
</div>
</body>
</html>
Admin Dashboard:

<html lang="en"><head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
32
<meta name="description" content="">
<meta name="author" content="">
<link rel="icon" type="image/png" sizes="16x16" href="../admin/settings/favi.png">
<title>Thirumalaivasan Travels</title>
<link href="css/lib/bootstrap/bootstrap.min.css" rel="stylesheet">
<link href="css/lib/calendar2/semantic.ui.min.css" rel="stylesheet">
<link href="css/lib/calendar2/pignose.calendar.min.css" rel="stylesheet">
<link href="css/lib/owl.carousel.min.css" rel="stylesheet">
<link href="css/lib/owl.theme.default.min.css" rel="stylesheet">
<link href="css/helper.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<link rel="stylesheet" href="css/popup_style.css">
</head>
<body class="fix-header fix-sidebar mini-sidebar">
<div class="preloader" style="display: none;">
<svg class="circular" viewBox="25 25 50 50">
<circle class="path" cx="50" cy="50" r="20" fill="none" stroke-width="2"
strokemiterlimit="10"></circle> </svg>
</div>
<div id="main-wrapper">
<div class="header">
<nav class="navbar top-navbar navbar-expand-md navbar-light">
<div class="navbar-header">
<a class="navbar-brand" href="index.php">
<span style="display: none;"><img src="../admin/settings/images.jpg" style="height:65px;
width: auto" alt="homepage" class="dark-logo"></span>
</a>
<div class="navbar-collapse">
<ul class="navbar-nav mr-auto mt-md-0">
<li class="nav-item"> <a class="nav-link nav-toggler hidden-md-up text-muted "
href="javascript:void(0)"><i class="mdi mdi-menu"></i></a> </li>
<li class="nav-item m-l-10"> <a class="nav-link sidebartoggler hidden-sm-down text-muted
" href="javascript:void(0)"><i class="ti-menu"></i></a> </li>
</ul>
<ul class="navbar-nav my-lg-0">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle text-muted " href="#" data-toggle="dropdown"
ariahaspopup="true" aria-expanded="false">
<img src="../admin/upload/InShot_20210128_080014558.jpg" width="40px"
height="40px">
</a>
<div class="dropdown-menu dropdown-menu-right animated zoomIn">
<ul class="dropdown-user">

33
<li><a href="update_profile.php"><i class="ti-user"></i> Profile</a></li>
<li><a href="change_password.php"><i class="ti-wallet"></i> Change
Password</a></li>
<li><a href="logout.php"><i class="fa fa-power-off"></i> Logout</a></li>
</ul>
</div>
</li>
</ul>
</div>
</nav>
</div>
</div>
<div class="left-sidebar" style="overflow: visible;">
<div class="slimScrollDiv" style="position: relative; overflow: visible; width: auto;
height: 100%;"><div class="scroll-sidebar" style="overflow: visible hidden; width: auto;
height: 100%;">
<nav class="sidebar-nav active">
<ul id="sidebarnav" class="in">
<li class="nav-devider"></li>
<li class="nav-label">Home</li>
<li class="active"> <a href="index.php" aria-expanded="false"
class="active"><i class="fa fa-tachometer"></i><span
class="hidemenu">Dashboard</span></a>
</li>
<li> <a class="#" href="traveller_details.php" aria-expanded="false"><i
class="fa fa-users"></i><span class="hide-menu">Travellers</span></a>
</li>
<li> <a class="#" href="booking_details.php" aria-expanded="false"><i
class="fa fa-book"></i><span class="hide-menu">Bookings</span></a>
</li>
<li> <a class="#" href="package_details.php" aria-expanded="false"><i class="fa fa-
suitcase"></i><span class="hide-menu">Package Management</span></a>
</li>
<li> <a class="#" href="tax_details.php" aria-expanded="false"><i class="fa
fa-credit-card"></i><span class="hide-menu">Tax Management</span></a>
</li>
<li> <a class="has-arrow" href="#" aria-expanded="false"><i class="fa
fadollar"></i><span class="hide-menu">Expense Management</span></a>
<ul aria-expanded="false" class="collapse">
<li><a href="expense_category_details.php">Expense Category</a></li>
<li><a href="expense_details.php">Add Expense</a></li>
</ul>
</li>
<li> <a class="#" href="finance_details.php" aria-expanded="false"><i
class="fa fa-money"></i><span class="hide-menu">Finance</span></a>

34
</li>
<li> <a class="#" href="currency_details.php" aria-expanded="false"><i
class="fa fa-inr"></i><span class="hide-menu">Currency</span></a>
</li>
<li> <a class="#" href="payment_details.php" aria-expanded="false"><i
class="fa fa-book"></i><span class="hide-menu">Payment Types </span></a>
</li>
<li> <a class="has-arrow " href="#" aria-expanded="false"><i class="fa
fasticky-note"></i><span class="hide-menu">Reports</span></a>
<ul aria-expanded="false" class="collapse">
<li><a href="expense_report.php">Expense Report</a></li>
<li><a href="booking_report.php">Booking Report</a></li>
</ul>
</li>
<li> <a class="has-arrow" href="#" aria-expanded="false"><i class="fa
facog"></i><span class="hide-menu">Settings</span></a>
<ul aria-expanded="false" class="collapse">
<li> <a href="settings.php" aria-expanded="false">Appearance
Settings</a>
</li>
<li><a href="email_setup.php">Email Settings</a></li>
<li><a href="sms_setting.php">Sms Settings</a></li>
</ul>
</li>
<li> <a class="#" href="myimages.php" aria-expanded="false"><i class="fa
fa-money"></i><span class="hide-menu">gallery</span></a>
</li>
<li> <a class="#" href="about.php" aria-expanded="false"><i class="fa
fa-infocircle"></i><span class="hide-menu">About</span></a>
</li>
</ul>
</nav>
</div><div class="slimScrollBar" style="background: rgb(220, 220, 220); width: 5px;
position: absolute; top: 0px; opacity: 0.4; display: none; border-radius: 7px; z-index: 99; left:
1px; height: 869px;"></div><div class="slimScrollRail" style="width: 5px; height: 100%;
position: absolute; top: 0px; display: none; border-radius: 7px; background: rgb(51, 51, 51);
opacity: 0.2; z-index: 90; left: 1px;"></div></div>
</div>
<div class="page-wrapper" style="min-height: 858px;">
<div class="row page-titles">
<div class="col-md-5 align-self-center">
<h3 class="text-primary">Dashboard</h3> </div>
<div class="col-md-7 align-self-center">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="javascript:void(0)">Home</a></li>

35
<li class="breadcrumb-item active">Dashboard</li>
</ol>
</div>
</div>
<div class="container-fluid">
<marquee scrollamount="4"><b>contact : 9443205546</b></marquee>
<div class="row">
<div class="col-md-3">
<div class="card p-30" style="background: #FF5370;">
<div class="media">
<div class="media-left meida media-middle">
<span><i class="fa fa-suitcase f-s-40 color-white"></i></span>
</div>
<div class="media-body media-text-right">
<h2 style="color:white">6</h2>
<p class="m-b-0" style="color:white">Total Packages</p>
</div>
</div>
</div>
</div>

<div class="col-md-3">
<div class="card p-30" style="background: #28a745;">
<div class="media">
<div class="media-left meida media-middle">
<span><i class="fa fa-users f-s-40 color-white"></i></span>
</div>
<div class="media-body media-text-right">
<h2 style="color:white">15</h2>
<p class="m-b-0" style="color:white">Total Travellers</p>
</div>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card p-30" style="background: #FFB64D;">
<div class="media">
<div class="media-left meida media-middle">
<span><i class="fa fa-dollar f-s-40 color-white"></i></span>
</div>
<div class="media-body media-text-right">
<h2 style="color:white">2</h2>
<p class="m-b-0" style="color:white">Total Currency</p>
</div>
</div>

36
</div>
</div>
<div class="col-md-3">
<div class="card p-30" style="background: #17a2b8;">
<div class="media">
<div class="media-left meida media-middle">
<span><i class="fa fa-book f-s-40 color-white"></i></span>
</div>
<div class="media-body media-text-right">
<h2 style="color:white">6</h2>
<p class="m-b-0" style="color:white">Total Bookings</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<div class="card">
<div class="card-body" style="height:50%">
<h4 class="card-title"><b><u>Current Month Expenses</u></b></h4>
<div class="table-responsive m-t-40">
<div id="example23_wrapper" class="dataTables_wrapper"><div class="dt-buttons"><a
class="dt-button buttons-copy buttons-html5" tabindex="0" aria-controls="example23"
href="#"><span>Copy</span></a><a class="dt-button buttons-csv buttons-html5"
tabindex="0" aria-controls="example23" href="#"><span>CSV</span></a><a
class="dtbutton buttons-excel buttons-html5" tabindex="0" aria-controls="example23"
href="#"><span>Excel</span></a><a class="dt-button buttons-pdf buttons-html5"
tabindex="0" aria-controls="example23" href="#"><span>PDF</span></a><a
class="dtbutton buttons-print" tabindex="0" aria-controls="example23"
href="#"><span>Print</span></a></div><div id="example23_filter"
class="dataTables_filter"><label>Search:<input type="search" class="" placeholder=""
ariacontrols="example23"></label></div><table id="example23" class="display nowrap table
table-hover table-striped table-bordered dataTable" cellspacing="0" width="100%"
role="grid" aria-describedby="example23_info" style="width: 100%;">
<thead>
<tr role="row"><th style="width: 51.6px;" class="sorting_asc" tabindex="0"
ariacontrols="example23" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Id:
activate to sort column descending">Id</th><th style="width: 91.6px;" class="sorting"
tabindex="0" aria-controls="example23" rowspan="1" colspan="1" aria-label="Expense For:
activate to sort column ascending">Expense For</th><th style="width: 91.6px;"
class="sorting" tabindex="0" aria-controls="example23" rowspan="1" colspan="1"
arialabel="Expense Name: activate to sort column ascending">Expense Name</th><th
37
style="width: 111.6px;" class="sorting" tabindex="0" aria-controls="example23"
rowspan="1" colspan="1" aria-label="Amount: activate to sort column
ascending">Amount</th><th style="width: 86.6px;" class="sorting" tabindex="0"
ariacontrols="example23" rowspan="1" colspan="1" aria-label="Created Date: activate to sort
column ascending">Created Date</th></tr>
</thead>
<tfoot>
<tr><th style="width:10px" rowspan="1" colspan="1">Id</th><th
style="width:10px" rowspan="1" colspan="1">Expense For</th><th
style="width:10px" rowspan="1" colspan="1">Expense Name</th><th
style="width:5px" rowspan="1" colspan="1">Amount</th><th
style="width:10px" rowspan="1" colspan="1">Created Date</th></tr>
</tfoot>
<tbody>
<tr role="row" class="odd">
<td class="sorting_1">1</td>
<td>Breakfast</td>
<td>Food</td>
<td>3000</td>
<td>2023-04-01</td>
</tr></tbody>
</table><div class="dataTables_info" id="example23_info" role="status"
arialive="polite">Showing 1 to 1 of 1 entries</div><div
class="dataTables_paginate paging_simple_numbers" id="example23_paginate"><a
class="paginate_button previous disabled" aria-controls="example23" data-dt-idx="0"
tabindex="0" id="example23_previous">Previous</a><span><a class="paginate_button
current" ariacontrols="example23" data-dt-idx="1" tabindex="0">1</a></span><a
class="paginate_button next disabled" aria-controls="example23" data-dt-idx="2"
tabindex="0" id="example23_next">Next</a></div></div>
</div>
</div>
</div>
</div>
<div class="col-lg-12">
<div class="card">
<div class="card-body" style="height:50%">
<h4 class="card-title"><b><u>Current Month Bookings</u></b></h4> <div
class="table-responsive m-t-40">
<table id="example4" class="display nowrap table table-hover table-striped table-bordered"
cellspacing="0" width="100%">
<thead>
<tr>
<th style="width:10px">Id</th>
<th style="width:10px">Cust Name</th>
<th style="width:5px">State</th>
38
<th style="width:10px">Package Name</th>
<th style="width:20px">From Date</th>
<th style="width:20px">To Date</th>
<th style="width:10px">Amt</th>
<th style="margin-left: 5px">Adv</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Id</th>
<th style="width:50px">Cust Name</th>
<th style="width:5px">State</th>
<th>Package Name</th>
<th>From Date</th>
<th>To Date</th>
<th style="width:5px">Amt</th>
<th style="margin-left: 5px">Adv</th>
</tr>
</tfoot>
<tbody>
<tr>
<td style="width:10px">1</td>
<td style="width:5px">Sarukesh</td>
<td style="width:5px">Goa</td>
<td style="width:10px">Friends Trip</td>
<td style="width:10px">2023-03-23</td>
<td style="width:10px">2023-03-31</td>
<td style="width:5px">40400</td>
<td style="width:5px">25000</td>
</tr>
<tr>
<td style="width:10px">2</td>
<td style="width:5px">Santhosh</td>
<td style="width:5px">Haryana</td>
<td style="width:10px">Businness</td>
<td style="width:10px">2023-03-16</td>
<td style="width:10px">2023-03-18</td>
<td style="width:5px">18180</td>
<td style="width:5px">1000</td>
</tr>
<tr>
<td style="width:10px">3</td>
<td style="width:5px">Nandhakumar</td>
<td style="width:5px">Maharashtra</td>
<td style="width:10px">Piligrim</td>

39
<td style="width:10px">2022-01-01</td>
<td style="width:10px">2022-01-08</td>
<td style="width:5px">135660</td>
<td style="width:5px">50000</td>
</tr>
<tr>
<td style="width:10px">4</td>
<td style="width:5px">Ajay</td>
<td style="width:5px">Bihar</td>
<td style="width:10px">Gpysy</td>
<td style="width:10px">2023-01-01</td>
<td style="width:10px">2023-02-17</td>
<td style="width:5px">80800</td>
<td style="width:5px">5000</td>
</tr>
<tr>
<td style="width:10px">5</td>
<td style="width:5px">Venket</td>
<td style="width:5px">Haryana</td>
<td style="width:10px">Friends Trip</td>
<td style="width:10px">2021-02-25</td>
<td style="width:10px">2021-03-01</td>
<td style="width:5px">20200</td>
<td style="width:5px">0</td>
</tr>
<td style="width:10px">6</td>
<td style="width:5px">Rishi</td>
<td style="width:5px">Delhi</td>
<td style="width:10px">Family</td>
<td style="width:10px">2019-07-01</td>
<td style="width:10px">2019-07-10</td>
<td style="width:5px">90900</td>
<td style="width:5px">20000</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<div class="card">
<div class="card-body" style="height:50%">

40
<h4 class="card-title"><b><u>Last 8 Days Bookings</u></b></h4>
<div class="table-responsive m-t-40">
<table id="example3" class="display nowrap table table-hover table-striped table-bordered"
cellspacing="0" width="100%">
<thead>
<tr>
<th style="width:10px">Id</th>
<th style="width:10px">Cust Name</th>
<th style="width:5px">State</th>
<th style="width:10px">Package Name</th>
<th style="width:20px">From Date</th>
<th style="width:20px">To Date</th>
<th style="width:10px">Amt</th>
<th style="margin-left: 5px">Adv</th>
</tr>
</thead>
<tfoot>
<tr>
<th style="width:10px">Id</th>
<th style="width:10px">Cust Name</th>
<th style="width:5px">State</th>
<th style="width:10px">Package Name</th>
<th style="width:20px">From Date</th>
<th style="width:20px">To Date</th>
<th style="width:10px">Amt</th>
<th style="margin-left: 5px">Adv</th>
</tr>
</tfoot>
<tbody>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="col-lg-12">
<div class="card">
<div class="card-body" style="height:50%">
<h4 class="card-title"><b><u>Current Month Tax Deduction</u></b></h4>
<div class="table-responsive m-t-40">
<table id="example2" class="display nowrap table table-hover table-striped table-bordered"
cellspacing="0" width="100%">
<thead>
<tr>
<th style="width:10px">Id</th>

41
<th style="width:10px">Name</th>
<th style="width:10px">Basic Amount</th>
<th style="width:5px">Tax Amount</th>
</tr>
</thead>
<tfoot>
<tr>
<th style="width:10px">Id</th>
<th style="width:10px">Name</th>
<th style="width:10px">Basic Amount</th>
<th style="width:5px">Tax Amount</th>
</tr>
</tfoot>
<tbody>
<tr>
<td>1</td>
<td>Sarukesh</td>
<td>40000</td>
<td>400</td>
<tr>
<td>Santhosh</td>
<td>18000</td>
<td>180</td>
</tr>
<tr>
<td>3</td>
<td>Nandhakumar</td>
<td>133000</td>
<td>2660</td>
</tr>
<tr>
<td>4</td>
<td>Ajay</td>
<td>80000</td>
<td>800</td>
</tr>
<tr>
<td>5</td>
<td>Venket</td>
<td>20000</td>
<td>200</td>
</tr>
<tr>
<td>6</td>
<td>Rishi</td>

42
<td>90000</td>
<td>900</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-12">
<div class="form-actions">
</div>
<div class="table-responsive m-t-40">
<table id="example1" class="display nowrap table table-hover table-striped table-bordered
dataTable" cellspacing="0" width="100%>
<tbody>
</tbody>
</table>
</div>
</div>
</div>
<footer class="footer text-center"><strong><mark> Contact @ - <a
href="www.ThirumalaivasanTravels.com target=" _blank"="" style="color: red;"
"float:left"="">www.ThirumalaivasanTravels.com </a></mark></strong><a
href="www.ThirumalaivasanTravels.com target=" _blank"="" style="color: red;"
"float:left"="">
<script src="js/lib/jquery/jquery.min.js"></script>
<script src="js/lib/bootstrap/js/popper.min.js"></script>
<script src="js/lib/bootstrap/js/bootstrap.min.js"></script>
<script src="js/jquery.slimscroll.js"></script>
<script src="js/sidebarmenu.js"></script>
<script src="js/lib/sticky-kit-master/dist/sticky-kit.min.js"></script>
<script src="js/lib/form-validation/jquery.validate.min.js"></script>
<script src="js/lib/morris-chart/raphael-min.js"></script>
<script src="js/lib/morris-chart/morris.js"></script>
<script src="js/lib/morris-chart/dashboard1-init.js"></script>
<script src="js/lib/calendar-2/moment.latest.min.js"></script>
<script src="js/lib/calendar-2/semantic.ui.min.js"></script>
<script src="js/lib/calendar-2/prism.min.js"></script>
<script src="js/lib/calendar-2/pignose.calendar.min.js"></script>
<script src="js/lib/calendar-2/pignose.init.js"></script>
<script src="js/lib/owl-carousel/owl.carousel.min.js"></script>
<script src="js/lib/owl-carousel/owl.carousel-init.js"></script>
43
<script src="js/scripts.js"></script>
<script src="js/custom.min.js"></script>
<script src="js/custom.min.js"></script>
<script src="js/lib/datatables/datatables.min.js"></script>
<script
src="js/lib/datatables/cdn.datatables.net/buttons/1.2.2/js/dataTables.buttons.min.js"></script>
<script
src="js/lib/datatables/cdn.datatables.net/buttons/1.2.2/js/buttons.flash.min.js"></script>
<script
src="js/lib/datatables/cdnjs.cloudflare.com/ajax/libs/jszip/2.5.0/jszip.min.js"></script>
<script
src="js/lib/datatables/cdn.rawgit.com/bpampuch/pdfmake/0.1.18/build/pdfmake.min.js"></scr
ipt> <script
src="js/lib/datatables/cdn.rawgit.com/bpampuch/pdfmake/0.1.18/build/vfs_fonts.js"></script>
<script
src="js/lib/datatables/cdn.datatables.net/buttons/1.2.2/js/buttons.html5.min.js"></script>
<script
src="js/lib/datatables/cdn.datatables.net/buttons/1.2.2/js/buttons.print.min.js"></script>
<script src="js/lib/datatables/datatables-init.js"></script>
</a></footer></body></html>

User change password:

<?php
require_once('check_login.php');
?>
<?php include"header.php"?>
<!-- Author Name: Kumaran A. -->
<?php include"sidebar.php"?>
<?php
include('config.php');
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("SELECT * FROM travellers where id='".$_SESSION['id']."'");
$stmt->execute();
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC); $data=$stmt-
>fetch(PDO::FETCH_ASSOC);
$db_pass = $data['password'];
if(isset($_POST["submit"]))
{
$old = hash('sha256',$_POST['old_password']);
$pass_new = hash('sha256', $_POST['new_password']);
$confirm_new = hash('sha256', $_POST['confirm_password']);

44
function createSalt()
{
return '2123293dsj2hu2nikhiljdsd';
}
$salt = createSalt();
$old_pass = hash('sha256', $salt . $old);
$new_pass = hash('sha256', $salt . $pass_new); $confirm
= hash('sha256', $salt . $confirm_new); if($db_pass!
=$old_pass){ ?>
<div class="popup popup--icon -error js_error-popup popup--visible">
<div class="popup__background"></div>
<div class="popup__content">
<h3 class="popup__content__title">
Error
</h1>
<h2>Old Password is not Matched</h2>
<p>
<?php echo "<script>
setTimeout(\"location.href='change_password.php'\", 2000);
</script>"?>
</p>
</div>
</div>

<?php } else if($new_pass!=$confirm){ ?>


<div class="popup popup--icon -error js_error-popup popup--visible">
<div class="popup__background"></div>
<div class="popup__content">
<h3 class="popup__content__title">
Error
</h1>
<h2>New Password and Confirm Password Not Matched</h2>
<p>
<?php echo "<script>
setTimeout(\"location.href='change_password.php'\", 2000);
</script>"?>
</p>
</div>
</div>
<?php } else {
$abc = "UPDATE travellers SET `password`='$confirm' where id =
'".$_SESSION['id']."'";
$stmt = $conn->prepare($abc);
$stmt->execute();
?>
45
<div class="popup popup--icon -success js_success-popup popup--visible">
<div class="popup__background"></div>
<div class="popup__content">
<h3 class="popup__content__title">
Success </h3>
</h1>
<h2>Password Change Successfully</h2>
<p>
<?php echo "<script>setTimeout(\"location.href =
'change_password.php';\",1500);</script>"; ?>
</p>
</div>
</div>

<?php

}
}
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}

$conn = null;

?> <div class="page-wrapper">

<div class="row page-titles">


<div class="col-md-5 align-self-center">
<h3 class="text-primary">Change Password</h3> </div>
<div class="col-md-7 align-self-center">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="javascript:void(0)">Change
Password</a></li>
<li class="breadcrumb-item active">Dashboard</li>
</ol>
</div>
</div>
<div class="container-fluid">

<div class="row">
<div class="col-lg-12">
<div class="card card-outline-primary">

46
<div class="card-body">
<form method="post">
<div class="form-body">
<h3 class="card-title m-t-15">Change Password</h3>
<hr>
<div class="row p-t-20">
<div class="col-md-6">
<div class="form-group">
<label class="control-label">Old Password</label>
<input type="password" class="form-control" id="val-
password" name="old_password" placeholder="Enter your old password.." required>
</div>
</div>

<div class="col-md-6">
<div class="form-group">
<label class="control-label">New Password</label>
<input type="password" class="form-control" id="val-
confirmpassword" name="new_password" placeholder="..Enter your New password!"
required>
<div class="row p-t-20">
<div class="col-md-6">
<div class="form-group">
<label class="control-label">Confirm Password</label>
<input type="password" class="form-control" id="val-confirmpassword"
name="confirm_password" placeholder="..and confirm it!" required>
</div>
<div class="form-actions">
<!-- Author Name: Kumaran A. -->
<button type="submit" class="btn btn-success" name="submit"> <i
class="fa fa-check" ></i> Update</button>
<a href="change_password.php"><button type="button" class="btn
btn-inverse">Cancel</button></a>
</div>
</form>
</div> </div>
</div>
</div>
<?php include"footer.php"?>
SQL Code:
CREATE TABLE `admin` (
`id` int(11) NOT NULL,
`uname` varchar(200) NOT NULL,
`email` varchar(200) NOT NULL,
47
`password` varchar(200) NOT NULL,
`fname` varchar(200) NOT NULL,
`lname` varchar(200) NOT NULL,
`contact` varchar(200) NOT NULL,
`address` text NOT NULL,
`file` varchar(200) NOT NULL,
`cdate` date NOT NULL,
`group_id` int(11) NOT NULL,
`total_amount` int(11) NOT NULL,
`delete_status` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `admin` (`id`, `uname`, `email`, `password`, `fname`, `lname`, `contact`,
`address`, `file`, `cdate`, `group_id`, `total_amount`, `delete_status`) VALUES
(2, 'Mayuri', 'mayuri.infospace@gmail.com',
'aa7f019c326413d5b8bcad4314228bcd33ef557f5d81c7cc977f7728156f4357', 'Mayuri', 'K',
'+919405716239', 'Pune', '133.jpeg', '2018-04-30', 1, 1000, 0);
-- --------------------------------------------------------
CREATE TABLE `booking` (
`id` int(11) NOT NULL,
`traveller_id` varchar(200) NOT NULL,
`state_id` varchar(200) NOT NULL,
`package_id` varchar(200) NOT NULL,
`no_of_adults` int(11) NOT NULL,
`no_of_children` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
`total_amount` int(11) NOT NULL,
`adv_amount` varchar(200) NOT NULL,
`total` int(11) NOT NULL,
`tax` int(11) NOT NULL,
`created_date` date NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
48
CREATE TABLE `booking_payment` (
`id` int(11) NOT NULL,
`advance_amount` int(11) NOT NULL,
`date` date NOT NULL,
`note` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `booking_report` (
`id` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `currency` (
`id` int(11) NOT NULL,
`curr_code` varchar(200) NOT NULL,
`curr_symbol` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `demo` (
`id` int(11) NOT NULL,
`photo` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `email_setup` (
`id` int(11) NOT NULL,
`name` varchar(50) NOT NULL,
`mail_driver_host` varchar(50) NOT NULL,
`mail_port` int(50) NOT NULL,
`mail_username` varchar(50) NOT NULL,
`mail_password` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
49
INSERT INTO `email_setup` (`id`, `name`, `mail_driver_host`, `mail_port`, `mail_username`,
`mail_password`) VALUES
(1, 'Mayuri K.', 'mail.gmail.com', 587, 'mayuri.infospace@gmail.com', 'programmers324'); --
--------------------------------------------------------
CREATE TABLE `expense` (
`id` int(11) NOT NULL,
`expense_for` varchar(200) NOT NULL,
`expense_name` varchar(200) NOT NULL,
`amount` int(11) NOT NULL,
`created_date` date NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `expense_category` (
`id` int(11) NOT NULL,
`expense_name` varchar(200) NOT NULL,
`status` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `packages` (
`id` int(11) NOT NULL,
`pname` varchar(200) NOT NULL,
`price_adult` int(11) NOT NULL,
`price_children` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `payment` (
`id` int(11) NOT NULL,
`booking_id` int(11) NOT NULL,
`amount` int(11) NOT NULL,
`paid_amount` int(11) NOT NULL,
`pending_amount` int(11) NOT NULL,
`insert_amount` int(11) NOT NULL,

50
`payment_type` varchar(200) NOT NULL,
`cdate` varchar(200) NOT NULL,
`due_date` date NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `payment_type` (
`id` int(11) NOT NULL,
`payment_type` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------
CREATE TABLE `register` (
`id` int(11) NOT NULL,
`uname` varchar(200) NOT NULL,
`email` varchar(200) NOT NULL,
`password` varchar(200) NOT NULL,
`contact` varchar(10) NOT NULL,
`photo` varchar(200) NOT NULL,
`docs` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `settings` (
`id` int(11) NOT NULL,
`title` varchar(200) NOT NULL,
`f_image` varchar(200) NOT NULL,
`logo_image` varchar(200) NOT NULL,
`login_image` varchar(200) NOT NULL,
`currency` varchar(200) NOT NULL,
`footer` varchar(200) NOT NULL,
`address` varchar(200) NOT NULL,
`add1` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
51
INSERT INTO `settings` (`id`, `title`, `f_image`, `logo_image`, `login_image`, `currency`,
`footer`, `address`, `add1`) VALUES
(2, 'Tours and Travels', 'favi.png', 'logo_by NB.png', 'logo_by NB.png', '11', 'Nikhil B', 'Nashik,
India', 'Maharashtra 422002');
-- --------------------------------------------------------
CREATE TABLE `sms_setting` (
`id` int(11) NOT NULL,
`uname` varchar(200) NOT NULL,
`password` varchar(200) NOT NULL,
`sender_id` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------

CREATE TABLE `tax` (


`id` int(11) NOT NULL,
`tname` varchar(200) NOT NULL,
`percent` varchar(200) NOT NULL,
`short_code` varchar(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-- --------------------------------------------------------
CREATE TABLE `travellers` (
`id` int(11) NOT NULL,
`name` varchar(200) NOT NULL,
`email` varchar(200) NOT NULL,
`password` varchar(200) NOT NULL,
`confirm` varchar(200) NOT NULL,
`state_name` varchar(200) NOT NULL,
`mobile` varchar(200) NOT NULL,
`address` varchar(200) NOT NULL,
`photo` varchar(200) NOT NULL,
`status` varchar(200) NOT NULL DEFAULT 'register'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

52
53
5.2 SCREEN SHOTS

Login Page

Description:

1. Create the admin login page: Develop a login page that allows only authorized users to log
in using a unique username and password. You can also add additional security measures,
such as two-factor authentication, to ensure the login process is secure.
2. Implement security measures: To ensure that the admin login system is secure, you should
implement various security measures, such as encryption of user data, regular password
resets, and monitoring of user activity.

54
Admin Dashboard :

Description:

1. Determine the data to display: Before designing your Admin dashboard, you need to
determine what information you want to display.
2. Design the dashboard interface: After choosing a layout, you can start designing the
dashboard interface. You can use various design elements, such as colors, icons, and graphs,
to make the dashboard visually appealing and easy to navigate.

55
Add Bookings:

Description:

1. Determine the booking details to display: Before creating the booking record system, you
need to determine what information you want to display about each booking. This could
include the customer’s name, booking date, time, location, package details, and any other
relevant information.

2. Develop the booking listing page: Create a page that lists all the bookings made by
customers and their details. This page should be user-friendly and easy to navigate, with
clear instructions and search filters to help users find what they are looking for.

Add Package:
56
Description

1. Create the package form: Develop a form that allows Admin users to enter the package
details. The form should be user-friendly and easy to navigate, with clear instructions and
error messages if the user enters incorrect data.

2. Develop the package creation process: Once a user has entered the package details, you need
to create a process that creates the new package in your database. You can also add
additional features, such as package image uploads or integration with a payment gateway,
depending on the requirements of your project.

3. Implement package management functionality: After a package has been created, you need
to develop functionality that allows Admin users to manage the packages. This could include
editing, deleting, or updating package details.

Add Payments Type:

57
Booking Details:

User Dashboard:

58
Payment History:

User profile update:

59
User bookings:

6. CONCLUSION

60
It has been a great pleasure for me to work on this exciting and challenging
project. This project proved good for me as it provided practical knowledge of not
only programming in PHP and MYSQL, and working with XAMP as “Tour
Management System”. It also provides knowledge about the PHP, MSSQL
application used in developing windows form application that will be great demand in
future. This will provide better opportunities and guidance in future in developing
projects independently.

Benefits

The project is identified by the merits of the system offered to the user. The merits of this
project are as follows: -

➢ This project offers user to enter the data through simple and interactive forms. This is
very helpful for the user to enter the desired information through so much simplicity.

➢ The user is mainly more concerned about the validity of the data, whatever he is
entering. There are checks on every stage of any new creation, data entry or updating so that
the user cannot enter the invalid data, which can create problems at later date.

➢ Sometimes the user finds in the later stages of using project that he needs to update
some of the information that he entered earlier. There are options for him by which he can
update the records. Moreover, there is restriction for his that he cannot change the primary
data field. This keeps the validity of the data to longer extent.

➢ User is provided the option of monitoring the records he entered earlier. He can see
the desired records with the variety of options provided by him.

➢ From every part of the project the user is provided with the links through framing so
that he can go from one option of the project to other as per the requirement.
This is bound to be simple and very friendly as per the user is concerned. That is, we can say
that the project is user friendly which is one of the primary concerns of any good project.
➢ Data storage and retrieval will become faster and easier to maintain because data is
stored in a systematic manner and in a single database.

➢ Decision making process would be greatly enhanced because of faster processing of


information since data collection from information available on computer takes much less
time than manual system.
61
➢ Allocating of sample results becomes much faster because at a time the user can see
the records of last years.

➢ Easier and faster data transfer through latest technology associated with the computer
and communication.

➢ Through these features it will increase the efficiency, accuracy and transparency.

Limitations

➢ The size of the database increases day-by-day, increasing the load on the database
back up and data maintenance activity.

➢ Training for simple computer operations is necessary for the users working on the
system.

7. SCOPE FOR FURTHER ENHANCEMENTS

Every application has its own merits and demerits. The project has covered almost all
the requirements. Further requirements and improvements can easily be done since the
coding is mainly structured or modular in nature. Changing the existing modules adding
new modules can append improvements. The project has a very vast scope in future. The
project can be implemented on intranet future.

62
➢ Can add more modules

➢ Can change the tools used according to the user requirements

➢ Can add more type of graph design

➢ Can add these modules to the present ongoing project

➢ Can add, design and change various types of reports

➢ Can add, design and change various types of reports

8. BIBLIOGRAPHY

8.1 Reference Books

1. The Joy of PHP Programming: A Beginner’s Guide – by Alan Forbes.

2. PHP & MySQL Novice to Ninja – by Kevin Yank,2nd Edition.


63
3. "PHP and MySQL for Dynamic Web Sites: Visual QuickPro Guide" by Ullman.

8.2 Reference Books

1. https://www.phptutorial.net/php-tutorial/php-functions/

2. https://www.tutorialrepublic.com/php-tutorial/php-mysql-connect.php

3. https://www.tutorialrepublic.com/css-tutorial/

4. https://www.mysqltutorial.org/databases

64

You might also like