Mot de passe au hasard

Invité
Invité n'ayant pas de compte PHPfrance

27 oct. 2005, 18:50

salut

quelq'un peut m'aider a generer des mots de passes?

$chaine="abcdefghijk...1234567890";

echo $code;

alors que le code est genere de la chaine

merci

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

27 oct. 2005, 19:06


/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Mammouth du PHP | 19672 Messages

27 oct. 2005, 23:34

Sinon, une petite fonction que j'avais récupérée : simplifiée, voilà ce que ça donne:
<?php
/**
 * Génération du mot de passe
 * 
 * <p>Création d'une chaine de caractères choisis aléatoirement dans les caractères autorisés</p>
 * @param $longueur Int Nombre de caractères attendus, par défaut 8
 * @return String
 */
function generer($longueur = 8)
{
    $pass = "";
    //mot de passe de 8 caractères
    for($i = 0; $i < $longueur; $i++)
    {
        $num = rand(48,122);
        if(($num >= 97 && $num <= 122))
        {
            $pass .= chr($num);
        }
        elseif(($num >= 65 && $num <= 90))
        {
            $pass .= chr($num);
        }
        elseif(($num >= 48 && $num <= 57))
        {
            $pass .= chr($num);
        }
        elseif($num == 95)
        {
            $pass .= chr($num);
        }
        else
        {
            $i--;
        }
    }
    return $pass;
}
?>
Voici comment l'utiliser:
<?php
/* Utilisation */
$motdepasse = generer();
/* Utilisation en précisant une longueur différente */
$motdepasse2 = generer(6);
?>
<p><?php echo($motdepasse); ?></p>
<p><?php echo($motdepasse2); ?></p>
Le premier affichera un mot de passe de 8 caractères, le second en affichera du nombre de caractères mis en paramètre lors de l'appel.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: