Visualizzazione dei risultati da 1 a 4 su 4

Discussione: AJAX e PHP

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    38

    AJAX e PHP

    Ciao ragazzi, sto impazzendo per fare una cosa che credo sia semplice.

    Mi spiego:
    Ho una pagina html semplicissima con un form fatto di due campi nascosti .
    Premendo un link su questa pagina, tramite javascript riesco a dare i rispettivi value ai due campi nascosti di tale form e a lanciare il submit.
    In questo modo però la pagina fa il refresh. Vorrei attraverso AJAX ,che invece,
    sia lo stesso ajax a intercettare il submit di questo form(proveniente da javascript),
    a prelevarmi i value, e a passarli ad una pagina php che li legge e effettua delle modifiche sul database.

    In pratica vorrei che quando uno clicca su questo link, i due valori nascosti del form vengano scritti sul database senza vedere nessun refresh, o al limite se questo non è possibile, vedendo il refresh di un solo div della pagina,il quale magari mi ritorna i valori aggiornati appena caricati sul database.

    Il file php lo so già, l'html pure, vorrei solo capire come si fa a fare in modo che ajax intercetti il submit del mio form nascosto(submit effettuato con un comando javascript),
    ne prelevi i value e li passi alla pagina php,(la quale li caricherà nel database), senza vedere refresh nella pagina.

    Vi ringrazio in anticipo per le risposte.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Ma non centra nulla il submit con ajax, se hai inserito il submit nel form toglilo se il pulsante del form e del tipo submit cambialo con il tipo button e quello associ un onclick che richiama la funzione Ajax, i dati li passi al onclick funzioneAjax('dato1','dato2') oppure le recuperi direttamente dalla funzione funxioneAjax(){var dato = document.getElementById('mi_id_dato1').value etc.....
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    38
    Ti ringrazio per la risposta.

    Il form non ha proprio il submit. Eccolo:

    <form class="prova" name="formnasc" action="" >
    <input type="hidden" name="idviews" id="idviews"/>
    <input type="hidden" name="azione" id="azione"/>
    </form>

    Questo è il link sulla pagina index.php che passa i value e fa il submit di tale form(e funziona):


    echo "
    <div class=Stile9 >
    <img border=0 src=picture/picc1.png />$ogg</div>";


    Poi in giro per la rete ho trovato, relativamente ad ajax che si può fare una cosa del genere, per intercettare il submit:


    $(function() {
    $('.error').hide();
    $('.prova').submit(function() { //Questa è l'struzione ajax che dovrebbe intercettare quel submit (ma non lo fa)

    alert (ciao);return false;
    $('.error').hide();

    var id = $("input#idviews").val();//qui dovrebbe prelevare il value del campo views etc etc
    if (id == "") {
    $("label#id_error").show();
    $("input#id").focus();
    return false;
    }
    var azione = $("input#azione").val();
    if (azione == "") {
    $("label#azione_error").show();
    $("input#azione").focus();
    return false;
    }

    var dataString = 'id='+ id + '&azione=' + azione ;


    $.ajax({
    type: "POST",
    url: "bin/process.php", // qui dovrebbe richiamare la pagina php passandolgi la stringa con idati
    data: dataString,
    success: function() {
    $('#prova').html("<div id='message'></div>");
    $('#message').html("<h2>Contact Form Submitted!</h2>")
    .append("

    We will be in touch soon.</p>")
    .hide()
    .fadeIn(1500, function() {
    $('#message').append("[img]images/check.png[/img]");
    });
    }
    });
    return false;
    });
    });


    Spero di essere stato chiaro. Il submit di quel form non lo fa l'utente premendo un tasto, ma lo fa javascript. Perchè la funzione ajax non intercetta quel submit sul form di classe prova?

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Il javascript puo' intercettare l'evento onsubmit generato dall'utente con il click nel pulsante apposito, non puo' intercettare la chiamata al metodo submit() del form, perche' nessun evento viene generato dal form stesso.

    Il fatto che evento e metodo abbiano nome simile non deve portare a confondere fra loro... sono concettualmente molto diversi.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

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.