AJU191422
AJU191422
JHARKHAND
2019-2022
Assistant Professor
&
PRESENTED BY
(AJU/191422)
A Project Report on
Identification of the drawbacks of the existing system leads to the designing of computerized
system that will be compatible to the existing system with the system which is more users friendly
and more GUI oriented. We can improve the efficiency of the system, thus overcome the
drawbacks of the existing system.
o High security
o Data consistency
o Easy to handle
1.3 Objective……………………………………………………………………..3
2, 2 Proposed System……………………………………………………………5
LEVEL -0……………………………………………………………18
LEVEL-1……………………………………………………………19
LEVEL-2……………………………………………………………21
Chapter 3: System Design……………………………………………….26
Module Division…………………………………………………………………
3.2Advantages……………………………………………………………………29
3.3Performance requirements……………………………………………………29
3.4Implementation ………………………………………………………………29
3.9UML Diagrams……………………………………………………………….31
3.10ER Diagrams………………………………………………………………..36
3.11Database Design…………………………………………………………….37
4.2Testing Approach……………………………………………………………224
4.3Use Case…………………………………………………………………….226
Tourism has turned out to be an economic booster contributing to the economic development of
many countries over the last few decades. People see holidays as a necessity, and not as luxury in
the present scenario. Tourism calls for coordination and cooperation between travel agents, tour
operators, and tourists. Tourism has a few major elements − destinations, attractions, sites,
accommodation, and all ancillary services.
Tour Management system is a dynamic website for tourism business. It is dynamic and responsive
website. It is also called travel technology solutions for agencies and tour operations. Nearly
everyone goes on vacation for this a “Travel and Tourism Management system” would play a vital
role in planning the perfect trip. The tourism management system that allows the user of the system
access all the details such as location, events, trips, accommodation’s, and etc. The purposed
system maintains centralized repository to make necessary travel arraignments and to retrieve
information easily. Tourists are more attractive for cultural diversity of the worlds.
Page | 1
1.1PURPOSE OF THE PROJEECT
The purpose is to build a system that performs all operations related to traveling, booking,
sightseeing, etc. This system connects customers and agents directly, provides a feedback
mechanism for tourists maintains and controls the database of tourists’ information, and gives a
variety of travel services.
• Benefits of “LOCAL TOURISM” Is that will encourage and give empowerment to the
locals from which they can earn.
• Other benefits are that people can know about the local culture and more about that place.
• The best thing about our project is that our client does not need to search for any hotel or
accommodation they will directly get into their package.
The group was then divided into two pairs that would work on parts of the code. We kept in touch
With each other and whenever we had difficulties, we asked each other question. On some
Occasions, we had to pretend we were the customer so as to try to figure out some of the things
that User would desire, such as the friendliness of the user interface and ease of navigation through
the Software. We also created a blog so that we could communicate with each other, and also so
that our When we discovered that we were behind schedule, we met to create a new time-line. We
Page | 2
were behind schedule mostly because of our different engagements in collage work and other
personal Issues. Fortunately for the team, we were able to stick to the new time-line and the project
was Completed in due time. After the major part of the code was completed, we went ahead to
lace the code, that is, adding Exception handlers which will make the software more robust. We
avoided this at the beginning Because we did not want to get confused with too many lines
of code. The version of the software that has been released can still be improved depending on
user response. So far, we have succeeded in completing the desired goal of from the user stories
given to us. The Beta software has been released about three times and we have been able to get
good ideas from the various users on how to improve the functionality, reliability and robustness
of the software.
1.3 OBJECTIVE:
The objective of the project is to develop a system that automates the processes and
activities of a travel and tourism agency.
The purpose is to design a system using which one can perform all operations related to
traveling and sight-seeing.
Page | 3
Chapter 2
System Analysis
System analysis in software engineering is, therefore, the activities that comprise software
engineering as a process in the production of software. It is the software process. This process has
4 main activities. They are:
Software specification
Software design and implementation
Software validation
Software evolution
As we can see, these activities are similar to those within systems analysis and the design of
software. Depending on the methodology used, the activities can be arranged differently. They are
arranged sequentially, for example, in the well-known Waterfall Model, while in the Incremental
Development model they are inter-related.
In the present system a customer has to approach various agencies to find details of places
and to book tickets.
This often requires a lot of time and effort.
A customer may not get the desired information from these offices and often the customer
may be misguided.
It is tedious for a customer to plan a particular journey and have it executed properly.
Page | 4
inadequate in providing information and advice to the agencies and customers about tour plans.
Most of the time agencies have to rely on local information sources and their own experience
regarding time and cost. Through a phone call, they have to get information. There are some
problems that exist in traditional systems, and those are given as follows:
● There will be many users visiting the portal, and hence we require a reliable and robust frontend
that can withhold the users on our site.
The system allows one to easily access the relevant information and make necessary travel
arrangements.
Users can decide about places they want to visit and make bookings online for travel and
accommodation.
Page | 5
6. Signup: New users give their completed personal details, address, email, and phone
number for registration.
7. Login: The user enters their username and password for login.
8. Holiday packages: Users can then enter the date of journey and return; they can also select
the packages, number of rooms, etc., and can choose the packages as Deluxe, Premium,
Super deluxe.
9. Best deals: Users can get the best deals with discount prices based on their preferences
available during the festival season.
10. Feedback: The users can give their input.
11. About us: The user can get information about the travel agency
12. Contact us: It displays the contact details.
The ‘operational or generic user interface’ helps the end users of the system in
transactions through the existing data and required services. The operational user
interface also helps the ordinary users in managing their own information in a customized
manner as per the included flexibilities.
Page | 6
2.4 FEASIBILITY STUDY:
FEASIBILITY REPORT:
Preliminary investigation examines project feasibility; the likelihood the system will be
useful to the organization. The main objective of the feasibility study is to test the Technical,
Operational and Economical feasibility for adding new modules and debugging old running
system. All systems are feasible if they are given unlimited resources and infinite time. There are
aspects in the feasibility study portion of the preliminary investigation:
Technical Feasibility
Operation Feasibility
Economic Feasibility
The technical issue usually raised during the feasibility stage of the investigation includes the
following:
Proposed projects are beneficial only if they can be turned out into information systems,
which will meet the organization’s operating requirements. Operational feasibility aspects of the
Page | 7
project are to be taken as an important part of the project implementation. Some of the important
issues raised are to test the operational feasibility of a project includes the following: -
The well-planned design would ensure the optimal utilization of the computer resources and would
help in the improvement of performance status.
A system can be developed technically and that will be used if installed must still be a good
investment for the organization. In the economic feasibility, the development cost in creating the
system is evaluated against the ultimate benefit derived from the new systems. Financial benefits
must equal or exceed the costs. The system is economically feasible. It does not require any
additional hardware or software.
Page | 8
2.9 FUNCTIONAL REQUIREMENTS:
Requirement analysis is very critical process that enables the success of a system or software
project to be assessed. Requirements are generally split into two types: Functional and
Nonfunctional requirements.
Functional requirements: These are the requirements that the end user specifically demand as basic
facilities that the system should offer. All these functionalities need to be nessarialy incorporated
into the system as a part of the contract. These are represented or stated in the form of input to be
given to the system, the operation performed and the output expected. They are basically the
requirements stated by the user which one can see directly in the final product, unlike the non-
functional requirements.
Number of Modules
After careful analysis the system has been identified to have the following modules:
1. Administrator module
2. User(Traveler) module
3. Guest user
1. ADMINISTRATOR MODULE:
This module provides administrator related functionality. Administrator manages all information
and has access rights to add, delete, edit and view the data related to places, travels, routes,
bookings, Enquiries etc.
Packages—Admin will create the packages and Manage the packages (Create, Update, delete)
Booking- Admin will responsible for manage booking. Admin can confirm and cancel a booking
of traveler.
Page | 9
Manage issues/ Complaints—Admin can take action on any issue /complaint rose by user
(traveller) and Put remark.
Manage pages- Admin can edit the info of all pages that are display on the website,
Dashboard- Here admin can view all count of booking, issues, Enquiries and Users.
Sign in- Here user can login with valid username and password.
Tour history-After login user can book any tour that will show in Tour history. User can cancel
their booking before 24 hours of travelling.
Write-use—here user can raise any issue related to booking, Cancelation etc.
3. Guest MODULE:
Guest user can visit the website and view the all content of website. Guest user cans also Enquiry.
Page | 10
2.10 Hardware Configuration
RAM 512 MB
Hard disk 10 GB
Client Side:
Web Browser
Google Chrome or any compatible browser
Operating System
Server Side:
Page | 11
USE OF PHP
PHP is a general-purpose scripting language that is especially suited for web development. PHP
generally runs on a web server, taking PHP code as its input and creating web pages as output. It
can also be used for command-line scripting and client-side GUI applications. PHP can be
deployed on most web servers, many operating systems and platforms, and can be used with many
relational database management systems. It is available free of charge, and the PHP Group
provides the complete source code for users to build, customize and extend for their own use.
USE OF MYSQL
What is a database? Quite simply, it’s an organized collection of data. A database management
system (DBMS) such as Access, FileMaker Pro, Oracle or SQL Server provides you with the
software tools you need to organize that data in a flexible manner. It includes facilities to add,
modify or delete data from the database, ask questions (or queries) about the data stored in the
database and produce reports summarizing selected contents.
MySQL is a multithreaded, multi-user SQL database management system (DBMS). The basic
program runs as a server providing multi-user access to a number of databases. Originally financed
in a similar fashion to the Jobs model, MySQL was owned and sponsored by a single for-profit
firm, the Swedish company MySQLAB now a subsidiary of Sun Microsystem , which holds the
copyright to most of the codebase. The project’s source code is available under terms of the GNU
General Public License, as well as under a variety of proprietary agreements.
MySQL is a database. The data in MySQL is stored in database objects called tables. A table is a
collection of related data entries and it consists of columns and rows. Databases are useful when
storing information categorically. A company may have a database with the following tables:
“Employees”, “Products”, “Customers” and “Orders”.
Page | 12
USE OF HTML
Hypertext Markup Language, or HTML, is a programming language used to describe the structure
of information on a webpage. Together, HTML, CSS, and JavaScript make up the
essential building blocks of websites worldwide, with CSS controlling a page’s appearance
and JavaScript programming its functionality. You can think of the HTML document as providing
the bones of a webpage, while CSS provides the skin, and JavaScript provides the brains.
A webpage can contain headings, paragraphs, images, videos, and many other types of data. Front-
end developers use the HTML element to specify what kind of information each item on a
webpage contains — for instance, the “p” HTML element indicates a paragraph. Developers also
write HTML language code to specify how different items relate to one another in
the page’s overall structure or document structure.
Every website you open in your web browser, from social networks to music services, uses HTML.
A look under the hood of any website would reveal a basic HTML code page, written with an
HTML structure editor, providing structure for all the page’s components, including its header
element, footer element, main content, and other inline elements.
In Macromedia Dreamweaver 8, you can use CSS styles to lay out your page. You can either
insert div tags manually or apply CSS positioning styles to them, or you can use Dreamweaver
layers to create your layout. A layer in Dreamweaver is an HTML page element—specifically, a
div tag, or any other tag—that has an absolute position assigned to it. Whether you use CSS,
tables, or frames to lay out your pages, Dreamweaver has rulers and grids for visual guidance in
your layout. Dreamweaver also has a tracing image feature, which you can use to re-create a page
design that was created in a graphics application.
USE of phpMAdmin
Page | 13
PhpMyAdmin is an open source tool written in PHP intended to handle the administration of
MySQL over the World Wide Web. PhpMyAdmin supports a wide range of operations with
MySQL. Currently it can create and drop databases, create/drop/alter tables, and delete/edit/add
fields, execute any SQL statement, manage users and permissions, and manage keys on fields.
While you still have the ability to directly execute any SQL statement. PhpMyAdmin can manage
a whole MySQL server (needs a super-user) as well as a single database. To accomplish the latter
you’ll need a properly set up MySQL user who can read/write only the desired database. It’s up
to you to look up the appropriate part in the MySQL manual.
The original version of Apache was written for UNIX, but there are now versions that run under
OS/ 2, Windows and other platforms. The name is a tribute to the Native American Apache Indian
tribe, a tribe well known for its endurance and skill in warfare. A common misunderstanding is
that it was called Apache because it was developed from existing NCSA code plus various patches,
hence the name a patchy server, or Apache server.
Apache consistently rates as the world’s most popular Web server according to analyst surveys.
Apache has attracted so much interest because it is full-featured, reliable, and free. Originally
developed for UNIX™ operating systems, Apache has been updated to run on Windows, OS/2,
and other platforms. One aspect of Apache that some site administrators find confusing —
especially those unfamiliar with UNIX-style software — is its configuration scheme. Instead of
Page | 14
using a point-and-click graphic user interface (GUI) or Windows Registry keys as most other
XAMPP Control Panel is a management tool that offers to supervise the actions of individual
components of XAMPP. It controls each component of the text server. The user can initiate or halt
discrete modules by operating upon the buttons below the "Actions" column. Control panels
efficiently manage all the components of the XAMPP package.
One can use the Control Panel to determine whether Apache, MySQL, Mercury, etc. are currently
in function or not. The development environment can only be used when Apache and MySQL are
in running state. The XAMPP Control Panel icon exists in the system tray. It is an orange-colored
icon that is visible when Panel is in running state
Razorpay is the in-between mode of payment which transacts the payments to the other banks
which are connected and available in all kinds of banks, credit, and debit, wallets (Netflix, Airtel,
Swiggy, and others).
Razorpay subscription also brings with it the useful feature of UPI autopsy, nowadays transactions
via cards are decreasing day by day due to digital payments. It helps in registered business also
where payments get easier for others from different apps. After the pandemic and big break from
the direct interaction, people have started to get more comfortable in digital payments where all
the business has got a lot of upstream.
This platform of digital payment makes a link between many other apps in which one of the levels
is crossed by Razorpay. Apart from the payment gateway, it provides more other benefits to the
customers like Razorpay provides where it provides the merchant to automate bank transfer,
invoices, and the account for the payroll.
Page | 15
Razorpay capital provides a loan for the business to avoid your cash flow. It benefits all the small
business and cashier flow for the people. It helps businesses to make their market place and make
available working capital rolls. Now if we come how does it work?
Razorpay makes payment convenient for others through different transaction mode if we discuss
in normal terms as the Razorpay app first transact the money from the authorised bank with all
details after that it provides that amount to the digital marketing app so when the user starts online
payment the marketing app get the money from the Razorpay app this how digitally it makes flow.
Now Razorpay provides service of loans also for small businesses to grow and lend money to
avoid the cashier flow, they help in small business-like freelancers, entrepreneurs, enterprises and
other businesses.
Mostly this Razorpay is freely used in India and companies like India Mart intermesh limited,
Ample technologies, Brio technologies private limited, Savari car rentals Private limited. While
using a Razorpay account a person can receive transactions from the customers online to activate
your Razorpay account. Following are the processes that have to be followed to activate your
account in Razorpay. It just takes a few minutes from your clock to enjoy your Hassle free
transaction.
Page | 16
2.12 DFD
Introduction to DFD
A Data Flow Diagram (DFD) is a traditional visual representation of the information flows within
a system. A neat and clear DFD can depict the right amount of the system requirement graphically.
It can be manual, automated, or a combination of both. It shows how data centers and leaves the
system, what changes the information, and where data is stored. The objective of a DFD is to show
the scope and boundaries of a system as a whole. It may be used as a communication tool between
a system analyst and any person who plays a part in the order that acts as a starting point for
redesigning a system. The DFD is also called as a data flow graph or bubble chart.
The DFD may be used to perform a system or software at any level of abstraction. In fact, DFDs
may be partitioned into levels that represent increasing information flow and functional detail.
Levels in DFD are numbered 0, 1, 2 or beyond. Here, we will see primarily three levels in the data
flow diagram, which are: 0-level DFD, 1-level DFD, and 2-level DFD.
SYMBOLS
Page | 17
Page | 18
DFD LEVEL – 1
Page | 19
DFD LEVEL-1 USER
Page | 20
DFD LEVEL-2
Page | 21
DFD Level 2 Manage
Enquiry(3.0) Admin
Page | 22
DFD Level 2 Manage
Dashboard(2.0) Admin
Page | 23
DFD LEVEL – 2 BOOK Ticket (3.0)
User
Page | 24
DFD Level 2 Testimonials (5.0)
User
Page | 25
CHAPTER 3
DESIGN
Software design is a mechanism to transform user requirements into some suitable form, which
helps the programmer in software coding and implementation. It deals with representing the
client's requirement, as described in SRS (Software Requirement Specification) document, into a
form, i.e., easily implementable using programming language.
The software design phase is the first step in SDLC (Software Design Life Cycle), which moves
the concentration from the problem domain to the solution domain. In software design, we consider
the system to be a set of components or modules with clearly defined behaviors & boundaries.
SDLC Methodology:
This document play a vital role in the development of life cycle (SDLC) as it describes the
complete requirement of the system. It means for use by developers and will be the basic during
testing phase. Any changes made to the requirements in the future will have to go through formal
change approval process.
Page | 26
SPIRAL MODEL was defined by Barry Boehm in his 1988 article, “A spiral Model of Software
Development and Enhancement. This model was not the first model to discuss iterative
development, but it was the first model to explain why the iteration models.
As originally envisioned, the iterations were typically 6 months to 2 years long. Each phase starts
with a design goal and ends with a client reviewing the progress thus far. Analysis and engineering
efforts are applied at each phase of the project, with an eye toward the end goal of the project.
The new system requirements are defined in as much details as possible. This usually involves
interviewing a number of users representing all the external or internal users and other aspects of
the existing system.
A first prototype of the new system is constructed from the preliminary design. This is usually
a scaled-down system, and represents an approximation of the characteristics of the final product.
1. Evaluating the first prototype in terms of its strengths, weakness, and risks.
At the customer option, the entire project can be aborted if the risk is deemed too great. Risk
factors might involve development cost overruns, operating-cost miscalculation, or any other
factor that could, in the customer’s judgment, result in a less-than-satisfactory final product.
The existing prototype is evaluated in the same manner as was the previous prototype, and if
necessary, another prototype is developed from it according to the fourfold procedure outlined
above.
Page | 27
The preceding steps are iterated until the customer is satisfied that the refined prototype
represents the final product desired.
The f inal system is thoroughly evaluated and tested. Routine maintenance is carried on a
continuing basis to prevent large scale failures and to minimize down time.
Page | 28
3.2 Advantages:
Estimates(i.e. budget, schedule etc .) become more relistic as work progresses, because important
issues discoved earlier.
It is more able to cope with the changes that are software development generally entails.
Software engineers can get their hands in and start woring on the core of a project earlier
The requirement specification for any system can be broadly stated as given below:
3.4 IMPLEMETATION
Some of the difficulty we faced was in trying to make the desired functions work. At first the
coding seemed a little complex, so we went back to the client for clarification and we were able
Page | 29
to get a more detailed description of the functions. After studying the IDE we wanted to use,
the coding became less complex and we were able to figure out how to go about it.
Some of the technical issues and questions we encountered were with the following:
We were able to answer and resolve these issues after meetings and discussions with the entire
group.
Page | 30
3.8 Design Introduction:
Design is the first step in the development phase for any techniques and principles for the
purpose of defining a device, a process or system in sufficient detail to permit its physical
realization.
Once the software requirements have been analyzed and specified the software design involves
three technical activities - design, coding, implementation and testing that are required to build
and verify the software.
The design activities are of main importance in this phase, because in this activity, decisions
ultimately affecting the success of the software implementation and its ease of maintenance are
made. These decisions have the final bearing upon reliability and maintainability of the system.
Design is the only way to accurately translate the customer’s requirements into finished software
or a system.
Design is the place where quality is fostered in development. Software design is a process through
which requirements are translated into a representation of software. Software design is
conducted in two steps. Preliminary design is concerned with the transformation of requirements
into data. A coherent set of roles that users of use cases play when interacting with the use
`cases'. Use case: A description of sequence of actions, including variants, that a system performs
that yields an observable result of value of an actor.
Use case diagrams model behavior within a system and helps the developers understand of what
the user require. The stick man represents what’s called an actor.
Use case diagram can be useful for getting an overall view of the system and clarifying that can
do and more importantly what they can’t do.
Page | 31
UML Diagram (Admin)
Page | 32
3.10 ER Diagram:
The Entity-Relationship (ER) model was originally proposed by Peter in 1976 [Chen76] as a
way to unify the network and relational database views. Simply stated the 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- Relationship diagram which is used to visually represent data objects.
Since Chen wrote his paper the model has been extended and today it is commonly used for
database design for the database designer, the utility of the ER model is:
It maps well to the relational model. The constructs used in the ER model can easily be
transformed into relational tables.
It is simple and easy to understand with a minimum of training. Therefore, the model can
be used by the database designer to communicate the design to the end user.
In addition, the model can be used as a design plan by the database developer to implement
a data model in specific database management software.
ER Notation
There is no standard for representing data objects in ER diagrams. Each modeling methodology
uses its own notation. The original notation used by Chen is widely used in academics texts and
journals but rarely seen in either CASE tools or publications by non-academics. Today, there are
a number of notations used; among the more common are Bachman, crow's foot, and IDEFIX.
All notational styles represent entities as rectangular boxes and relationships as lines connecting
boxes. Each style uses a special set of symbols to represent the cardinality of a connection. The
notation used in this document is from Martin. The symbols used for the basic ER constructs
are:
Entities are represented by labeled rectangles. The label is the name of the entity. Entity
Relationships are represented by a solid line connecting two entities. The name of the
Page | 33
relationship is written above the line. Relationship names should be verbs
Attributes, when included, are listed inside the entity rectangle. Attributes which are
Cardinality of many is represented by a line ending in a crow's foot. If the crow's foot is
Shown by the bar (looks like a 1) next to the entity for an instance is required. Optional existence is
shown by placing a circle next to the entity that is optional.
Page | 34
ER-Notations:
Symbols Purpose
Represents Entity sets.
Represent attributes.
Page | 35
Page | 36
3.11 DATABASE DESIGN
The data in the system has to be stored and retrieved from database. Designing the database is part
of system design. Data elements and data structures to be stored have been identified at analysis
stage. They are structured and put together to design the data storage and retrieval system.
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 database access easy, quick,
inexpensive and flexible for the user. Relationships are established between the data items and
unnecessary data items are removed. Normalization is done to get an internal consistency of data
and to have minimum redundancy and maximum stability. This ensures minimizing data storage
required, minimizing chances of data inconsistencies and optimizing for updates. The MySQL
database has been chosen for developing the relevant databases.
tbluser table: This table store the user personal and login details.
Page | 37
tbltourpackages table: This table store the tour package full details.
Page | 38
tblissues table: This table store the user issue details raised by the user.
Page | 39
Class Diagram
The class diagram shows a set of classes, interfaces, collaborations and their relationships .
Page | 40
Architecture flow :(N-Tier)
N-Tier Applications can easily implement the concepts of Distributed Application Design and
Architecture. The N-Tier Applications provide strategic benefits to Enterprise Solutions. While 2-
tier, client-server can help us create quick and easy solutions and may be used for Rapid
Prototyping, they can easily become maintenance and security night mare The N-tier Applications
provide specific advantages that are vital to the business continuity of the enterprise. Typical
features of a real life n-tier may include the following:
Security
Manageability
Easy Maintenance
Data Abstraction
The above mentioned points are some of the key design goals of a successful n-tier application
that intends to provide a good Business Solution.
Definition:
Simply stated, an n-tier application helps us distribute the overall functionality into various tiers
or layers:
Presentation Layer
Database/Data Store
Each layer can be developed independently of the other provided that it adheres to the standards
and communicates with the other layers as per the specifications. This is the one of the biggest
advantages of the n-tier application. Each layer can potentially treat the other layer as a ‘Block-
Page | 41
Box’. In other words, each layer does not care how other layer processes the data as long as it
sends the right data in a correct format.
Presentation Layer
Request Response
Business Logic
Layer
Data Link
Layer
Data Base
Page | 42
1. Presentation Layer:
Also called as client layer, comprises of components that are dedicated to presenting the data to
the user. For example: Windows/Web Forms and buttons, edit boxes, Text boxes, labels, grids,
etc.
This layer encapsulates the Business rules or the business logic of the encapsulations. To have a
separate layer for business logic is of a great advantage. This is because any changes in Business
Rules can be easily handled in this layer. As long as the interface between the layers remains the
same, any changes to the functionality/processing logic in this layer can be made without
impacting the others. A lot of client-server apps failed to implement successfully as changing the
business logic was a painful process.
This layer comprises of components that help in accessing the Database. If used in the right way,
this layer provides a level of abstraction for the database structures. Simply put changes made to
the database, tables, etc. do not affect the rest of the application because of the Data Access layer.
The different application layers send the data requests to this layer and receive the response from
this layer.
4. Database Layer:
This layer comprises of the Database Components such as DB Files, Tables, Views, etc. The
Actual database could be created using SQL Server, Oracle, Flat files, etc. In an n-tier application,
the entire application can be implemented in such a way that it is independent of the actual
Database. For instance, you could change the Database Location with minimal changes to Data
Access Layer. The rest of the Application should remain unaffected.
Page | 43
CHAPTER 4
CODING
The coding is the process of transforming the design of a system into a computer language format.
This coding phase of software development is concerned with software translating design
specification into the source code. It is necessary to write source code & internal documentation
so that conformance of the code to its specification can be easily verified.
Coding is done by the coder or programmers who are independent people than the designer. The
goal is not to reduce the effort and cost of the coding phase, but to cut to the cost of a later stage.
The cost of testing and maintenance can be significantly reduced with efficient coding.
1. Index.php
<?php
session_start();
include('includes/config.php');
if(isset($_POST['login']))
$uname=$_POST['username'];
$password=md5($_POST['password']);
Page | 44
$sql ="SELECT UserName,Password FROM admin WHERE UserName=:uname and
Password=:password";
$query-> execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
if($query->rowCount() > 0)
$_SESSION['alogin']=$_POST['username'];
} else{
}}?>
<!DOCTYPE HTML>
<html>
<head>
Page | 45
<link href="css/style.css" rel='stylesheet' type='text/css' />
<script src="js/jquery-2.1.4.min.js"></script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
</head>
<body>
<div class="main-wthree">
<div class="container">
<div class="sin-w3-agile">
<h2>Sign In</h2>
<form method="post">
<div class="username">
<span class="username">Username:</span>
Page | 46
</div>
<div class="password-agileits">
<span class="username">Password:</span>
<div class="clearfix"></div>
</div>
<div class="login-w3">
</div>
<div class="clearfix"></div></form>
<div class="back">
</div>
</div>
</div>
</div>
</body>
</html>
2. Dahboard.php
<?php
session_start();
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
Page | 47
{
header('location:index.php');
else{
?>
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-2.1.4.min.js"></script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
Page | 48
<link href='//fonts.googleapis.com/css?family=Montserrat:400,700' rel='stylesheet'
type='text/css'>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
<ol class="breadcrumb">
</ol>
<!--four-grids here-->
<div class="four-grids">
<div class="four-agileits">
</div>
<div class="four-text">
<h3>User</h3>
Page | 49
<?php $sql = "SELECT id from tblusers";
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=$query->rowCount();?>
</h4>
</div>
</div>
</div>
<div class="four-agileinfo">
<div class="icon">
</div>
<div class="four-text">
<h3>Bookings</h3>
$query1->execute();
$results1=$query1->fetchAll(PDO::FETCH_OBJ);
$cnt1=$query1->rowCount();
?>
</div>
Page | 50
</div>
</div>
<div class="four-w3ls">
<div class="icon">
</i>
</div>
<div class="four-text">
<h3>Enquiries</h3>
$query2->execute();
$results2=$query2->fetchAll(PDO::FETCH_OBJ);
$cnt2=$query2->rowCount()?>
</div>
</div>
</div>
<div class="four-wthree">
<div class="icon">
<div class="four-text">
<h3>Toatal packages</h3>
Page | 51
<?php $sql3 = "SELECT PackageId from tbltourpackages";
$query3->execute();
$results3=$query3->fetchAll(PDO::FETCH_OBJ);
$cnt3=$query3->rowCount();?>
</div>
</div>
</div>
<div class="clearfix"></div>
</div>
<div class="four-grids">
<div class="four-text">
<h3>Issues Riaised</h3>
$query5->execute();
$results5=$query5->fetchAll(PDO::FETCH_OBJ);
$cnt5=$query5->rowCount();?>
</div>
</div>
</div>
Page | 52
<div class="clearfix"></div>
</div>
<!--//four-grids here-->
<div class="inner-block">
</div>
<?php include('includes/footer.php');?>
</div>
</div>
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
else
{$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
Page | 53
$("#menu span").css({"position":"relative"});
}, 400);
toggle = !toggle
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/raphael-min.js"></script>
<script src="js/morris.js"></script>
<script>
$(document).ready(function() {
jQuery('.small-graph-box').hover(function() {
jQuery(this).find('.box-button').fadeIn('fast');
}, function() {
jQuery(this).find('.box-button').fadeOut('fast');
});
jQuery('.small-graph-box .box-close').click(function() {
jQuery(this).closest('.small-graph-box').fadeOut(200);
Page | 54
return false;
});
//CHARTS
graphArea2 = Morris.Area({
element: 'hero-area',
padding: 10,
behaveLikeLine: true,
gridEnabled: false,
gridLineColor: '#dddddd',
axes: true,
resize: true,
smooth:true,
pointSize: 0,
lineWidth: 0,
fillOpacity:0.85,
data: [
Page | 55
{period: '2015 Q3', iphone: 4830, ipad: 3805, itouch: 1598},
],
lineColors:['#ff4a43','#a2d200','#22beef'],
xkey: 'period',
redraw: true,
pointSize: 2,
hideHover: 'auto',
resize: true
}});
</script>
</body>
</html>
<?php } ?>
3. Create Package.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
Page | 56
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
if(isset($_POST['submit']))
$pname=$_POST['packagename'];
$ptype=$_POST['packagetype'];
$plocation=$_POST['packagelocation'];
$pprice=$_POST['packageprice'];
$pfeatures=$_POST['packagefeatures'];
$pdetails=$_POST['packagedetails'];
$pimage=$_FILES["packageimage"]["name"];
move_uploaded_file($_FILES["packageimage"]["tmp_name"],"pacakgeimages/".$_FILES["pac
kageimage"]["name"]);
$sql="INSERT INTO
tbltourpackages(PackageName,PackageType,PackageLocation,PackagePrice,PackageFetures,Pa
ckageDetails,PackageImage)
VALUES(:pname,:ptype,:plocation,:pprice,:pfeatures,:pdetails,:pimage)";
$query = $dbh->prepare($sql);
$query->bindParam(':pname',$pname,PDO::PARAM_STR);
$query->bindParam(':ptype',$ptype,PDO::PARAM_STR);
$query->bindParam(':plocation',$plocation,PDO::PARAM_STR);
$query->bindParam(':pprice',$pprice,PDO::PARAM_STR);
$query->bindParam(':pfeatures',$pfeatures,PDO::PARAM_STR);
$query->bindParam(':pdetails',$pdetails,PDO::PARAM_STR);
Page | 57
$query->bindParam(':pimage',$pimage,PDO::PARAM_STR);
$query->execute();
$lastInsertId = $dbh->lastInsertId();
if($lastInsertId)
else
?>
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-2.1.4.min.js"></script>
Page | 58
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
Page | 59
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
</div>
<ol class="breadcrumb">
</ol>
<!--grid-->
<div class="grid-form">
<!---->
<div class="grid-form1">
<h3>Create Package</h3>
<div class="tab-content">
Page | 60
<form class="form-horizontal" name="package" method="post" enctype="multipart/form-data">
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
Page | 61
<input type="text" class="form-control1" name="packageprice" id="packageprice"
placeholder=" Package Price is USD" required>
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div></div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="row">
Page | 62
<button type="reset" class="btn-inverse btn">Reset</button>
</div></div></div>
</form>
<div class="panel-footer">
</div>
</form>
</div></div>
<!--//grid-->
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
}});
});
</script>
<div class="inner-block">
</div>
Page | 63
<!--inner block end here-->
<?php include('includes/footer.php');?>
</div>
</div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
}else{
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
toggle = !toggle;
Page | 64
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
4. Changge Password.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
if(isset($_POST['submit']))
Page | 65
{
$password=md5($_POST['password']);
$newpassword=md5($_POST['newpassword']);
$username=$_SESSION['alogin'];
$query-> execute();
$chngpwd1 = $dbh->prepare($con);
$chngpwd1->execute();
}else {
}}?>
<!DOCTYPE HTML>
<html>
<head>
Page | 66
<title>TMS | Admin Change Password</title>
<script src="js/jquery-2.1.4.min.js"></script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
<script type="text/javascript">
function valid()
if(document.chngpwd.newpassword.value!= document.chngpwd.confirmpassword.value)
document.chngpwd.confirmpassword.focus();
return false;
return true;
</script>
<style>
Page | 67
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
Page | 68
<div class="clearfix"> </div>
</div>
<ol class="breadcrumb">
</ol>
<!--grid-->
<div class="grid-form">
<div class="grid-form1">
<div class="panel-body">
<div class="form-group">
<div class="col-md-8">
<div class="input-group">
<span class="input-group-addon">
</span>
</div></div></div>
<div class="form-group">
Page | 69
<label class="col-md-2 control-label">New Password</label>
<div class="col-md-8">
<div class="input-group">
<span class="input-group-addon">
</span>
</div></div></div>
<div class="form-group">
<div class="col-md-8">
<div class="input-group">
<span class="input-group-addon">
</span>
</div></div></div>
</div></div></form>
</div></div></div></div>
<!--//grid-->
Page | 70
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
}});});
</script>
<div class="inner-block">
</div>
<?php include('includes/footer.php');?>
</div></div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div><script>
Page | 71
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
else
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);}
toggle = !toggle;
});
</script>
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
5. Change Image.php
<?php
Page | 72
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
$imgid=intval($_GET['imgid']);
if(isset($_POST['submit']))
{$pimage=$_FILES["packageimage"]["name"];
move_uploaded_file($_FILES["packageimage"]["tmp_name"],"pacakgeimages/".$_FILES["pac
kageimage"]["name"]);
$query = $dbh->prepare($sql);
$query->bindParam(':imgid',$imgid,PDO::PARAM_STR);
$query->bindParam(':pimage',$pimage,PDO::PARAM_STR);
$query->execute();
}?>
<!DOCTYPE HTML>
<html>
<head>
Page | 73
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Smartphone Compatible web template, free webdesigns for Nokia, Samsung, LG, SonyEricsson,
Motorola web design" />
<script src="js/jquery-2.1.4.min.js"></script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
Page | 74
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
</div>
<ol class="breadcrumb">
</ol>
<!--grid-->
Page | 75
<div class="grid-form">
<!---->
<div class="grid-form1">
<div class="tab-content">
<?php
$imgid=intval($_GET['imgid']);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{?>
<div class="form-group">
<div class="col-sm-8">
Page | 76
<img src="pacakgeimages/<?php echo htmlentities($result->PackageImage);?>" width="200">
</div></div>
<div class="form-group">
<div class="col-sm-8">
</div></div>
<?php }} ?>
<div class="row">
</div></div></div>
</form>
<div class="panel-footer">
</div></form>
</div></div>
<!--//grid-->
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
Page | 77
}else{
$(".header-main").removeClass("fixed");
});
});
</script>
<div class="inner-block"></div>
<?php include('includes/footer.php');?>
</div></div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
Page | 78
$("#menu span").css({"position":"absolute"});
else
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
}toggle = !toggle;
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
6. Manage Bookings.php
<?php
session_start();
Page | 79
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
if(isset($_REQUEST['bkid']))
$bid=intval($_GET['bkid']);
$status=2;
$cancelby='a';
$query = $dbh->prepare($sql);
}if(isset($_REQUEST['bckid']))
$bcid=intval($_GET['bckid']);
$status=1;
Page | 80
$cancelby='a';
$query = $dbh->prepare($sql);
}?>
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
Page | 81
$(document).ready(function() {
$('#table').basictable();
$('#table-breakpoint').basictable({
breakpoint: 768
});
$('#table-swap-axis').basictable({
swapAxis: true
});
$('#table-force-off').basictable({
forceResponsive: false
});
$('#table-no-resize').basictable({
noResize: true
});
$('#table-two-axis').basictable();
$('#table-max-height').basictable({
tableWrapper: true
});
});
</script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
<style>
Page | 82
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
Page | 83
<div class="clearfix"> </div>
</div>
<ol class="breadcrumb">
</ol>
<div class="agile-tables">
<div class="w3l-table-info">
<h2>Manage Bookings</h2>
<table id="table">
<thead>
<tr>
<th>Booikn id</th>
<th>Name</th>
<th>Mobile No.</th>
<th>Email Id</th>
<th>RegDate </th>
<th>Comment </th>
<th>Status </th>
Page | 84
<th>Action </th>
</tr>
</thead>
<tbody>
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
?>
<tr>
Page | 85
<td><?php echo htmlentities($result->fdate);?> To <?php echo htmlentities($result-
>tdate);?></td>
<td><?php if($result->status==0)
echo "Pending";
if($result->status==1)
echo "Confirmed";
?></td>
<?php if($result->status==2)
?><td>Cancelled</td>
Page | 86
href="manage-bookings.php?bckid=<?php echo htmlentities($result->bookid);?>"
onclick="return confirm('booking has been confirm')" >Confirm</a></td>
<?php }?>
</tr>
</tbody>
</table>
</div>
</table>
</div>
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
});});
</script>
Page | 87
<div class="inner-block">
</div>
<?php include('includes/footer.php');?>
</div>
</div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
else
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
Page | 88
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
toggle = !toggle;
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
7. Manage Enquries.php
<?php
session_start();
error_reporting(0);
Page | 89
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
if(isset($_REQUEST['eid']))
$eid=intval($_GET['eid']);
$status=1;
$query = $dbh->prepare($sql);
?>
<!DOCTYPE HTML>
<html>
<head>
Page | 90
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="js/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#table').basictable();
$('#table-breakpoint').basictable({
breakpoint: 768
});
$('#table-swap-axis').basictable({
swapAxis: true
});
$('#table-force-off').basictable({
forceResponsive: false
});
$('#table-no-resize').basictable({
noResize: true
Page | 91
});
$('#table-two-axis').basictable();
$('#table-max-height').basictable({
tableWrapper: true
});
});
</script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
Page | 92
-webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);
</style>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
</div>
<ol class="breadcrumb">
</ol>
<div class="agile-grids">
<div class="agile-tables">
Page | 93
<div class="w3l-table-info">
<h2>Manage Enquiries</h2>
<table id="table">
<thead>
<tr>
<th>Ticket id</th>
<th>Name</th>
<th>Subject </th>
<th>Description </th>
<th>Action </th>
</tr>
</thead>
<tbody>
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<tr>
Page | 94
<td width="50"><?php echo htmlentities($result->FullName);?></td>
<?php if($result->Status==1)
?><td>Read</td>
</td>
<?php } ?>
</tr>
<?php } }?>
</tbody>
</table></div>
</table></div>
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
Page | 95
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
});
});
</script>
<div class="inner-block">
</div>
<?php include('includes/footer.php');?>
</div>
</div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
Page | 96
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
else
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
toggle = !toggle;
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
Page | 97
8. Manage Issue.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
if(isset($_REQUEST['eid']))
$eid=intval($_GET['eid']);
$status=1;
$query = $dbh->prepare($sql);
?>
Page | 98
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#table').basictable();
$('#table-breakpoint').basictable({
breakpoint: 768
});
$('#table-swap-axis').basictable({
swapAxis: true
});
Page | 99
$('#table-force-off').basictable({
forceResponsive: false
});
$('#table-no-resize').basictable({
noResize: true
});
$('#table-two-axis').basictable();
$('#table-max-height').basictable({
tableWrapper: true
});
});
</script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
Page | 100
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
var popUpWin=0;
if(popUpWin)
if(!popUpWin.closed) popUpWin.close();
popUpWin = open(URLStr,'popUpWin',
'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copy
history=yes,width='+600+',height='+600+',left='+left+',
top='+top+',screenX='+left+',screenY='+top+'');
</script>
</head>
<body>
<div class="page-container">
Page | 101
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
</div>
<ol class="breadcrumb">
</ol>
<div class="agile-grids">
<div class="agile-tables">
<div class="w3l-table-info">
<h2>Manage Issues</h2>
<table id="table">
<thead>
<tr>
<th>#</th>
<th>Name</th>
Page | 102
<th>Mobile No.</th>
<th>Email Id</th>
<th>Issues </th>
<th>Description </th>
<th>Action </th>
</tr>
</thead>
<tbody>
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<tr>
Page | 103
<td width="400"><?php echo htmlentities($result->Description);?></td>
</td>
</tr>
<?php } }?>
</tbody>
</table>
</div>
</table>
</div>
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
});});
</script>
Page | 104
<!-- /script-for sticky-nav -->
<div class="inner-block">
</div>
<?php include('includes/footer.php');?>
</div>
</div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
else
Page | 105
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
toggle = !toggle;
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
9. Manage Packages
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
Page | 106
{
header('location:index.php');
else{
?>
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-2.1.4.min.js"></script>
Page | 107
<link rel="stylesheet" type="text/css" href="css/basictable.css" />
<script type="text/javascript">
$(document).ready(function() {
$('#table').basictable();
$('#table-breakpoint').basictable({
breakpoint: 768
});
$('#table-swap-axis').basictable({
swapAxis: true
});
$('#table-force-off').basictable({
forceResponsive: false
});
$('#table-no-resize').basictable({
noResize: true
});
$('#table-two-axis').basictable();
$('#table-max-height').basictable({
tableWrapper: true
});
});
</script>
Page | 108
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
</div>
<ol class="breadcrumb">
</ol>
<div class="agile-grids">
<div class="agile-tables">
<div class="w3l-table-info">
Page | 109
<h2>Manage Packages</h2>
<table id="table">
<thead>
<tr>
<th>#</th>
<th >Name</th>
<th>Type</th>
<th>Location</th>
<th>Price</th>
<th>Creation Date</th>
<th>Action</th>
</tr>
</thead>
<tbody>
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<tr>
Page | 110
<td><?php echo htmlentities($cnt);?></td>
</tr>
</tbody>
</table>
</div>
</table>
</div>
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
Page | 111
}
});});
</script>
<div class="inner-block">
</div>
<?php include('includes/footer.php');?>
</div>
</div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
Page | 112
}
else
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
toggle = !toggle;
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
<?php
session_start();
Page | 113
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
?>
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-2.1.4.min.js"></script>
Page | 114
<!-- //jQuery -->
<script type="text/javascript">
$(document).ready(function() {
$('#table').basictable();
$('#table-breakpoint').basictable({
breakpoint: 768
});
$('#table-swap-axis').basictable({
swapAxis: true
});
$('#table-force-off').basictable({
forceResponsive: false
});
$('#table-no-resize').basictable({
noResize: true
});
$('#table-two-axis').basictable();
$('#table-max-height').basictable({
tableWrapper: true
});
});
Page | 115
</script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
</div>
<ol class="breadcrumb">
</ol>
<div class="agile-grids">
Page | 116
<div class="agile-tables">
<div class="w3l-table-info">
<h2>Manage Users</h2>
<table id="table">
<thead>
<tr>
<th>#</th>
<th>Name</th>
<th>Mobile No.</th>
<th>Email Id</th>
<th>RegDate </th>
<th>Updation Date</th>
</tr>
</thead>
<tbody>
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{?>
<tr>
Page | 117
<td><?php echo htmlentities($cnt);?></td>
</tr>
</tbody>
</table>
</div>
</table>
</div>
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
});
Page | 118
});
</script>
<div class="inner-block">
</div>
<?php include('includes/footer.php');?>
</div>
</div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
Page | 119
else
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
toggle = !toggle;
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
<?php
session_start();
error_reporting(0);
Page | 120
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
if($_POST['submit']=="Update")
$pagetype=$_GET['type'];
$pagedetails=$_POST['pgedetails'];
$query = $dbh->prepare($sql);
}?>
<!DOCTYPE HTML>
<html>
<head>
Page | 121
Smartphone Compatible web template, free webdesigns for Nokia, Samsung, LG, SonyEricsson,
Motorola web design" />
<script src="js/jquery-2.1.4.min.js"></script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
Page | 122
background: #fff;
</style>
<script type="text/JavaScript">
<!--
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
min=test.substring(8,p); max=test.substring(p+1);
Page | 123
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and
'+max+'.\n';
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
//-->
</script>
<script type="text/javascript">
</script>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
Page | 124
</div>
<ol class="breadcrumb">
</ol>
<!--grid-->
<div class="grid-form">
<!---->
<div class="grid-form1">
<div class="tab-content">
<div class="form-group">
<div class="col-sm-8">
Page | 125
</select>
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
<?php
switch($_GET['type'])
case "terms" :
break;
case "privacy" :
break;
case "aboutus" :
break;
case "software" :
echo "Offers";
break;
case "aspnet" :
break;
Page | 126
case "objectives" :
echo "Objectives";
break;
case "disclaimer" :
echo "Disclaimer";
break;
case "vbnet" :
break;
case "candc" :
break;
case "contact" :
break;
default :
echo "";
break;}
?>
</div>
</div>
<div class="form-group">
Page | 127
<?php
$pagetype=$_GET['type'];
$query->bindParam(':pagetype',$pagetype,PDO::PARAM_STR);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
echo htmlentities($result->detail);
}}
?>
</textarea>
</div>
</div>
<div class="row">
</div>
</div></div>
</form>
Page | 128
<div class="panel-footer">
</div>
</form>
</div>
</div>
<!--//grid-->
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
});});
</script>
<div class="inner-block">
</div>
Page | 129
<?php include('includes/footer.php');?>
</div>
</div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
else
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
Page | 130
toggle = !toggle;
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
<?php } ?>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
Page | 131
$pid=intval($_GET['pid']);
if(isset($_POST['submit']))
$pname=$_POST['packagename'];
$ptype=$_POST['packagetype'];
$plocation=$_POST['packagelocation'];
$pprice=$_POST['packageprice'];
$pfeatures=$_POST['packagefeatures'];
$pdetails=$_POST['packagedetails'];
$pimage=$_FILES["packageimage"]["name"];
$query = $dbh->prepare($sql);
$query->bindParam(':pname',$pname,PDO::PARAM_STR);
$query->bindParam(':ptype',$ptype,PDO::PARAM_STR);
$query->bindParam(':plocation',$plocation,PDO::PARAM_STR);
$query->bindParam(':pprice',$pprice,PDO::PARAM_STR);
$query->bindParam(':pfeatures',$pfeatures,PDO::PARAM_STR);
$query->bindParam(':pdetails',$pdetails,PDO::PARAM_STR);
$query->bindParam(':pid',$pid,PDO::PARAM_STR);
$query->execute();
?>
<!DOCTYPE HTML>
Page | 132
<html>
<head>
Smartphone Compatible web template, free webdesigns for Nokia, Samsung, LG, SonyEricsson,
Motorola web design" />
<script src="js/jquery-2.1.4.min.js"></script>
<link href='//fonts.googleapis.com/css?family=Roboto:700,500,300,100italic,100,400'
rel='stylesheet' type='text/css'/>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
Page | 133
border-left: 4px solid #dd3d36;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="page-container">
<!--/content-inner-->
<div class="left-content">
<div class="mother-grid-inner">
<?php include('includes/header.php');?>
</div>
Page | 134
<ol class="breadcrumb">
</ol>
<!--grid-->
<div class="grid-form">
<!---->
<div class="grid-form1">
<h3>Update Package</h3>
<div class="tab-content">
<?php
$pid=intval($_GET['pid']);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
Page | 135
{ ?>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
Page | 136
<label for="focusedinput" class="col-sm-2 control-label">Package Price in USD</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
Page | 137
</div>
</div>
<div class="form-group">
<div class="col-sm-8">
</div>
</div>
<?php }} ?>
<div class="row">
</div>
</div>
</div>
</form>
<div class="panel-footer"></div>
</form>
</div>
</div>
<!--//grid-->
<script>
$(document).ready(function() {
var navoffeset=$(".header-main").offset().top;
Page | 138
$(window).scroll(function(){
var scrollpos=$(window).scrollTop();
if(scrollpos >=navoffeset){
$(".header-main").addClass("fixed");
}else{
$(".header-main").removeClass("fixed");
});});
</script>
<div class="inner-block">
</div>
<?php include('includes/footer.php');?>
</div>
</div>
<!--//content-inner-->
<!--/sidebar-menu-->
<?php include('includes/sidebarmenu.php');?>
<div class="clearfix"></div>
</div>
<script>
Page | 139
var toggle = true;
$(".sidebar-icon").click(function() {
if (toggle)
$(".page-container").addClass("sidebar-collapsed").removeClass("sidebar-collapsed-back");
$("#menu span").css({"position":"absolute"});
else
$(".page-container").removeClass("sidebar-collapsed").addClass("sidebar-collapsed-back");
setTimeout(function() {
$("#menu span").css({"position":"relative"});
}, 400);
toggle = !toggle;
});
</script>
<!--js -->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
Page | 140
<?php } ?>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['alogin'])==0)
header('location:index.php');
else{
$iid=intval($_GET['iid']);
if(isset($_POST['submit2']))
$remark=$_POST['remark'];
$query = $dbh->prepare($sql);
}?>
Page | 141
function f2()
window.close();
}ser
function f3()
window.print();
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Update Compliant</title>
</head>
<body>
<div style="margin-left:50px;">
<tr height="50">
</tr><tr>
Page | 142
<td colspan="2" "> <?php if($error){?><div
class="errorWrap"><strong>ERROR</strong>:<?php echo htmlentities($error); ?> </div><?php
}
</tr>
<tbody>
<?php
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
if($query->rowCount() > 0)
foreach($results as $result)
if($result->AdminRemark=="")
?>
<tr style=''>
</span></td>
</tr>
Page | 143
<tr>
<td class="fontkink1"> </td>
<td > </td>
</tr>
<tr>
</tr>
<tr>
</tr>
<tr>
</tr>
<?php }}}?>
</table>
</form>
</div>
</body></html><?php } ?>
4.2 CODING
Page | 144
USER SIDE
1 Index.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
?>
<!DOCTYPE HTML>
<html>
<head>
Page | 145
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script>
<!--//end-animate-->
</head>
<body>
<?php include('includes/header.php');?>
<div class="banner">
<div class="container">
</div>
</div>
<div class="container">
<div class="rupes">
<div class="rup-left">
</div>
Page | 146
<div class="rup-rgt">
<div class="clearfix"></div>
</div>
<div class="rup-left">
</div>
<div class="rup-rgt">
</div>
<div class="clearfix"></div>
</div>
<div class="rup-left">
</div>
<div class="rup-rgt">
</div>
<div class="clearfix"></div>
Page | 147
</div>
</div>
</div>
<!---holiday---->
<div class="container">
<div class="holiday">
<h3>Package List</h3>
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<div class="rom-btm">
</div>
Page | 148
<p><b>Package Location :</b> <?php echo htmlentities($result->PackageLocation);?></p>
</div>
</div>
<div class="clearfix"></div>
</div>
<?php }} ?>
</div>
<div class="clearfix"></div>
</div>
<div class="routes">
<div class="container">
<div class="rou-left">
</div>
<h3>80000</h3>
<p>Enquiries</p>
Page | 149
</div>
<div class="clearfix"></div>
</div>
<div class="rou-left">
</div>
<div class="rou-rgt">
<h3>1900</h3>
<p>Regestered users</p>
</div>
<div class="clearfix"></div>
</div>
<div class="rou-left">
</div>
<div class="rou-rgt">
<h3>7,00,00,000+</h3>
<p>Booking</p>
</div>
<div class="clearfix"></div>
</div>
<div class="clearfix"></div>
</div>
Page | 150
</div>
<?php include('includes/footer.php');?>
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
<?php include('includes/write-us.php');?>
</body>
</html>
1. Change password.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['login'])==0)
header('location:index.php');
Page | 151
else{
if(isset($_POST['submit5']))
$password=md5($_POST['password']);
$newpassword=md5($_POST['newpassword']);
$email=$_SESSION['login'];
$query-> execute();
$chngpwd1 = $dbh->prepare($con);
$chngpwd1->execute();
else {
Page | 152
?>
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
Page | 153
</script>
<script type="text/javascript">
function valid()
if(document.chngpwd.newpassword.value!= document.chngpwd.confirmpassword.value)
document.chngpwd.confirmpassword.focus();
return false;
return true;
</script>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
Page | 154
background: #fff;
</style>
</head>
<body>
<div class="top-header">
<?php include('includes/header.php');?>
<div class="container">
</div>
</div>
<div class="privacy">
<div class="container">
Page | 155
else if($msg){?><div class="succWrap"><strong>SUCCESS</strong>:<?php echo
htmlentities($msg); ?> </div><?php }?>
</p>
<b>New Password</b>
</p>
<b>Confirm Password</b>
</p>
</p>
</form>
</div>
</div>
<?php include('includes/footer.php');?>
Page | 156
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
<?php include('includes/write-us.php');?>
</body>
</html>
<?php } ?>
2. Check avability.php
<?php
require_once("includes/config.php");
if(!empty($_POST["emailid"])) {
$email= $_POST["emailid"];
if (filter_var($email, FILTER_VALIDATE_EMAIL)===false) {
else {
$cnt=1;
echo "<script>$('#submit').prop('disabled',true);</script>";
} else{
echo "<script>$('#submit').prop('disabled',false);</script>";
?>
3. Enquiry.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(isset($_POST['submit1']))
$fname=$_POST['fname'];
$email=$_POST['email'];
Page | 158
$mobile=$_POST['mobileno'];
$subject=$_POST['subject'];
$description=$_POST['description'];
$query = $dbh->prepare($sql);
$query->bindParam(':fname',$fname,PDO::PARAM_STR);
$query->bindParam(':email',$email,PDO::PARAM_STR);
$query->bindParam(':mobile',$mobile,PDO::PARAM_STR);
$query->bindParam(':subject',$subject,PDO::PARAM_STR);
$query->bindParam(':description',$description,PDO::PARAM_STR);
$query->execute();
$lastInsertId = $dbh->lastInsertId();
if($lastInsertId)
else
}}
?>
<!DOCTYPE HTML>
<html>
<head>
Page | 159
<title>TMS | Road Less Travelled</title>
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script>
<style>
.errorWrap {
padding: 10px;
Page | 160
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="top-header">
<?php include('includes/header.php');?>
<div class="container">
</div>
Page | 161
</div>
<div class="privacy">
<div class="container">
</p>
</p>
</p>
</p>
Page | 162
<p style="width: 350px;">
</p>
</p>
</form>
</div>
</div>
<?php include('includes/footer.php');?>
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
<?php include('includes/write-us.php');?>
</body>
</html>
Page | 163
4. Forgot password.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(isset($_POST['submit50']))
$email=$_POST['email'];
$mobile=$_POST['mobile'];
$newpassword=md5($_POST['newpassword']);
$query-> execute();
$chngpwd1 = $dbh->prepare($con);
Page | 164
$chngpwd1->execute();
else {
}?>
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-1.12.0.min.js"></script>
Page | 165
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script>
<script type="text/javascript">
function valid()
if(document.chngpwd.newpassword.value!= document.chngpwd.confirmpassword.value)
document.chngpwd.confirmpassword.focus();
return false;
return true;
</script>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
Page | 166
-webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<div class="top-header">
<?php include('includes/header.php');?>
<div class="container">
</div>
</div>
Page | 167
<div class="privacy">
<div class="container">
</p>
</p>
<b>New Password</b>
</p>
<b>Confirm Password</b>
</p>
Page | 168
<button type="submit" name="submit50" class="btn-primary btn">Change</button>
</p>
</form>
</div>
</div>
<?php include('includes/footer.php');?>
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
<?php include('includes/write-us.php');?>
</body>
</html>
Page | 169
5. Tickets.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['login'])==0)
header('location:index.php');
else{
?>
<!DOCTYPE HTML>
<html>
<head>
Page | 170
<link href='//fonts.googleapis.com/css?family=Roboto+Condensed:400,700,300' rel='stylesheet'
type='text/css'>
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
Page | 171
background: #fff;
</style>
</head>
<body>
<div class="top-header">
<?php include('includes/header.php');?>
<div class="container">
</div>
</div>
<div class="privacy">
<div class="container">
Page | 172
else if($msg){?><div class="succWrap"><strong>SUCCESS</strong>:<?php echo
htmlentities($msg); ?> </div><?php }?>
<p>
<tr align="center">
<th>#</th>
<th>Ticket Id</th>
<th>Issue</th>
<th>Description</th>
<th>Admin Remark</th>
<th>Reg Date</th>
<th>Remark date</th>
</tr>
<?php
$uemail=$_SESSION['login'];;
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
Page | 173
{ ?>
<tr align="center">
</tr>
</table>
</p>
</form>
</div>
</div>
<?php include('includes/footer.php');?>
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
Page | 174
<!-- //signin -->
<?php include('includes/write-us.php');?>
</body>
</html>
<?php } ?>
6. Logout.php
<?php
session_start();
$_SESSION = array();
if (ini_get("session.use_cookies")) {
$params = session_get_cookie_params();
$params["path"], $params["domain"],
$params["secure"], $params["httponly"]
);
unset($_SESSION['login']);
header("location:index.php");
?>
Page | 175
7. Package Details.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(isset($_POST['submit2']))
$pid=intval($_GET['pkgid']);
$useremail=$_SESSION['login'];
$fromdate=$_POST['fromdate'];
$todate=$_POST['todate'];
$comment=$_POST['comment'];
$status=0;
$query = $dbh->prepare($sql);
$query->bindParam(':pid',$pid,PDO::PARAM_STR);
$query->bindParam(':useremail',$useremail,PDO::PARAM_STR);
$query->bindParam(':fromdate',$fromdate,PDO::PARAM_STR);
$query->bindParam(':todate',$todate,PDO::PARAM_STR);
$query->bindParam(':comment',$comment,PDO::PARAM_STR);
$query->bindParam(':status',$status,PDO::PARAM_STR);
$query->execute();
$lastInsertId = $dbh->lastInsertId();
Page | 176
if($lastInsertId)
$msg="Booked Successfully";
else
?>
<!DOCTYPE HTML>
<html>
<head>
Page | 177
<!-- Custom Theme files -->
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script>
<script src="js/jquery-ui.js"></script>
<script>
$(function() {
$( "#datepicker,#datepicker1" ).datepicker();
});
</script>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
Page | 178
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
</style>
</head>
<body>
<?php include('includes/header.php');?>
<div class="banner-3">
<div class="container">
</div>
</div>
<div class="selectroom">
<div class="container">
Page | 179
else if($msg){?><div class="succWrap"><strong>SUCCESS</strong>:<?php echo
htmlentities($msg); ?> </div><?php }?>
<?php
$pid=intval($_GET['pkgid']);
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
<div class="selectroom_top">
</div>
Page | 180
<p><b>Features</b> <?php echo htmlentities($result->PackageFetures);?></p>
<div class="ban-bottom">
<div class="bnr-right">
<label class="inputLabel">From</label>
</div>
<div class="bnr-right">
<label class="inputLabel">To</label>
</div>
</div>
<div class="clearfix"></div>
<div class="grand">
<p>Grand Total</p>
<h3>INR.800</h3>
</div>
</div>
<h3>Package Details</h3>
<div class="clearfix"></div>
</div>
<div class="selectroom_top">
<h2>Travels</h2>
Page | 181
<div class="selectroom-info animated wow fadeInUp animated" data-wow-duration="1200ms"
data-wow-delay="500ms" style="visibility: visible; animation-duration: 1200ms; animation-
delay: 500ms; animation-name: fadeInUp; margin-top: -70px">
<ul>
<li class="spe">
<label class="inputLabel">Comment</label>
</li>
<?php if($_SESSION['login'])
{?>
</li>
<?php } ?>
<div class="clearfix"></div>
</ul>
</div>
</div>
</form>
<?php }} ?>
Page | 182
</div>
</div>
<?php include('includes/footer.php');?>
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
<?php include('includes/write-us.php');?>
</body>
</html>
8. Package List.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
?>
Page | 183
<!DOCTYPE HTML>
<html>
<head>
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script>
<!--//end-animate-->
Page | 184
</head>
<body>
<?php include('includes/header.php');?>
<div class="banner-3">
<div class="container">
</div>
</div>
<div class="rooms">
<div class="container">
<div class="room-bottom">
<h3>Package List</h3>
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
Page | 185
<div class="rom-btm">
</div>
</div>
</div>
<div class="clearfix"></div>
</div>
<?php }} ?>
</div>
</div>
</div>
<?php include('includes/footer.php');?>
Page | 186
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
<?php include('includes/write-us.php');?>
</body>
</html>
10. Profile.php
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['login'])==0)
header('location:index.php');
else{
if(isset($_POST['submit6']))
$name=$_POST['name'];
Page | 187
$mobileno=$_POST['mobileno'];
$email=$_SESSION['login'];
$query = $dbh->prepare($sql);
$query->bindParam(':name',$name,PDO::PARAM_STR);
$query->bindParam(':mobileno',$mobileno,PDO::PARAM_STR);
$query->bindParam(':email',$email,PDO::PARAM_STR);
$query->execute();
?>
<!DOCTYPE HTML>
<html>
<head>
Page | 188
<link href='//fonts.googleapis.com/css?family=Oswald' rel='stylesheet' type='text/css'>
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script>
<style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
Page | 189
-webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);
</style>
</head>
<body>
<div class="top-header">
<?php include('includes/header.php');?>
<div class="container">
</div>
</div>
<div class="privacy">
<div class="container">
<?php
Page | 190
$useremail=$_SESSION['login'];
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
</p>
<b>Mobile Number</b>
</p>
<b>Email Id</b>
</p>
Page | 191
<b>Last Updation Date : </b>
</p>
</p>
<?php }} ?>
</p>
</form>
</div>
</div>
<?php include('includes/footer.php');?>
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
Page | 192
<?php include('includes/write-us.php');?>
</body>
</html>
<?php } ?>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
if(strlen($_SESSION['login'])==0)
header('location:index.php');
else{
if(isset($_REQUEST['bkid']))
$bid=intval($_GET['bkid']);
$email=$_SESSION['login'];
$query-> execute();
Page | 193
$results = $query -> fetchAll(PDO::FETCH_OBJ);
if($query->rowCount() > 0)
foreach($results as $result)
$fdate=$result->FromDate;
$a=explode("/",$fdate);
$val=array_reverse($a);
$mydate =implode("/",$val);
$cdate=date('Y/m/d');
$date1=date_create("$cdate");
$date2=date_create("$fdate");
$diff=date_diff($date1,$date2);
echo $df=$diff->format("%a");
if($df>1)
$status=2;
$cancelby='u';
$query = $dbh->prepare($sql);
Page | 194
$query -> execute();
else
}}}
?>
<!DOCTYPE HTML>
<html>
<head>
Page | 195
<!-- Custom Theme files -->
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script><style>
.errorWrap {
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
.succWrap{
padding: 10px;
margin: 0 0 20px 0;
background: #fff;
Page | 196
</style>
</head>
<body>
<div class="top-header">
<?php include('includes/header.php');?>
<div class="container">
</div>
</div>
<div class="privacy">
<div class="container">
<p>
<tr align="center">
<th>#</th>
Page | 197
<th>Booking Id</th>
<th>Package Name</th>
<th>From</th>
<th>To</th>
<th>Comment</th>
<th>Status</th>
<th>Booking Date</th>
<th>Action</th>
</tr>
<?php
$uemail=$_SESSION['login'];;
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
foreach($results as $result)
{ ?>
Page | 198
<tr align="center">
<td><?php if($result->status==0)
echo "Pending";
if($result->status==1)
echo "Confirmed";
?></td>
Page | 199
<td><?php echo htmlentities($result->regdate);?></td>
<?php if($result->status==2)
?><td>Cancelled</td>
<?php }?>
</tr>
</table>
</p>
</form>
</div>
</div>
<?php include('includes/footer.php');?>
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
Page | 200
<!-- write us -->
<?php include('includes/write-us.php');?>
</body>
</html>
<?php } ?>
<?php
session_start();
include('db.php');
$amt=$_POST['amt'];
$name=$_POST['name'];
$phone=$_POST['phone'];
$email=$_POST['email'];
$pkg=$_POST['pkg'];
$payment_status="pending";
$added_on=date('Y-m-d h:i:s');
mysqli_query($con,"insert
intopayment(name,amount,payment_status,added_on,phone,email,pkg)
values('$name','$amt','$payment_status','$added_on','$phone','$email','$pkg')");
$_SESSION['OID']=mysqli_insert_id($con);
Page | 201
$payment_id=$_POST['payment_id'];
?>
<?php
session_start();
include('includes/config.php');
$useremail=$_SESSION['login'];
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{}
foreach($results as $result)
{}
<?php
$bookid=intval($_GET['bookid']);
Page | 202
$sql1 = "SELECT * from tblbooking where Bookingid='$bookid'";
$query1->execute();
$results1=$query1->fetchAll(PDO::FETCH_OBJ);
$cnt1=1;
if($query1->rowCount() > 0)
{}
foreach($results1 as $result1)
{}
$mode = htmlentities($result1->Mode);
$sta = htmlentities($result1->status);
$onl = "Online";
$of = "Offline";
$one = 1;
$zero = 0;
$two = 2;
$text = "Paid";
}else{
$text = "Unpaid";
?>
<?php
$sta = htmlentities($result1->status);
$one = 1;
Page | 203
$zero = 0;
$two = 2;
if($sta == $one){
$texts = "Confirmed";
}if($sta == $zero){
$texts = "Pending";
}if($sta == $two){
$texts = "Cancelled";
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>TMS - Invoice</title>
<script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@4.4.1/dist/css/bootstrap.min.css"
rel="stylesheet">
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@4.4.1/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body onload="window.print()">
Page | 204
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"
rel="stylesheet" />
Invoice
<small class="page-info">
</small>
</h1>
</div>
<div class="row">
<div class="col-12">
<img
src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxASEhUT
EhMWFRUXFRYXFxcYGRYdGBgXFRUWFxUXGRgYHSggGBslHRUVITEhJTUrLi4uFx8z
ODMsNygtLisBCgoKDg0OGxAQGy4mICYtLTAyLjctLS8vNy8tLS0vLS8wLy8tLS8vLy8tLy0
tLS0tLS0tLS0tLS0tLS8tLS0tLf/AABEIAMUA/wMBIgACEQEDEQH/xAAcAAEAAgMBAQ
EAAAAAAAAAAAAABQYDBAcCAQj/xABJEAABAwIDBAUIBgcHAwUAAAABAAIDB
BEFEiEGMUFRYXGBkaEHEyIyUrHB0TNCYnKSohQVI0OC0uEWRFOywvDxJDSTF2Ojs8
P/xAAbAQACAwEBAQAAAAAAAAAAAAAABAIDBQEGB//EAEMRAAEDAgIHBQQGC
AUFAAAAAAEAAgMEERIhBTFBUWFxkRMigaGxMpLB8AYUQkOi0TNSU3KC0tPxJGK
TwuEjRKOys//aAAwDAQACEQMRAD8A7UiIhCIiIQiIiEIiLHUTsjaXvc1jRqXOIAHWToEI
Page | 205
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
Page | 206
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
Page | 207
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
Page | 208
+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
Page | 209
wGgA3ADgvq5dT+VuT95h0v8D3HwMYUzQeU+lebPpqyLpMJc3/AOMk+CzzBI3YrRI07Ve
EWphuJRTtzROJHS17SOtrwCFtqsi2tTRERcQiIiEIozE8cig0LZZHezFFI89paMo7SFJoui21cN
9iptTtXXn/ALfDJuuS7fy2+Kjp63aSX1YGRDo8z/8Ao5y6GtetqHMbdsb5T7LMl+97mjxV7Zg
NTG+Nz6lVOiJ1vPhYeguuZ1ezmNSAvnlAAFzd/AdEbTdRlPsjJM8NfUMBOgJzu6hctC6FUY
lizvoqFkfIyTMd3tjPxVcn2YxiV2Yvp4r8GXHd6Drd6k+aqDgYnRtG3L0w4vTxXGw0xaRK2R
27P+a3qtabyZTNYXCdriNcrYzcjjY5t6ihs5GPWkP5R7yrFJsRiUv02IE9GaVw7iQF4h8lY+vVu
PVH8S8qUzpXnKpwjcGA+drhVRMiZ/22LiXkeVyFAOwqhHrSfnb7gFgfHhg+u4/j+AV0j8mN
KPWmmPVkHwK2Y/JtQDf513W8f6WhVBrR7VRKeRaPh8Vc4k+xTxDmCfy9Fz4y4YPqvd2
n4uC8/pWHjdA89Zd/Mukt8nuGj9y89cknwcso2Dwwf3e/XJKf9aneHbJN/qOHo4KFpf2cPuD4g
rmH6zo+FN3uK8nG6cbqRvaR/KusN2Mw0f3ZvaXn3uWVuyeHj+6Q9rQfeoYaXaJDzlk/nU8V
TsLByjZ/IuRf2hiG6kZ4fyrGdpWjdTxDsXZ2bO0I3UsP/iZ8lmZg1KN1PCOqNnyUcFH+zJ5uef
UlT7Ws/a/hb8AuInat43RRDsPzXn+2Eo3MZ3O/mXdW0EI3RRjqY35LIIGDcxvcFExUX7AdV
Pt6wffHoFwT+2cvsx/m/mXwbay/4bPzfNd/823kO4L4GDkO5QMFCfuG9f8AhTFTWj749AuBt
22k/wAIHqcfkV6/tqeMB/H82rvdl9UDSUB+4HvFTFbWj74+638lxfBduqeN4fLT1Di3UBuQi/
A6kXsrlR+VKgf6zamP70RP/wBRcrsvVyrI46eIWjjt439QT5quWaaV2KR9/D8loYZjEFQLwyZ
uizgR1tcAQt+5Xm6LhtsUUuiIhCIiIQiIiEIiIhCIiIQiIiEIiIhCIiIQiIiEIiIhCIiIQiIiEIiIhCIiIQiIiEIi
IhCIiIQiIiEIiIhCIiIQiIiEIiIhCIiIQiIiEIiIhCIiIQiIiEIiIhCIiIQiIiEIiIhCIiIQiIiEL//Z"
style="width:100px">
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div>
</div>
<div class="text-grey-m2">
Page | 210
<div class="my-1">
</div>
<div class="my-1">
India
</div>
</div>
</div>
<div class="text-grey-m2">
Invoice
</div>
</div>
Page | 211
</div>
</div>
<div class="mt-4">
</div>
Page | 212
</div>
</div>
<!--
<div class="table-responsive">
<tr class="text-white">
<th class="opacity-2">#</th>
<th>Description</th>
<th>Qty</th>
<th>Unit Price</th>
<th width="140">Amount</th>
</tr>
</thead>
<tr></tr>
<tr>
<td>1</td>
Page | 213
<td>Domain registration</td>
<td>2</td>
<td class="text-95">$10</td>
<td class="text-secondary-d2">$20</td>
</tr>
</tbody>
</table>
</div>
-->
</div>
SubTotal
</div>
<div class="col-5">
</div>
Page | 214
<div class="col-7 text-right">
Total Am</div>
</div>
Tax (10%)
</div>
<div class="col-5">
<?php
$amt = htmlentities($result1->amts);
if($amt != 0 ){
$final = 10/100*$amt;
echo $final;
}else{
echo 0;
?></span>
</div>
ount
</div>
<div class="col-5">
Page | 215
<?php
if($amt != 0 ){
$final = 10/100*$amt;
$add = $amt+$final;
echo $add;
}else
echo 0;
?>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div></div>
<style type="text/css">
Page | 216
padding-top: .5rem;
margin-top:20px;
color: #484b51;
.text-secondary-d1 {
color: #728299!important;
.page-header {
margin: 0 0 1rem;
padding-bottom: 1rem
display: flex;
-ms-flex-align: center;
align-items: center;
.page-title {
padding: 0;
margin: 0;
font-size: 1.75rem;
font-weight: 300;
.brc-default-l1 {
border-color: #dce9f0!important;
Page | 217
}
.ml-n1, .mx-n1 {
margin-left: -.25rem!important;
.mr-n1, .mx-n1 {
margin-right: -.25rem!important;
.mb-4, .my-4 {
margin-bottom: 1.5rem!important;
}hr {
margin-top: 1rem;
margin-bottom: 1rem;
border: 0;
.text-grey-m2 {
color: #888a8d!important;
.text-success-m2 {
color: #86bd68!important;
.font-bolder, .text-600 {
font-weight: 600!important;
Page | 218
.text-110 {
font-size: 110%!important;
.text-blue {
color: #478fcc!important;
.pb-25, .py-25 {
padding-bottom: .75rem!important;
.pt-25, .py-25 {
padding-top: .75rem!important;
.bgc-default-tp1 {
background-color: rgba(121,169,197,.92)!important;
.bgc-default-l4, .bgc-h-default-l4:hover {
background-color: #f3f8fa!important;
.page-header .page-tools {
-ms-flex-item-align: end;
align-self: flex-end;
.btn-light {
color: #757984;
background-color: #f5f6f9;
Page | 219
border-color: #dddfe4;
.w-2 {
width: 1rem;
.text-120 {
font-size: 120%!important;
.text-primary-m1 {
color: #4087d4!important;
.text-danger-m1 {
color: #dd4949!important;
.text-blue-m2 {
color: #68a3d5!important;
.text-150 {
font-size: 150%!important;
.text-60 {
font-size: 60%!important;
.text-grey-m1 {
color: #7b7d81!important;
Page | 220
}
.align-bottom {
vertical-align: bottom!important;
</style>
<script type="text/javascript">
</script>
</body>
</html>
<?php
session_start();
error_reporting(0);
include('includes/config.php');
?>
<!DOCTYPE HTML>
<html>
<head>
Page | 221
<script type="applijewelleryion/x-javascript"> addEventListener("load", function()
{ setTimeout(hideURLbar, 0); }, false); function hideURLbar(){
window.scrollTo(0,1); } </script>
<link href="css/bootstrap.css" rel='stylesheet' type='text/css' />
<script src="js/jquery-1.12.0.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<!--animate-->
<script src="js/wow.min.js"></script>
<script>
new WOW().init();
</script>
<!--//end-animate-->
</head>
<body>
<?php include('includes/header.php');?>
<div class="container">
Page | 222
<h1 class="wow zoomIn animated animated" data-wow-delay=".5s" style="visibility: visible;
animation-delay: 0.5s; animation-name: zoomIn;"> TMS- Tourism Management System</h1>
</div>
</div>
<div class="contact">
<div class="container">
<h3> Confirmation</h3>
</div>
<div class="clearfix"></div>
</div>
</div>
<?php include('includes/footer.php');?>
<?php include('includes/signup.php');?>
<?php include('includes/signin.php');?>
Page | 223
4.2Testing Approach
To build up our project we use software testing process for executing a program with the
intent of findingerrors that is uncovering errors in a program makes it a feasible task and also
trying to find the error in a program as it is destructive process.
Type of Testing
Type of testing we Use in Our Project Here we just mentioned that how the testing is related to
this software and in which way we have test the software? In our project we have used 4 types of
testingthese are listed below –
Unit testing: Unit testing where individual program unit or object classes are tested
here byusing this testing we have focused on testing the functionality of methods.
Module Testing : Where this is the combination of unit is called module. Here we
tested theunit program is where the module program have dependency
Sub- system Testing : The we combined some module for the preliminary system
testing inour project
System Testing : where it is the combination of two or more sub – system and then it is
tested.Here we tested and entire system as per the requirements.
4.3Use Case
A use case is a methodology used in system analysis to identify, clarify and organize system
requirements. The use case is made up of a set of possible sequences of interactions between
systemsand users in a particular environment and related to a particular goal.
Page | 224
Every use case contains three essential elements:
The actor. The system user -- this can be a single person or a group of people interacting
withthe process.
The goal. The final successful outcome that completes the process.
The system. The process and steps taken to reach the end goal, including the
necessaryfunctional requirements and their anticipated behaviours.
Identifying all system users and creating a profile for each one. This includes
every roleplayed by a user who interacts with the system.
Selecting one user and defining their goal -- or what the user hopes to accomplish
byinteracting with the system. Each of these goals becomes a use case.
Describing the course taken for each use case through the system to reach that goal.
Considering every alternate course of events and extending use cases -- or the
different courses that can be taken to reach the goal.
Identifying commonalities in journeys to create common course use cases and write
descriptions of each.
Repeating steps two through five for all other system users.
A single use case can benefit developers by revealing how a system should behave while
also helping identify any errors that could arise in the process.
Page | 225
The list of goals created in the use case writing process can be used to establish the
complexity and cost of the system.
By focusing both on the user and the system, real system needs can be identified earlier
in thedesign process.
Since use cases are written primarily in a narrative language they are easily
understood bystakeholders, including customers, users and executives -- not just by
developers and testers.
The creation of extending use cases and the identification of exceptions to successful
use casescenarios saves developers time by making it easier to define subtle system
requirements.
By identifying system boundaries in the design scope of the use case, developers can
avoidscope creep.
Premature design can be avoided by focusing on what the system should do rather
than howit should do it.
Test Case
A Test Case is a set of conditions or variables under which a tester will determine whether a
systemunder test satisfies requirements or works correctly.
The process of developing test cases can also help find problems in the requirements or design
of anapplication.
A test case can have the following elements. Note, however, that a test management tool is
normallyused by companies and the format is determined by the tool used.
Page | 226
Test Suite ID The ID of the test suite to which this test case belongs.
The test data, or links to the test data, that are to be used
Test Data
while conducting the test.
Page | 227
CHAPTER 5 Results and
SCREENSHOTS
Home page
Page | 228
Sign In/UP
Package details
Page | 229
About us
My profile
Page | 230
Change password
Tour history
Page | 231
Screenshots Admin side
Admin login
Dashboard
Page | 232
Create packages
Manage packages
Page | 233
Manage Users
Manage Bookings
Page | 234
Manage Issue
Payment Gateway
Page | 235
Payment Gateway
Invoice
Page | 236
Chapter 6
However, with the emergence of online travel booking systems, travel agencies throughout the
world have been able to improve and enhance their travel services extensively and provide the
potential customers with far superior tour experience, even in this stiff competition. The
augmentation in travel technology solutions in recent years have made it possible for tour operators
to reach and target a wider audience while appealing them through highly innovative and striking
travel packages. Some of the ways by which travel agency systems has transformed the global
travel agencies are as follows:
1. Communicate with potential customers 24/7:- Bringing your travel business online would
allow you to impart your unique travel offers and dynamic packages to the travelers at any time of
the day. It increases engagement level with the customer and develop more sales opportunties
without giving much effort. At the same time, you can easily appeal to new & existing customers
by your exciting offers through online travel booking system.
2. Tracking of real time sales: One of the best way to determine if your business is moving in a
positive manner, is by tracking the sales of business products and services. The travel agent system
also helps the travel agency to real time sales, allowing the company to predict revenue and
compare earnings. This helps the management to make any necessary modifications in the system
to enhance the productivity and sales.
Page | 237
3. Online performance management: Performance management is a very critical process in
business management, which must be done accurately. Online travel booking systems showcase
the performance of the company and act as a critic for every activity performed. Whether it is hotel
or flight reservations, travel package booking, or any query related to the customer, it helps the
travel agencies to properly analyse and manage the performance of the busniess in a positive
direction.
4. Easy payment and customer support: The success of any business depends highly on its
customer service. In travel business, resolving the queries of the travelers rapidly is of utmost
importance and online travel booking systems help the company achieve just that. The potential
travelers can easily navigate through the system, find a suitable holiday product to book, make
payment easily using different UPIs and get speedy reply on any queries during the travel.
Page | 238
CONCLUSION
This project is built keeping in mind that it is to be used by only one user that is the admin. It is
built for use in small scale organization where the number of employees is limited. According to
the requested requirement the admin can add, manipulate, update and delete all employee data in
his organization. The admin can add new departments and delete them. The Admin can also add
predefined pay grades for the employees. The required records can be easily viewed by the admin
anytime time he wants in an instant. The payment of the employee is based on monthly basis.
Numerous validations implemented would enable the admin to enter accurate data. The main
objective of this framework is to save time, make the system cost effective and management
records efficiently.
Page | 239
Chapter 7
REFERENCES:
Websites:
www.w3schools.com
www.tutorialspoint.com
www.youtube.com
www.javatpoint.com
Page | 240