IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Vérifier un champ de formulaire [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre actif Avatar de wace
    Inscrit en
    Septembre 2003
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 224
    Points : 263
    Points
    263
    Par défaut Vérifier un champ de formulaire
    Hi all,

    Apres maintes recherches et quelques touffes de cheveux en moins, je viens ici trouver des "Regex Master",

    Je voudrais avoir une expression reguliere qui me permet de verifier qu'une valeur ne contient QUE des characteres alphanumeric,

    C'est en liaison avec symfony et sfRegexValidator, mais je prefere poster mon probs ici car il me semble que c'est ma regex qui est incorrecte.

    voila le bout de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    specialValidator:
      class: sfRegexValidator
      param:
        match:        Yes
        match_error:  The nickname can not contains special character.
        pattern:     /[a-zA-Z0-9]*/
    Derriere ca il utilise la pattern dans la code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
      public function execute(&$value, &$error)
      {
        $match   = $this->getParameterHolder()->get('match');
        $pattern = $this->getParameterHolder()->get('pattern');
     
        if (($match && !preg_match($pattern, $value)) ||
            (!$match && preg_match($pattern, $value)))
        {
          $error = $this->getParameterHolder()->get('match_error');
     
          return false;
        }
     
        return true;
      }
    Si quelqu'un a une idée ?

    Update :

    J'ai trouver la solution tout seul :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    specialValidator:
      class: sfRegexValidator
      param:
        match:        Yes
        match_error:  The nickname can not contain special characters.
        pattern:      /^[A-Za-z0-9]*$/
    Si ca peut aider quelqu'un,

    Ca devrait peut être figurer dans la rubrique Symfonu

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 352
    Points : 15 698
    Points
    15 698
    Par défaut
    déjà utilise "xor" ça t'évitera de lancer deux fois "preg_match" qui consomme beaucoup de ressources

    ensuite fait des "echo" pour voir si les tests se font avec les bonnes informations :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
      public function execute(&$value, &$error)
      {
        $match   = $this->getParameterHolder()->get('match');
        $pattern = $this->getParameterHolder()->get('pattern');
     
        echo "match : $match<br/>\n";
        echo "pattern : $pattern<br/>\n";
     
        if ($match xor !preg_match($pattern, $value))
        {
          $error = $this->getParameterHolder()->get('match_error');
     
          return false;
        }
     
        return true;
      }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Vérifier ses champs de formulaire avec Javascript
    Par pit9.76 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 15/08/2011, 13h43
  2. Vérifier champ de formulaire et caractères interdits
    Par rekiem71 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/04/2007, 17h45
  3. [Formulaire] vérifier les champs d'un formulaire
    Par mariafan dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 28/12/2006, 19h05
  4. Vérifier le type d'un champs de formulaire
    Par guy2004 dans le forum Langage
    Réponses: 7
    Dernier message: 17/02/2006, 15h32
  5. [Formulaire] vérifier les champs avant enregistrement
    Par julien_t_m dans le forum Access
    Réponses: 5
    Dernier message: 16/10/2005, 20h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo