• User Attivo

    Ajax aggiornare dati + invio

    Ciao a tutti,

    partiamo dagli script.

    Script per aggiornamento pagina con i dati:

    //QUESTO SERVE PER L'AGGIORNAMENTO DEI DATI
    function Chat()
    {
    var xmlHttp;
    try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
    // Internet Explorer
    try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
    try
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch (e)
    {
    alert("Il tuo browser non supporta la chat!");
    return false;
    }
    }
    }
    xmlHttp.onreadystatechange=function()
    {
    if(xmlHttp.readyState==4)
    {
    document.getElementById("msg").innerHTML=xmlHttp.responseText;
    setTimeout('Chat()', 10000); //tempo di refresh generale
    }
    }
    xmlHttp.open("GET","file.php",true);
    xmlHttp.send(null);
    }
    setTimeout('Chat()', 5000);

    E questo è lo script per l'invio dei dati da form:

    function salva(){
    htmlRequest = ajax();
    if (htmlRequest==null){
    alert ("Il browser non supporta richieste HTTP");
    return;
    }
    // controlliamo i parametri obbligatori
    if(document.form_invio.testo.value == "" || document.form_invio.testo.value == "NULL")
    {
    alert('Inserisci il Testo');
    return;
    }
    // inviamo i parametri al file per l'INSERT nel database
    htmlRequest.open('POST', 'salva.php');
    htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    htmlRequest.send('testo='+document.form_invio.testo.value+'&global='+document.form_invio.global.value+'&usern='+document.form_invio.usern.value);
    // svuotiamo il modulo per il messaggio
    document.form_invio.testo.value = '';
    document.form_invio.testo.focus();
    }

    Per correttezza vi posto anche il form:

    <form name="form_invio" method="POST" onsubmit="salva(); return false;">
    <input type="text" name="testo" size="80%">
    <input type="hidden" name="global" value="0">
    <input type="hidden" name="usern" value="$userna">
    <input type="submit" name="submit" value="Invia">

    Io vorrei fare in modo che quando si invia il messaggio, vengono aggiornati automaticamente i dati della pagina file.php.

    Ho provato ad inserire

    xmlHttp.open("GET","file.php",true);
    xmlHttp.send(null);

    nello script salva, a fine script, però mi aggiorna completamente tutta la pagina..

    Avete idea di come posso risolvere?

    Grazie in anticipo, Saluti.


  • User Attivo

    Piccolo up? Nessuno ha soluzioni?