Guarda questo semplice esempio, segui i commenti...
Prima pagina (pag1.php) Inizio del modulo con alcuni dati da inserire
Codice PHP:
<?php
session_start();
if(isset($_POST['submit'])) {
//esegui tutti i controlli del caso sui dati inviati e, se tutto è
//andato a buon fine, registri in sessione i valori interessati.
$_SESSION['nome'] = $_POST['nome'];
$_SESSION['cognome'] = $_POST['cognome'];
//dopo l'elaborazione dati, vai alla pagina successiva.
header('Location: pag2.php');
} else {
//se non sono stati inviati i dati stampi il form. (il value dei campi è stato
//valorizzato la rispettiva sessione per evitare di dover riscrivere
//di nuovo i dati, nel caso l'utente dovesse tornare indietro
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input tyep="text" name="nome" value="<?php echo isset($_SESSION['nome']) ? $_SESSION['nome'] : ''; ?>" />
<input tyep="text" name="cognome" value="<?php echo isset($_SESSION['cognome']) ? $_SESSION['cognome'] : ''; ?>" />
<input type="submit" name="submit" value="Esegui" />
</form>
<?php
}
?>
Seconda pagina (pag2.php) Prosieguo de modulo con altri dati da inserire
Codice PHP:
<?php
session_start();
if(isset($_POST['submit'])) {
//esegui tutti i controlli del caso sui dati inviati e, se tutto è
//andato a buon fine, registri in sessione i valori interessati.
$_SESSION['occupazione'] = $_POST['occupazione'];
$_SESSION['interessi'] = $_POST['interessi'];
//dopo l'elaborazione dati, vai alla pagina successiva.
header('Location: pag3.php');
} else {
//se non sono stati inviati i dati stampi il form. (il value dei campi è stato
//valorizzato la rispettiva sessione per evitare di dover riscrivere
//di nuovo i dati, nel caso l'utente dovesse tornare indietro
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input tyep="text" name="occupazione" value="<?php echo isset($_SESSION['occupazione']) ? $_SESSION['occupazione'] : ''; ?>" />
<input tyep="text" name="interessi" value="<?php echo isset($_SESSION['interessi']) ? $_SESSION['interessi'] : ''; ?>" />
<input type="submit" name="submit" value="Esegui" />
</form>
<?php
}
?>
Terza pagina (pag3.php) Riepilogo dei dati inseriti
Codice PHP:
<?php
session_start();
if(isset($_SESSION['nome']) && isset($_SESSION['cognome']) && isset($_SESSION['occupazione'])) {
//controlli se le variabili di sessione conteneti i dati
//sono state definite e in caso positivo stampi il riepilogo
echo "Riepilogo dati - Nome: {$_SESSION['nome']} Cognome: {$_SESSION['cognome']}";
//altri dati... poi esegui la query al database in base alle tue necessità...
}
else {
//altrimenti ritorni alla pagina inziale
header('Location: pag1.php');
}
?>
Questa è solo una delle possibili soluzioni. Ovviamente dovrai aggiungere i dovuti controlli sui dati inviati, durante i vari inserimenti e prima di eseguire la query. Non è un cosa impossibile, basta solo iniziare a fare dei tentativi nella direzione giusta...