Seat Reservation With Jquery And Php

Seat Reservation with jQuery

In my Online Bus Reservation System project, I got queries from many people about how to implement seat selection screen effectively. So, I decided to write on it. This post explains how to implement seat booking with jQuery. It can be used in online Bus, flight, hotel, exam support, cinema and ticket booking system.

 

seat reservation jquery

HTML:

<h2> Choose seats by clicking the corresponding seat in the layout below:</h2>

    <div id="holder">

        <ul  id="place">

        </ul>   

    </div>

    <div style="float:left;">

    <ul id="seatDescription">

        <li style="background:url('images/available_seat_img.gif') no-repeat scroll 0 0 transparent;">Available Seat</li>

        <li style="background:url('images/booked_seat_img.gif') no-repeat scroll 0 0 transparent;">Booked Seat</li>

        <li style="background:url('images/selected_seat_img.gif') no-repeat scroll 0 0 transparent;">Selected Seat</li>

    </ul>

    </div>

        <div style="clear:both;width:100%">

        <input type="button" id="btnShowNew" value="Show Selected Seats" />

        <input type="button" id="btnShow" value="Show All" />          

        </div>

We will add seats in “#place” element using javascript.

Settings:

To make it generalize, settings object is used.

var settings = {

               rows: 5,

               cols: 15,

               rowCssPrefix: 'row-',

               colCssPrefix: 'col-',

               seatWidth: 35,

               seatHeight: 35,

               seatCss: 'seat',

               selectedSeatCss: 'selectedSeat',

               selectingSeatCss: 'selectingSeat'

           };

rows: total number of rows of seats.
cols: total number of seats in each row.
rowCssPrefix: will be used to customize row layout using (rowCssPrefix + row number) css class.
colCssPrefix: will be used to customize column using (colCssPrefix + column number) css class.
seatWidth: width of seat.
seatHeight: height of seat.
seatCss: css class of seat.
selectedSeatCss: css class of already booked seats.
selectingSeatCss: css class of selected seats.

Seat Layout:

We will create basic layout of seats.

var init = function (reservedSeat) {

                var str = [], seatNo, className;

                for (i = 0; i < settings.rows; i++) {

                    for (j = 0; j < settings.cols; j++) {

                        seatNo = (i + j * settings.rows + 1);

                        className = settings.seatCss + ' ' + settings.rowCssPrefix + i.toString() + ' ' + settings.colCssPrefix + j.toString();

                        if ($.isArray(reservedSeat) && $.inArray(seatNo, reservedSeat) != -1) {

                            className += ' ' + settings.selectedSeatCss;

                        }

                        str.push('<li class="' + className + '"' +

                                  'style="top:' + (i * settings.seatHeight).toString() + 'px;left:' + (j * settings.seatWidth).toString() + 'px">' +

                                  '<a title="' + seatNo + '">' + seatNo + '</a>' +

                                  '</li>');

                    }

                }

                $('#place').html(str.join(''));

            };

            //case I: Show from starting

            //init();

            //Case II: If already booked

            var bookedSeats = [5, 10, 25];

            init(bookedSeats);

 

init method is used to draw seats layout. Already booked seats array will be passed as argument of this method.

Seat Selection:

?

$('.' + settings.seatCss).click(function () {

if ($(this).hasClass(settings.selectedSeatCss)){

    alert('This seat is already reserved');

}

else{

    $(this).toggleClass(settings.selectingSeatCss);

    }

});

$('#btnShow').click(function () {

    var str = [];

    $.each($('#place li.' + settings.selectedSeatCss + ' a, #place li.'+ settings.selectingSeatCss + ' a'), function (index, value) {

        str.push($(this).attr('title'));

    });

    alert(str.join(','));

})

$('#btnShowNew').click(function () {

    var str = [], item;

    $.each($('#place li.' + settings.selectingSeatCss + ' a'), function (index, value) {

        item = $(this).attr('title');                  

        str.push(item);                  

    });

    alert(str.join(','));

})

When user clicks on available seat, it is selected and second click on same seat will unselect seat. Button “Show All” will show all booked seat numbers and “Show Selected Seats” will show selected seats only.

CSS:

?

#holder{   

height:200px;   

width:550px;

background-color:#F5F5F5;

border:1px solid #A4A4A4;

margin-left:10px;  

}

#place {

position:relative;

margin:7px;

}

#place a{

font-size:0.6em;

}

#place li

