sql >> Databasteknik >  >> RDS >> Sqlserver

hur man hämtar data från sql-serverdatabasen i php utan att uppdatera sidan

Serversidan

Förutsatt att du behöver kontrollera $amount_of_tickets med jämna mellanrum och detta kan beräknas till application.php , i den filen har du

<?php

    // $conn is defined and set somewhere

    $amount_of_tickets = is_ticket_able($conn);

    echo $amount_of_tickets;
    exit(0);
?>

På detta sätt när skriptet anropas med en enkel GET begär att värdet returneras i svaret som enkel text.

Kundsidan

ajax är rätt väg att gå om du vill uppdatera information på sidan utan att ladda om den.

Nedan är bara ett enkelt exempel (med jQuery) som kan utökas för att passa dina behov.

Koden nedan är ett JavaScript-kodavsnitt. En global används för att lagra värdet (globaler bör undvikas men det är bara för syftet med exemplet)

Sedan anropas en funktion och det uppdaterade värdet hämtas från function.php manus.

Funktionen -före uppsägning- schemalägger sig själv (med setTimeout ) som ska anropas igen efter ett givet antal millisekunder (för att upprepa hämtningsprocessen).

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
            }
        }        
}

Observera att $.ajax() skickar begäran men väntar inte på svaret (som async är inställd på true ). När begäran tas emot anges funktionen som success exekveras.

Komplett dokumentation för jQuery ajax-funktioner finns här

http://api.jquery.com/jquery.ajax/



  1. MacOS Kan inte starta MySQL Server

  2. Java-program och mySQL-anslutningsproblem:Ingen lämplig drivrutin hittades

  3. Den lagrade proceduren är långsam i Entity Framework

  4. Fyll i INSERT med resultat från SELECT