Visualizzazione dei risultati da 1 a 3 su 3

Discussione: history back e cache

  1. #1

    history back e cache

    Salve, Ho questo problema

    faccio compilare un form, poi uno clicca send e viene mandato ad una pagina di controllo. se tutto ok, va avanti, se c'è qualche errore viene visualizzato il mex di errore con la scritta torna indietro (con un link con l'history back) e correggi l'errore.

    il problema è che se uno torna indietro tutto il contenuto dei campi è stato cancellato, e uno deve riscrivere tutto.

    come posso fare per fare in modo che uno torna indietro e quello che ha scritto 5 secondi prima sia sempre li ?

    vi ringrazio.

  2. #2
    La soluzione migliore è complessa e richiede l'utilizzo delle sessioni + gli oggetti in php. In pratica prima di fare il back dovresti valorizzare degli oggetti in sessione con i valori che ti vengono passati dal form della prima pagina.

    Oppure altra soluzione: invece di fare il back dalla pagina di controllo puoi richiamare nuovamente la pagina con il form passando nuovamente tutti i parametri che salverai su dei campi hidden. un piccolo esempio delle 2 pagine

    paginaform.php
    codice:
      <form action=controllo.php>
        <input type=text name=campo1 value="<?=$_POST[campo1]?>">
         ....
         ..
      </form>
    controllo.php
    codice:
    <?
    // codice php di elaborazione, query controlli etc
    
    //se qualcosa va storto fai una submit del backform 
    ?>
    
      <form action=paginaform.php name=backform>
        <input type=hidden name=campo1 value="<?=$_POST[campo1]?>">
         ....
         ..
      </form>


  3. #3
    si alla seconda soluzione ci avevo pensato anche io ma speravo in qualcosa di meno lungo da scrivere..

    vabbè grazie mille, farò così.

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.