Form: come tornare ai campi già compilati dopo invio

Marcello_php

Nuovo Utente
9 Ago 2021
3
0
1
Salve a tutti! Lavoro su un framwork proprietario.
Ho un form php in cui i campi sono definiti in un file chiamato base.env.php in questo modo:


Codice:
        $sf_vaccine['fields']['taxCode'] = new TextField('taxCode');
        $sf_vaccine['fields']['taxCode']->label = 'Codice fiscale';
        $sf_vaccine['fields']['taxCode']->addFlag(Field::NOT_EMPTY());
        $sf_vaccine['sheet']->addField($sf_vaccine['fields']['taxCode']);

Nel file insert.tp.php sono invece contenute le istruzioni da eseguire durante la fase di inserimento.

Il mio form (pop up) dopo aver premuto sul tasto "Inserisci" si aggiorna e nella stessa finestra mi stampa a video del testo con delle stringhe conteneti i valori inseriti nei campi prima di inviare il form. Ad esempio:

Il codice fiscale '
. $variabile['fields']['taxCode']->toStringValue()

Il mio problema è quello di, una volta inserito il formn e aver stampato il testo, avere la possibilità di tornare indietro al form con i campi compilati con i valori inseriti precedentemente per eventualmente modificarli se ci dovesse essere un errore.

Come potrei implementare questa funzionalità?

Grazie di cuore!
 
Ciao Marcello,
per ottenere quello che vuoi devi usare le sessioni; ti faccio un esempio col codice fiscale.
Il primo script da creare (che chiamerai ad es. resetta.php) si occuperà di resettare le variabili di sessione

PHP:
session_start();
$_SESSION['codice_fiscale']='';

quindi, con un'include, richiamerai il form dove, come prima istruzione, andrai a recuperare il valore della variabile di sessione:

PHP:
session_start();
$cf=$_SESSION['codice_fiscale'];

e nel campo di input inserirai anche la clausola value, valorizzandola con la variabile di sessione

PHP:
<input type.........value="<?php echo $cf ?>">

A questo punto il primo script da lanciare è resetta.php, che richiamerà il form, che presenterà il campo codice_fiscale vuoto, in quanto la variabile di sessione attualmente non contiene dati. Inserito il codice fiscale e passato il controllo al programma che si occuperà del recupero dei dati passati, tramite submit, una volta recuperato il valore passato lo dovrai assegnare alla variabile di sessione

PHP:
session_start();
$_SESSION['codice_fiscale']=$cf;

A questo punto se, per qualsiasi motivo, tornerai al form troverai il campo codice fiscale non più vuoto ma contenente gli ultimi dati inseriti per quel campo (il valore della variabile di sessione).
 
Ultima modifica:

Discussioni simili