{

 list-style: none outside none;

 position: absolute;  

}   

#place li:hover

{

background-color:yellow;     

}

#place .seat{

background:url("images/available_seat_img.gif") no-repeat scroll 0 0 transparent;

height:33px;

width:33px;

display:block;  

}

#place .selectedSeat

{

background-image:url("images/booked_seat_img.gif");         

}

#place .selectingSeat

{

background-image:url("images/selected_seat_img.gif");       

}

#place .row-3, #place .row-4{

margin-top:10px;

}

#seatDescription li{

verticle-align:middle;   

list-style: none outside none;

padding-left:35px;

height:35px;

float:left;

}

In my next post, you will get how to use this in asp.net project with sql server database .
https://www.pakainfo.com/seat-reservation-with-jquery-and-php/

What is GEEK

Buddha Community

I am Developer

1615040237

PHP jQuery Ajax Post Form Data Example

PHP jquery ajax POST request with MySQL. In this tutorial, you will learn how to create and submit a simple form in PHP using jQuery ajax post request. And how to submit a form data into MySQL database without the whole page refresh or reload. And also you will learn how to show an error message to the user if the user does not fill any form field.

And this tutorial also guide on how to send data to MySQL database using AJAX + jQuery + PHP without reloading the whole page and show a client-side validation error message if it has an error in the form.

PHP jQuery AJAX POST Form Data In Into MySQL DB Example

Just follow the few below steps and easily create and submit ajax form in PHP and MySQL with client-side validation.

  • Create Database And Table
  • Create a Database Connection File
  • Create An Ajax POST Form in PHP
  • Create An Ajax Data Store File

https://www.tutsmake.com/php-jquery-ajax-post-tutorial-example/

#jquery ajax serialize form data example #submit form using ajax in php example #save form data using ajax in php #how to insert form data using ajax in php #php jquery ajax form submit example #jquery ajax and jquery post form submit example with php

Hire PHP Developer

Looking to develop a PHP based website from scratch or revamp your existing website?

HourlyDeveloper.io has always been an industry leader for companies and business owners looking to hire PHP web developer. By choosing to Hire PHP Developer from our company, you can always expect the best results. Our PHP services and solutions are always flexible which means that no matter the nature of your project, you can always count on us for getting the best PHP expertise.

Consult with our experts: https://bit.ly/3aEGxPy

#hire php developer #php developer #php development company #php development services #php development #php

Hire PHP Developer - Best PHP Web Frameworks for Web Development

A framework that can drastically cut down the requirement to write original code to develop the web apps as per your requirement is PHP Framework. PHP frameworks offer code libraries for commonly used functions to reduce the development time.

Want to use PHP Web Frameworks for your web applications?

WebClues Infotech offers a service to hire dedicated PHP developers for all of the below-mentioned frameworks

  • Laravel Developer
  • Codeigniter Developer
  • Yii Developer
  • Zend Developer
  • Cake PHP Developer
  • Core PHP Developer

Not sure which framework to use for your PHP web application?

Contact us

Schedule Interview with PHP Developer https://bit.ly/3dsTWf0

Email: sales@webcluesinfotech.com

#hire php developer #hire php web developers #hire php developer in 2021 #hire php developers & dedicated php programmers #hire php developers india #hire and outsource freelance php developers

Hire Dedicated PHP Developer

Looking to hire affordable yet experienced PHP developers?

Hire Dedicated PHP Developer, who can convert your idea to reality, within the stipulated time frame. HourlyDeveloper.io expertise & experience as the top PHP development company put us above our competitors, in many ways. We have some of the top PHP developers in the industry, which can create anything you can imagine, that too, at the most competitive prices.

Consult with our experts:- https://bit.ly/2NpKnB8

#hire dedicated php developer #php developers #php development company #php development services #php development #php developer

Mariya James

Mariya James

1613990718

Top PHP web development company| PHP development services India

ValueCoders is a leading PHP app development company that focuses on building robust, secure & scalable web applications for start-ups, enterprises, and entrepreneurs.

We have 16+ years of experience and have delivered custom PHP web development solutions to 2500+ global clients catering industry verticals, including healthcare, adtech, eLearning, data analysis, Fintech, eCommerce, etc

Are you planning to outsource PHP development services? Or want to hire an offshore PHP development team?

#hire php developer #hire a php developer in india #hire dedicated php programmers #hire php coders #php developer in india #php developers for hire