Forum Flash, Actionscript, PHP e MySQL
Cancellare dati form

 
Nuovo Topic   Rispondi    Forum Flash, Actionscript, PHP e MySQL » PHP
Precedente  Successivo 
Autore Messaggio
Eugene
principiante
principiante


Età: -1969
Registrato: 08/09/06 14:48
Messaggi: 60
Località: Dagobah

MessaggioOggetto: Cancellare dati form
Inviato: 23.09.07 | 19:00
Rispondi citando

Buonasera.

Ho un bellissimo form nel quale i campi vengono controllati lato server.
Se qualche campo non è stato correttamente compilato, si viene reindirizzati ad una pagina nella quale si informa dell'errore e si invita a tornare al form per completarne la compilazione.

Quindi, usando il tasto "indietro" si torna al form nel quale i campi eventualmente già compilati restano tali, limitando la compilazione a quelli lasciati vuoti inizialmente.

Fin qui tutto bene.

Ma nel caso in cui il form sia stato correttamente compilato, si viene mandati ad una pagina nella quale si informa dell'invio di un'email di conferma.

Se facciamo "indietro" da questa pagina, ritorniamo al form ancora compilato, ma stavolta non dovrebbe essere così, dal momento che una volta inviato il form si dovrebbe svuotare.

Nella speranza di aver esposto chiaramente la faccenda, qualcuno potrebbe indicarmi come risolvere quest'imprevisto?

Grazie.

____________________________________________________________
<-- Fare. O non fare. Non c'è provare. -->

www.yodastudio.com
segui YODA Studio su facebook
Torna in cima
Profilo Messaggio privato   HomePage MSN Messenger Skype
Sponsor
AngaraT
intermedio
intermedio



Registrato: 23/03/04 21:10
Messaggi: 152

MessaggioOggetto:
Inviato: 24.09.07 | 15:31
Rispondi citando

Ciao, forse non ho capito benissimo il tuo problema, ma se fosse dovuto al tasto "indietro" del browser dovresti inviare degli header supplementari come nell'esempio qui sotto

http://it.php.net/header

 
Codice:
/*http://it.php.net/header
Spesso gli scrit PHP generano contenuti dinamici, se volete evitare che i contenuti vengano mantenuti nella cache di browser o proxy, 
potete forzare il loro comportamento con questa direttiva:*/
//inizio direttiva
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");    
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");                                                    
header("Cache-Control: no-store, no-cache, must-revalidate");  
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");                       
//fine direttiva    
    
if(isset($_POST["azienda"])){$azienda=htmlentities($_POST["azienda"]);}else{$azienda=NULL;}
if(isset($_POST["nome"])){$nome=htmlentities($_POST["nome"]);}else{$nome=NULL;}
    
if($azienda==NULL || $nome==NULL){ // se non ho nessun valore vedo il form
    if($azienda=="" && isset($_POST['invia'])){echo ('<div>Compila il campo azienda</font></div>');}
    if($nome=="" && isset($_POST['invia'])){echo ('<div>Compila il campo nome</font></div>');}
    echo ('<form name="form1" method="post" action="">
            Nome <input name="nome" type="text" id="nome"  size="45" value="'.$nome.'" /><br />
            Azienda <input name="azienda" type="text" id="azienda" size="45" value="'.$azienda.'" /><br />
            <input name="cancella" type="reset" value="Reimposta" /> 
            <input name="invia" type="submit" value="Invia" />
        </form>    
    ');
} else { // altrimenti se ho premuto invio ed ho compilato tutti i campi inviola mail
    
    mail("info@eugene.eu","Oggetto","
        Nome: ".$_POST["azienda"]."
        Azienda: ".$_POST["azienda"]."
    ", "From: info@eugene.eu" );
        
    echo "Grazie, sarai ricontattato entro breve.";
}


spero di esserti stato utile, fammi sapere

Angarat
Torna in cima
Profilo Messaggio privato  
Eugene
principiante
principiante


Età: -1969
Registrato: 08/09/06 14:48
Messaggi: 60
Località: Dagobah

MessaggioOggetto:
Inviato: 11.10.07 | 18:20
Rispondi citando

Non ho avuto modo di provare il codice che hai indicato, ma mi sembra di capire che venga cancellato tutto il contenuto del form al momento dell'invio tramite la direttiva riportata.

In quale momento agisce questa direttiva?
Perchè l'ideale sarebbe se venisse eseguita solo all'invio della mail e non al caricamento della pagina php, dal momento che la pagina php potrebbe contenere dei controlli sui campi e quindi potrebbe essere necessario tornare indietro per modificare i campi non corretti.
In questo caso sarebbe opportuno ritrovare il form compilato.

In ogni caso grazie per l'aiuto.

____________________________________________________________
<-- Fare. O non fare. Non c'è provare. -->

www.yodastudio.com
segui YODA Studio su facebook
Torna in cima
Profilo Messaggio privato   HomePage MSN Messenger Skype
AngaraT
intermedio
intermedio



Registrato: 23/03/04 21:10
Messaggi: 152

MessaggioOggetto:
Inviato: 11.10.07 | 18:40
Rispondi citando

 
Eugene ha scritto:
...l'ideale sarebbe se venisse eseguita solo all'invio della mail....


mi sembra una modifica elementare da apportare allo script quella da te richiesta, prova lo scriptino che ti ho postato prima.

....
 
Codice:
if($azienda==NULL || $nome==NULL){ 
    //qui ci metto il form
} else {
    // qui metto tutto il resto l'invio mail e forse la direttiva... ;-)
}


....
Torna in cima
Profilo Messaggio privato  
Eugene
principiante
principiante


Età: -1969
Registrato: 08/09/06 14:48
Messaggi: 60
Località: Dagobah

MessaggioOggetto:
Inviato: 13.10.07 | 15:42
Rispondi citando

 
AngaraT ha scritto:
mi sembra una modifica elementare da apportare allo script quella da te richiesta...


Lo pensavo anche io, non appena mi sarà possibile fare qualche prova ti farò sapere.

Grazie mille.

____________________________________________________________
<-- Fare. O non fare. Non c'è provare. -->

www.yodastudio.com
segui YODA Studio su facebook
Torna in cima
Profilo Messaggio privato   HomePage MSN Messenger Skype
Mostra prima i messaggi di:   
Nuovo Topic   Rispondi    Forum Flash, Actionscript, PHP e MySQL » PHP Tutti i fusi orari sono GMT + 2 ore
Pagina 1 di 1

Discussioni Simili
Topic Autore Forum Risposte Ultimo Messaggio
Nessun nuovo messaggio Form che invia dati e file a database... roratonet PHP 4 28.09.11 | 05:34 Leggi gli ultimi messaggi
astroross15
Nessun nuovo messaggio Problema semplicissimo! PHP per cance... FarGrafix ActionScript & Server Side 5 02.08.08 | 16:59 Leggi gli ultimi messaggi
Coach
Nessun nuovo messaggio Output dati form in csv Rik PHP 4 22.11.06 | 12:20 Leggi gli ultimi messaggi
Rik
Nessun nuovo messaggio inserire dati da un form in un db mai PHP 4 23.12.03 | 12:37 Leggi gli ultimi messaggi
mai
Nessun nuovo messaggio Form di ricerca dati, come realizzarlo paperinik4 PHP 19 09.07.11 | 20:57 Leggi gli ultimi messaggi
paperinik4



 
Vai a:  
Non puoi inserire nuovi Topic in questo forum
Non puoi rispondere ai Topic in questo forum
Non puoi modificare i tuoi messaggi in questo forum
Non puoi cancellare i tuoi messaggi in questo forum
Non puoi votare nei sondaggi in questo forum
Non puoi allegare files in questo forum
Non puoi downloadare gli allegati in questo forum



Powered by phpBB © 2001, 2002 phpBB Group - phpBB SEO Designed by coachdesign - © 2003-2005