Expression régulière et mot de passe

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Expression régulière et mot de passe

par Jeaf16 » 28 nov. 2008, 19:46

Merci pour tout !

par jojolapine » 28 nov. 2008, 17:46

Oui c'est à peu près, note que je ne l'ai pas testée, c'est pour dire pas d'alphanumérique et pas d'espace, mais je ne sais plus si [[:alpha:]] prend en compte tout ça...

par Jeaf16 » 28 nov. 2008, 17:41

MErci, encore une petite explication

Que veux-dire ?

'#[^a-zA-Z0-9\s]+#'

J'aurai compris : qui ne contient pas un alphanumérique ?

Fabien

par jojolapine » 28 nov. 2008, 17:28

la même chose que ( dans la tienne ;)
C'est les délimiteurs qui sont plus ou moins au choix!

par Jeaf16 » 28 nov. 2008, 17:24

Merci je vais tester ça !
Que veux dire # dans ton expression régulière ?

par jojolapine » 28 nov. 2008, 16:33

Bonjour,
Moi je verrais bien un truc comme ça:
<?php
$mdp='abcDe@ie';
$secu=0;

if(preg_match('#[a-z]+#',$mdp)){
    $secu++;
}
if(preg_match('#[A-Z]+#',$mdp)){
    $secu++;
}
if(preg_match('#[^a-zA-Z0-9\s]+#',$mdp)){
    $secu++;
}
if(strlen($mdp)>7){
    $secu++;
}

//et là en fonction de la valeur de secu, tu peux dire si le mot de passe est nul, moyen ou dur...
?>

Expression régulière et mot de passe

par Jeaf16 » 28 nov. 2008, 16:16

Bonjour

Je cherche à déterminer le niveau de sécurité d'un mot de passe et je dois donc vérifier que mon mot de passe.
Je souhaiterais que mon mot de passe soit de longueur min 8, comporte au moins une majuscule, une minuscule et un caractère spécial.

Pour l'instant j'ai ça :
if (preg_match("([\w@^$/*-_]{8,10})",$passe))
{
return true;
}

Cependant l'analyse ne se fait pas sur tous les caractères, \w vérifie si au miins une fois il y a un de ces caractères mais pour tous les caractères.

Merci de votre aide
Fabien JEANNEAU