Utilisation de preg_match

Résolu
FastFlood Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   -  
FastFlood Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je souhaiterais vérifier en PHP qu'un seul nom a été saisi dans mon champs de texte. Je souhaite donc autoriser les caractères alphabétiques, les caractères accentués et le tiret uniquement...

J'ai essayé de modéliser ca avec les expressions régulières mais cela ne marche pas. Voila mon test :

if (!preg_match("^([:alpha:]|[=a=]|[=e=]|[=i=]|[=o=]|[=u=]|-){2,50}$", $nom))
{
echo "erreur";
}
else
{
echo "ok";
}

D'avance merci pour votre aide :)

5 réponses

sly-bzh Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   118
 
bonjour,

Je ne connaissais pas cette manière de noter les accents ? Es-tu sûr de toi ??
De toute facon il y a beaucoup plus simple (mais ça autorisera également les _ je ne pense pas que ce soit un soucis pour toi)
	if (!preg_match("#^[\w-]{2,50}$#", $nom))
{
	echo "<br/>erreur";
}
else
{
	echo "<br/>ok";
}  


Voilà j'espère que ça te va...
0
FastFlood Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   3
 
Le souci c'est que les chiffres passent aussi de cette manière, et ca par contre ca pose problème :/
0
FastFlood Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   3
 
Je ne retrouve plus le site sur lequel j'ai vu qu'on pouvait utiliser des classes du genre [=a=]
0
sly-bzh Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   118
 
bah alors tu peux toujours faire une liste de ce que tu veux :
#^[A-Za-zéèàùêûôâ-]{2,50}$#
et tu peux rajouter autant de lettres avec accent que tu veux mais normalement celles-là devraient suffire
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
FastFlood Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   3
 
OK bah je vais arrêter de me casser la tête et je vais faire comme tu l'as proposé une liste des caractères autorisés :)

Je te remercie :)
0