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 :

longueur comprise entre 4 et 15 caractères


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Avatar de elitemedia
    Profil pro
    Inscrit en
    Août 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 115
    Par défaut longueur comprise entre 4 et 15 caractères
    Salut,

    Je dois tester si une chaine de caractères contient bien au moins 4 caractères et au maximum 15.

    J'ai fais ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $valuelen = strlen($value);
    if($valuelen < 4 || $valuelen > 15)
    {
        echo 'Votre mot de passe ne contient pas le nombre de caractères suffisants ou contient trop de caractères. Celui-ci doit être d\'un minimum de 4 caractères et d\'un maximum de 15 caractères.';
    }
    Ca marche, mais ma question est: Peut-on faire plus simple ?

    Peut etre avec une expression réguliere car j'aimerais en plus controler si il n'y a pas de code malicieux, pas d'espace, etc... C'est pour un champ Password.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Hello,

    En expression régulière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if (!preg_match('~^([a-z0-9]{4,15})$~i', $value))
    {
    echo 'PAS OK';
    }
    else
    {
    echo 'OK';
    }
    Dans cet exemple de base, seuls les caractères alphanumériques sont autorisés, il doit y en avoir au min. 4 et au max., 15...

    Il existe surement d'autres solutions pour le même résultat.

    Bye
    Dernière modification par Invité ; 18/11/2006 à 00h47. Motif: Correction de l'exemple...

  3. #3
    Membre confirmé
    Avatar de elitemedia
    Profil pro
    Inscrit en
    Août 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 115
    Par défaut
    Merci Guardian, tu m'as mis sur la voie. J'ai un peu retouché ton expression car tel que tu me l'as donnée ca ne fonctionnait pas (Erreur signalée par PHP), donc du coup ce qui fonctionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (!preg_match('#^[[:alnum:]]{4,15}$#',$value)) { //... }

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par elitemedia
    Merci Guardian, tu m'as mis sur la voie. J'ai un peu retouché ton expression car tel que tu me l'as donnée ca ne fonctionnait pas (Erreur signalée par PHP), donc du coup ce qui fonctionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (!preg_match('#^[[:alnum:]]{4,15}$#',$value)) { //... }
    Oui excuse-moi, j'ai pas pris le temps de tester (...) .

    Voici le code fonctionnel :

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if (!preg_match('#^([a-z0-9]{4,15})$#i', $value))
    {
    echo 'Pas OK';
    }
    else
    {
    echo 'OK';
    }

    Et effectivement, on peut substituer avec :alnum:.

    Bye

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 19/11/2013, 02h52
  2. Réponses: 1
    Dernier message: 18/07/2013, 23h08
  3. Réponses: 4
    Dernier message: 06/07/2011, 09h35
  4. Réponses: 3
    Dernier message: 03/11/2009, 07h19
  5. Récupérer la chaine de caractères comprise entre deux caracteres
    Par zaz147 dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 22/09/2008, 17h15

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