Petit détail, avec HTML5 tu peux maintenant avoir des champs de formulaire typés qui "empêchent" l'envoi tant que le type est pas correct. T'as pas mal de types déjà faits, comme mail, numéro de téléphone, date, couleur, ...
Tu peux aussi faire cette vérification dynamiquement en javascript (t'as quelques excellents plugins qui font ça, type JQueryValidate) ; si ça ne suffit absolument pas (il faut toujours vérifier les données côté serveur avant de les manipuler), ça permet quand même, pour la plupart des cas, d'éviter d'aller poll le serveur inutilement si les infos sont incorrectes.