Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481

    funzione lanciata ogni n secondi in automatico

    Mi sto pian piano "impratichendo" con js, ed anche qualcosina di ajax, ora però sono ad un punto morto, nel senso che vorrei creare una funzione che viene lanciata in automatico ogni x secondi. Praticamente deve essere una chiamata ajax che interroga una seconda pagina (php) che fa una query su un db ed in caso di esito positivo, attraverso ajax mi fa comparire un box sulla pagina 1.

    Quindi la questione è, come si crea una funzione che viene richiamata ogni x secondi? Poi il resto piano piano dovrei riuscire a sbrigarlo.

  2. #2
    Ti basta utilizzare la funzione setInterval
    «Non esiste mondo fuor dalle mura di Verona; ma solo purgatorio, tortura, inferno. Chi è bandito di qui, è bandito dal mondo e l'esilio dal mondo è morte...»
    - William Shakespeare -

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    ho un esempio che fa esattamente questo

    La pagina ha una tabella dati letta da database, ed un grafico dei dati, letti dal database nel server. Puoi immaginare una centralina che invia a intervalli regolari, dati sull'inquinamento aria ad un server.

    Il client vede i dati tabellati più il grafico.
    Il codice è semplice:
    nel metodo che riceve i dati via ajax, si mette la funzione setTimeout

    il codice di esempio è:
    codice:
    <%@ Page Language="VB" AutoEventWireup="false" CodeFile="controllo database 1.aspx.vb" Inherits="CorsoApogeo_ajax_semplice_ajax_controllo_database_1" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title>Pagina senza titolo</title>
        <link href="../../../stili/Styles.css" rel="stylesheet" type="text/css" />
    
        <script type="text/javascript" src="../../../js/libreria.comp.js"></script>
    
        <script language="javascript" type="text/javascript">
    // <!CDATA[
    window.onload = function()
    {
        controlla_database();
    }
    
    var responseTextOld = "";
    function controlla_database()
    {
        ajax("?comando_ajax=controlla_database", onload);
        function onload()
        {
            if(responseTextOld != this.request.responseText)
            {
                responseTextOld = this.request.responseText;
                $("div1").innerHTML = this.request.responseText;
                $("img1").src = "?comando_ajax=p_img&" + Math.random()*1234567;
            }
    
            window.setTimeout(controlla_database,1000);
        }
    }
    
    // ]]>
        </script>
    
    </head>
    <body>
        <form id="form1" runat="server">
            <span>Aggiungere righe nella tabella tabella7, direttamente da Access e vedere il risultato con chiamate ajax continue</span>
            <hr />
            <div id="div1"></div>
            <hr />
            [img]?comando_ajax=p_img[/img]
        </form>
    </body>
    </html>
    Pietro

  4. #4
    Utente di HTML.it L'avatar di james
    Registrato dal
    Jun 2002
    Messaggi
    1,481
    grazie mille, informazioni utilissime, mi metto a studiare il funzionamento!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.