Serversiden
Forudsat at du skal tjekke $amount_of_tickets
periodisk, og dette kan beregnes til application.php , inde i den fil, du har
<?php
// $conn is defined and set somewhere
$amount_of_tickets = is_ticket_able($conn);
echo $amount_of_tickets;
exit(0);
?>
På denne måde, når scriptet startes med en simpel GET anmod om, at værdien returneres i svaret som simpel tekst.
Kundeside
ajax er vejen at gå, hvis du vil opdatere information på siden uden at genindlæse den.
Nedenfor er blot et simpelt eksempel (ved hjælp af jQuery), der kan udvides til at passe til dine behov.
Koden nedenfor er et JavaScript-kodestykke. En global bruges til at gemme værdien (globaler bør undgås, men det er kun til formålet med eksemplet)
Derefter aktiveres en funktion, og den opdaterede værdi hentes fra function.php script.
Funktionen -forudgående opsigelse- planlægger sig selv (med setTimeout
) skal genkaldes efter et givet antal millisekunder (for at gentage processen med hentning af værdi).
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
}
}
}
Bemærk, at $.ajax()
sender anmodningen, men venter ikke på svaret (som async
er indstillet til true
). Når anmodningen modtages, er funktionen angivet som success
udføres.
Fuldstændig dokumentation for jQuery ajax-funktioner kan findes her
http://api.jquery.com/jquery.ajax/