Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    37

    AIUTO come memorizzare variabili

    Ciao a tutti!

    Ho da poco iniziato ad ottimizzare un programma php/javascript creato un pò di tempo fa, dovendo evitare casi di perdita dei dati, mi trovo a dover risolvere il seg. problema:

    in un form con una serie di input text, circa 250, vengono inseriti dei dati da parte dell'operatore, a volte ci vuole molto tempo per compilare il tutto... fin tanto che il form viene compilato secondo l'esigenza del momento e viene processato dal pulsante submit, non ci sono grandi problemi(i dati vengono infatti salvati su db mysql) ma se per esempio l'operatore per errore dovesse premere il tasto backspace, cliccare su un pulsante all'interno della pagina stessa che lo reindirizzi altrove ecc. il lavoro (come detto a volte anche lungo) fatto per inserire i dati andrebbe perso.

    come è possibile memorizzare in una sorta di variabile temporanea tutti i dati immessi nei campi del form, e successivamente recuperarli?


    Grazie a tutti

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    667
    potrebbe esserti utile onbeforeuload

    http://forum.mrwebmaster.it/archive/...hp/t-3454.html

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    37
    grazie per la risposta, ma ho 1 domanda;
    come posso, utilizzare tale funzione, bloccare ad esempio il refresh della pagina?

    grazie ancora

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    37
    Riguardo alla possibilità di dividere il tutto in più step ci avevo pensato ma non è il massimo, e poi non credo possa funzionare, mi spiego;

    mentre scrive dei dati all'interno di una casella del form, per errore o altre circostanze premo il tasto backspace, o altri link...ciò comporta il reindirizzamento della pagina su cui sto laorando, ed i dati appena digitati non possono essere salvati in quanto all'atto del redirect php non può nulla e quindi nessuno gli dice di salvare in sessione i dati appena inseriti (magari con un ciclo...)
    se mi sbaglio faccio mea culpa (speriamo di si!)

    ciao e grazie!

    ps: un 3d tutto romano!

  6. #6
    Utente di HTML.it L'avatar di Alberto
    Registrato dal
    Oct 2004
    Messaggi
    1,870
    Beh se un utente mentre compila un form se ne va in giro col mouse e clicca sul refresh o altro...problemi suoi :berto:

    Se poi vuoi proprio essere gentile e consentire a questo tipo di utenti di non perdere ciò che hanno scritto, credo potresti risolvere con ajax

    p.s. W la capitale

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    37
    Hai perfettamente ragione (riguardo l'utente e la capitale!)
    potersti però spiegarmi cosa intendi dire con: "potresti risolvere con ajax"?

    hai esempi o link a riguardo?

  8. #8

  9. #9
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Faccio un esempio minimalista senza uso di ajax... ma solo per spiegare il concetto
    codice:
    <script>
    function trasmetti(obj) {
    	n = obj.name;
    	v = obj.value;
    	var ii = new Image();
    	ii.src = "conserva.php?nome="+n+"&valore="+v;
    }
    </script>
    ...
    <form>
    <input type="text" name="campo1" onblur="trasmetti(this)">
    <input type="text" name="campo2" onblur="trasmetti(this)">
    </form>
    Ovviamente la pagina sul server dovra' memorizzare da qualche parte i valori che riceve (per esempio nella session) .

    Ritengo pero' che il dover ridigitare tutti i dati potrebbe essere una buona lezione per fa capire all'utente che e' meglio non pasticciare con i pulsanti del browser

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