Publié le 11/10/2010
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Generer un mot de passe aleatoire

Dans la gestion des comptes membre, il arrive que l'internaute oublie son mot de passe. Plus personne ne stocke les mots de passe en clair dans les bases de donnée de son site internet. L'astuce consiste à envoyer un nouveau mot de passe pour l'identification du membre qui sera constitué de manière aléatoire.

Construire un mot de passe aléatoire

PasswordGenerator est une class static qui génère des mots de passe aléatoire. Les combinaisons sont assemblées de type suite de caractères ou alphanumérique. Le paramètre len fixe la longueur du mot de passe souhaité.
<?php
/**
 * Générer un mot de passe aléatoire
 * Fobec 2010
 */
 
class PasswordGenerator {
 
    const letters='aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWXxYyZz';
    const numbers='0123456789';
 
    static public function random($len, $usenumeric) {
        if ($usenumeric==true) {
            $stringlib=self::letters.self::numbers;
        } else {
            $stringlib=self::letters;
        }
 
        $plen = strlen($stringlib);
        $password='';
        for ($i = 1; $i <= $len; $i++) {
            $password.= substr($stringlib, rand(0,$plen), 1);
        }
 
        return $password; 
    }
}
?>

Exemple de mot de passe aléatoire

Utilisons la class pour générer un mot de passe de taille fixe et composé d'un type de cartactère.
<?php
/**
 * Exemple d'utilisation
 */
echo 'mot de passe de 10 caracteres: '.PasswordGenerator::random(10, false);
echo '<br>';
echo 'mot de passe de 8 caracteres ou chiffres: '.PasswordGenerator::random(8, true);
?>

Mots de passe générées
mot de passe de 10 caracteres: rIeTFtoPy
mot de passe de 8 caracteres ou chiffres: r1d51DXd

Le principe de la class est de présenter une manière de générer des mots de passe. Tout est possible, la liste des
caractère peut etre étendue à des caractères spéciaux ou encore le résultat peut etre encodé en MD5.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
php5 - script
Mise a jour
11/10/2010
Visualisation
vu 3675 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 265 articles
|BIO_PSEUDO|
Commentaires récents

Publié par BOKOMBEJEAN dans java

code source excellente,
maintenant comment l'afficher dans une zone de texte ou un champ de texte?

Publié par Fobec dans tuto

Merci pour la remarque Toluar,
Les user-agent sont effectivement un bon indicateur pour les utilisateurs. Les crawlers et robots en tout genre ne prennent pas toujours la peine de renseigner cette...

Publié par steev dans java

Bjr,
je voudrai savoir comment mettre le son en pause?
aussi comment faire qr qu'il tourne tjr?

Publié par Fokoneh dans java

Je teste d'abord, Je reviens

Publié par Amal dans tuto

pour moi j'ai créé une liste déroulante en liaisant avec la base de donnée déja existant mais la valeur sélectionné ne peut pas etre afficher jamais et...