wighie Posté 16 Janvier 2007 Posté 16 Janvier 2007 Bonjour, J'ai un soucis dans un test ereg pour la validation d'un champ "nom" "prénom". Je souhaite contrôler la validité d'un champs en interdisant les chaines numérique, ou symbole... Jusqu'à présent j'utilisais ça : <?php if (eregi("[^A-Zéçèêëïîôû-]",$firstname) OR eregi("[^A-Zéçèêëïîôû-]",$lastname)) { // le prenom est incorrecte : 'Jean-Claude', 'René', 'François'... seront acceptés tandis que 'Jean+Paul' ou '123456' seront refusés. echo "<p style=\"color:red\">Erreur : il semble que votre nom ou votre prénom soit incorrect !</p>"; $erreur = "1"; }?> Mon soucis est qu'un nom composé du genre Pierre De La Gardière (rigolé pas j'ai justement le cas) ne passe pas ! Y a bien un truc du genre [:space:] mais je ne comprend pas comment l'ajouter ? Quelqu'un aurait une idée ? Merci d'avance.
Prélude Posté 17 Janvier 2007 Posté 17 Janvier 2007 Bonjour, Il faut cumuler un peu avec possibilité de mettre entre 2 et 60 caractères espace et tiret inclus : if(!ereg("^[A-Zéçèêëïîôû]| |-|".$autorise."]{2,60}$", $firstname)) { /// pas bon}
wighie Posté 18 Janvier 2007 Auteur Posté 18 Janvier 2007 (modifié) Tous d'abord un grand merci Juste une question, $autorise définis quoi ? Encore merci ! Modifié 18 Janvier 2007 par wighie
Prélude Posté 19 Janvier 2007 Posté 19 Janvier 2007 Oui.. Alors... euh... Autant pour moi, je ne t'ai donné que la moitié de mon code : $autorise = "éèêàâîïôùöëãõç";if(!ereg("^[A-Z]| |-|".$autorise."]{2,60}$", $firstname)) { /// pas bon} J'avais adapté un mélange entre ton morceau de code et le mien.
wighie Posté 29 Janvier 2007 Auteur Posté 29 Janvier 2007 Merci beaucoup, j'avoue que ereg n'est pas mon fort
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant