Verification des champs et les espaces eregi()

Verification des champs et les espaces eregi() - PHP - Programmation

Marsh Posté le 18-11-2004 à 15:38:11    

Bonjour :)
J'ai un petit problème qui je pense est plutot simble à résoudre.
 
Lorsqu'une personne s'inscrit sur le site elle remplit un formulaire.
Elle doit mettre son nom, prénom, etc...
 
J'ai fait en sorte que si la personne met des caractères autres que des chiffres et des lettres ça ne fonctionne pas (a-z A-Z 0-9)
 
donc actulement j'ai ça :

Code :
  1. if ( !eregi("^[_a-zA-Z0-9-]*$", $_POST['nom']) )
  2. {
  3.  echo ( '<font color="FF0000">' . $i++ . '</font> : Le champ "Nom" peux contenir seulement des chiffres et des lettres.<br />' ) ;
  4. }


 
Ca fonctionne très bien à part que j'aimerais que les espaces sois autorisé.
Exemple si je veux m'inscrire avec le pseudo "LeToto" ça fonctionne mais si je veux m'inscrire avec "Le Toto" ça ne fonctionne pas.
 
Que dois je rajouter pour que les espaces fonctionnent ?
 
Merci d'avance :love:

Reply

Marsh Posté le 18-11-2004 à 15:38:11   

Reply

Marsh Posté le 18-11-2004 à 15:56:37    

masenko a écrit :


Que dois je rajouter pour que les espaces fonctionnent ?


Un espace quelque part entre les crochets de ta regexp ?
 

Code :
  1. ...
  2. if ( !eregi("^[ _a-zA-Z0-9-]*$", $_POST['nom']) )
  3. ...

Reply

Marsh Posté le 18-11-2004 à 16:09:08    

Il y a pas une solution plus propre ?
J'avais lu que pour les espaces il fallait faire \s car ça gérait les espaces et tabulations mais je ne sais pas comment placer ça.

Reply

Marsh Posté le 18-11-2004 à 16:48:39    

Voilou bon j'ai adopté cette solution :
 

Code :
  1. if ( !eregi("^[ '-_a-zA-Z0-9]*$", $_POST['nom']) )
  2. {
  3.  echo ( '<font color="FF0000">' . $i++ . '</font> : Le champ "Nom" peux contenir seulement des chiffres et des lettres non accentués.<br />' ) ;
  4. }


 
Pour info si j'avais voulu autoriser les accents et les sauts de ligne j'aurais mis
 

Code :
  1. if ( !eregi("^[ \n\r\tÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ'-_a-zA-Z0-9]*$", $_POST['nom']) )
  2. {
  3.  echo ( '<font color="FF0000">' . $i++ . '</font> : Le champ "Nom" peux contenir seulement des chiffres et des lettres.<br />' ) ;
  4. }


 
Voilà donc j'ai aussi autoriser le ' car c'est pas mal utilisé exemple l'helicoptere :)


Message édité par Masenko le 18-11-2004 à 16:53:46
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed