PHP CSRF Forme de jeton + validation des conseils

J'ai un formulaire de soumission, avec 9 champs, 6 qui nécessitent une validation, y compris un champ de téléchargement avec une taille de fichier de fichier et le type de validation.

La génération d'un jeton aléatoire, pour éviter CSRF est au travail, mais quelle est la façon correcte de le valider lors de l'utilisation d'un jeton?

Si je ne la validation dans le même fichier, le jeton est régénérée avec la validation de la recharger. (cela peut-il être évité? J'ai essayé isset() mais encore se régénère.) Toutefois, en utilisant le même fichier empêche les utilisateurs Nom et l'adresse Électronique d'être stockées dans une session.

Est-il préférable de faire de la validation dans un fichier séparé, qui redirige ensuite vers le formulaire de base des variables dans l'URL pour chaque erreur, c'est à dire http://www.example.com/form?n=1

À l'aide d'un fichier séparé permettrait également de stocker les données du formulaire à l'intérieur de session, de sorte que le formulaire peut être rempli à nouveau si des erreurs existent sur la redirection.

Toute aide reçue avec gratitude.

OriginalL'auteur Chris Eagle | 2011-06-30