Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    10

    Aggiornare una pagina php in un div

    Ciao,
    sono di nuovo impiantata in un bel problema.
    Ammetto di essere alle prime armi con ajax, ma ho incluso nella pagina principale del mio sito una libreria ajax che mi permette di caricare le pagine php all'interno dei div che costituiscono il layout.

    Per tanto ho questa funzione qua:

    codice:
    <script type="text/javascript" language="JavaScript">  
    AjaxRequest('menu_off.php', 'get', 'scrivimex');  
    function scrivimex(responso){ 	
    document.getElementById('mini').innerHTML = responso; }  
    </script>
    che mi carica la pagina menu_off all'interno del div con id mini quando si apre la pagina principale del sito. Tuttavia essendo che all'interno del div mini c'è un avviso per quando l'untente riceve nuovi messaggi necessito di ricaricare periodicamente la pagina menu_off.php. Nella pagina in questione ho inserito questo script :

    codice:
    <script type="text/javascript">  
    setTimeout("self.location.href='menu_off.php';", 10000);  
    </script>
    Ma la pagina non si ricarica.

    Qualcuno sa darmi un suggerimento?


    Inoltre ho riscontrato un'altro problema.
    Ho creato un ulteriore div in cui carico, allo stesso modo di prima, un'altra pagina: presenti.php.
    All'interno di presenti.php ho un form method post che ricarica sempre la stessa pagina, solo che me la apre in un'altra finestra, come se usassi targhet _new...


    aiuto

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    con ajax stai prendendo l'output della pagina php, ricaricando la pagina in php non succede nulla, casomai dovresti rifare la richiesta ajax

    Codice PHP:

    function aggiorna(){
        
    AjaxRequest('menu_off.php''get''scrivimex'); 
        
    setTimeout("aggiorna()"10000); 
    }


    function 
    scrivimex(responso){     
        
    document.getElementById('mini').innerHTML responso


    body.onload= function(){ aggiorna()} 
    quindi al caricarsi del body e ogni 10 secondi partirà la richiesta asincrona che aggiornerà #mini

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    10
    Grande funziona!

    però...

    ho fatto la stessa cosa con un altro div che ho chiamato presenti.
    Ho messo la funzione che carica ed aggiorna il div nella pagina principale del sito, in fondo e l'ho chiamata scrivipres.
    Poi nella pagina che ho caricato nel div presenti ho messo questo:


    codice:
    <input type="text" id="stato_mod" name="stato_mod" title="Modifica lo stato" style="width:100px; height:10px; font-size:9px" /> 
    <a href="javascript:AjaxRequest('elenco_utenti_presenti.php?stato_mod='+document.getElementById('stato_mod'), 'post', 'scrivipres'); ">     
    [img]img/bloc.png[/img]    
    </a>
    in sostanza ho tentato di ricaricare la stessa pagina passando la variabile stato_mod come metod post alla stessa pagina per poi poter modificare un campo nel database in relazione a quella variabile.
    Il problema è che non c'è verso di farlo funzionare...
    dove sbaglio?

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    non credo di aver capito

    tu hai la pagina html con

    Codice PHP:
        .
        .
        .
    <
    div id='presenti'></div>
        .
        .
        .
    <
    script type='text/javascript'>
        
    AjaxRequest('elenco_utenti_presenti.php''get''presenti');  
    </script> 
    e la pagina 'elenco_utenti_presenti.php' in cui hai

    Codice PHP:
    <?php
        
    .
        .
        .
    if (isset(
    $_POST['stato_mod']){
       
    //prendo qualcosa dal db
        
    .
        .
        .
    }
    ?>
    <input type="text" id="stato_mod" name="stato_mod" title="Modifica lo stato" style="width:100px; height:10px; font-size:9px" /> 
    <a href="java-script:AjaxRequest('elenco_utenti_presenti.php?stato_mod='+document.getElementById('stato_mod'), 'post', 'scrivipres'); ">     
    [img]img/bloc.png[/img]    
    </a>
    Io non capisco dove avviene il passaggio con method post visto che se passi dei parametri tramite querystring('myurl.php?parametro1=valoreparametro& parametro2=valoreparametro2'),in realtà te li ritrovi in $_GET e non in $_POST.

    Inoltre non vedo il perchè quel codice html lo fai generare alla pagina php se in realtà contiene tutti dati che puoi reperire dalla pagina che fa partire la richiesta asincrona

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 © 2025 vBulletin Solutions, Inc. All rights reserved.