Po stronie serwera
Zakładając, że musisz sprawdzić $amount_of_tickets
okresowo i można to obliczyć w application.php , wewnątrz tego pliku będziesz miał
<?php
// $conn is defined and set somewhere
$amount_of_tickets = is_ticket_able($conn);
echo $amount_of_tickets;
exit(0);
?>
W ten sposób, gdy skrypt jest wywoływany za pomocą prostego GET request wartość jest zwracana w odpowiedzi jako zwykły tekst.
Strona klienta
ajax to najlepsza droga, jeśli chcesz zaktualizować informacje na stronie bez jej ponownego ładowania.
Poniżej znajduje się prosty przykład (za pomocą jQuery), który można rozszerzyć w celu dopasowania do Twoich potrzeb.
Poniższy kod to fragment kodu JavaScript. Wartość globalna służy do przechowywania wartości (należy unikać globalnych, ale to tylko na potrzeby przykładu)
Następnie wywoływana jest funkcja i zaktualizowana wartość jest pobierana z function.php skrypt.
Funkcja -przed zakończeniem- planuje się sama (za pomocą setTimeout
) do ponownego wywołania po określonej liczbie milisekund (aby powtórzyć proces pobierania wartości).
var global_isTicketAble = 0;
checkTicket();
function checkTicket()
{
$.ajax(
{
url: "application.php",
method: 'GET',
dataType: 'text',
async: true,
success: function( text )
{
global_isTicketAble = text;
// eventually do something here
// with the value just fetched
// (ex. update the data displayed)
setTimeout( checkTicket, 5000 ); // check every 5 sec
}
}
}
Zauważ, że $.ajax()
wysyła żądanie, ale nie czeka na odpowiedź (jako async
jest ustawiona na true
). Po otrzymaniu żądania funkcja określona jako success
jest wykonywany.
Kompletną dokumentację funkcji jQuery ajax można znaleźć tutaj
http://api.jquery.com/jquery.ajax/