Buongiorno a tutti,

sto realizzando il tipico script per la validazione lato server. Mi piacerebbe ricevere un consiglio, un parere sull'approccio che sto andando ad implementare. Chiaro è che se ce ne sono di migliori, sarò lieto di accorglierlo

Lo script funziona così:

1) Sei sulla pagina con il form chiamata "form.php" che contiene i campi;
2) Ad esempio, lasci il primo campo vuoto e clicchi su Invia, che ti porterà (tramite action del form) alla pagina con lo script, chiamata "check.php";

3) A questo punto, riassumendo, lo script è così composto:

Codice PHP:
<?php
# Script che analizza: check.php
session_start();

if (isset(
$_POST['invia_dati'])) {

 
$nome $_POST['nome']; # Vari strip_tags, ecc..

 
if ($nome == '') {

    
$err '<script type="text/javascript"> ..creo una dialog con jquery.. </script>';
    
$_SESSION['errore'] = $err# Metto la dialog contenente il messaggio di errore in $_SESSION
    
header('Location:path/to/form.php'); # Ritorno indietro e...
    
exit();

 }
}
?>
4) Quindi si ritorna indietro a pagina "form.php" e...

Codice PHP:
<?php
session_start
();
?>



<?php

if(isset($_SESSION['errore'])) {

  echo 
$_SESSION['errore'];
  unset(
$_SESSION['errore']);

}
?>


Tutto qua.

Succede quindi che lo script reindirizza indietro l'utente, visualizza la dialog jquery con l'errore e subito dopo distrugge la variabile che conteneva l'errore in modo tale che al refresh di pagina, essa non sarà più disponibile e quindi non verrà ri-visualizzata.

------

Domando:

E' un buon approccio?
E' un buon metodo?
Ci sono metodi migliori e più performanti?
Questo metodo presenta problemi di sicurezza?


Grazie in anticipo.