par
filou80 » 04 mai 2024, 21:41
Bonjour,
Je bloque sur un controle de mot de passe, je souhaite que le mot de passe doit être compris entre 8 et 20 caractéres avec au moins :
1 lettre minuscule
1 lettre majuscule
1 chiffre
1 caractére spéciaux parmis @$!%*?&
peu importe l'ordre :
Voici mon code :
Code : Tout sélectionner
if (empty($motDePasse)) {
$error["motDePasse"] = 'Mot de passe obligatoire.';
} elseif (strlen($motDePasse) < 8 || strlen($motDePasse) > 20) {
$error["motDePasse"] = 'Le mot de passe doit contenir entre 8 et 20 caractères.';
} elseif (!preg_match('/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,20}$/', $motDePasse)) {
$error["motDePasse"] = 'Mot de passe non conforme.';
}
mais ceci ne fonctionne pas.
Merci par avances pour vos retour et votre aide.
Bonne soirée.
@+ Filou
Bonjour,
Je bloque sur un controle de mot de passe, je souhaite que le mot de passe doit être compris entre 8 et 20 caractéres avec au moins :
1 lettre minuscule
1 lettre majuscule
1 chiffre
1 caractére spéciaux parmis @$!%*?&
peu importe l'ordre :
Voici mon code :
[code]
if (empty($motDePasse)) {
$error["motDePasse"] = 'Mot de passe obligatoire.';
} elseif (strlen($motDePasse) < 8 || strlen($motDePasse) > 20) {
$error["motDePasse"] = 'Le mot de passe doit contenir entre 8 et 20 caractères.';
} elseif (!preg_match('/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,20}$/', $motDePasse)) {
$error["motDePasse"] = 'Mot de passe non conforme.';
}
[/code]
mais ceci ne fonctionne pas.
Merci par avances pour vos retour et votre aide.
Bonne soirée.
@+ Filou