Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1

    Popolare una variabile $_SESSION con AJAX

    Ciao a tutti, avrei la necessità da un form di salvare i risultati in una variabile $_SESSION e ho deciso di farlo in ajax solo che lo script sembra non funzionare...

    Ecco il codice:

    questa è la select che deve inviare i dati:
    codice:
        <select id="quantita" name="quantita" onChange="location.reload();">
            <option disabled>Seleziona la quantità</option>
            <option disabled>-----------</option>
            <option value="25">25</option>
            <option value="100">100</option>
            <option value="250">250</option>
            <option value="500">500</option>
            <option value="750">750</option>
            <option value="1000">1000</option>
        </select>
    metre questo è il codice ajax che si trova su un file esterne .js che viene incluso nell' head della pagina html
    codice:
    $(document).ready(function(){
    
       $("#quantita").change(function() {
    
       var dati = $('#quantita').attr('value');
    
        var data_send="quantita="+dati;
    
            $.ajax({
                type: "POST",
                url: "prodotti_session.php",
                data: data_send
               });
        });
    
    });
    ed ecco invece la pagina php che dovrebbe accogliere e popolare la varibile di sessione

    Codice PHP:
    $quantita $_POST['quantita'];

    $_SESSION['quantita'] = $quantita
    qualcuno può aiutarmi a capire dov'è l'errore?

    Grazie a tutti

  2. #2
    Specifica cosa non funziona.
    La variabile di sessione non viene valorizzata?
    L'evento onChange oltre che tramite jQuery è gestito in-line con un location.reload(), la pagina si ricarica?

  3. #3
    Si esatto, la variabile di sessione non viene valorizzata.

    Metre l'evento onChange="location.reload();" lo uso per fare in modo che la variabile una volta arrivata alla sessione sia visibile a schermo.

    Qualche suggerimento?

  4. #4
    il reload "interrompe" la chiamata Ajax, mettilo nella success:function()

  5. #5
    Ho modificato la funzione così ma non va, la variabile non viene valorizzata, in'oltre forzando il reload della pagina dalla funzione ajax mi crea l'effetto sfarfallio della pagina, cosa che vorrei evitare.

    codice:
    $(document).ready(function(){
    
       $("#quantita").change(function() {
    
       var dati = $('#quantita').attr('value');
    
       var data_send="quantita="+dati;
    
            $.ajax({
                type: "POST",
                url: "dominio/prodotti_session.php",
                data: data_send,
                success: function() {
                    window.location.reload(true);
                }
            });
        });
    
    });

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova con val() al posto di attr("value") nel elemento quantità
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Niente non ne vuole sapere di valorizzare la variabile

  8. #8
    Potrebbe essere la cache, modifica la chiamata così:
    codice:
            $.ajax({
                type: "POST",
                cache: false,
                url: "dominio/prodotti_session.php",
                data: data_send,
                success: function() {
                    window.location.reload(true);
                }
            });

  9. #9
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    @Luca dubito non mi risulta che l'invio in POST soffra di cache.
    @Simone posta tutto il documento
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  10. #10
    Avevo già considerato questa evenienza e avevo provato a disattivare la cache ma nulla di fatto.

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