Merci !
Ah, tu me l'apprends ! (Comment fait-on dans ce cas ?).Petite précision, si le mot de passe est seulement crypté alors si il est possible de lui redonner son mot de passe, c'est si il est hashé qu'on ne peut pas revenir au mot de passe de départ.
// On indique que le mot de passe aléatoire contiendra entre 8 et 20 caractères
$nbre_caracteres = rand(8,20);
// On créé un tableau contenant la liste des caractères qui pourront être utilisés pour le nouveau mot de passe
$liste_caracteres = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','1','2','3','4','5','6','7','8','9','0');
// On initialise la variable $nv_pass
$nv_pass = '';
// On effectue une boucle qui choisira aléatoirement des caractères...
// ... parmi la liste et retournera autant de caractères qu'il aura été défini...
// ... par la variable $nbre_caracteres
for ($i = 0 ; $i < $nbre_caracteres ; $i++) {
// A chaque passage de la boucle on détermine aléatoirement un chiffre entre 0 et 61...
// Ce qui correspond au nombre de caractère contenus dans le tableau de la variable $liste_caracteres
$choix_caracteres = rand(0,61);
// On affecte à chaque passage de la boucle le caractère...
// ... qui aura été sélectionné dans la variable $nv_pass
$nv_pass .= $liste_caracteres[$choix_caracteres];
}
$mail_destinataire = $mail;
$entete .= 'Bonjour '.$pseudo;
$titre = 'Monsite.fr - Demande de nouveau mot de passe';
$message = '
Vous avez reçu cet email depuis le site http://www.monsite.fr
Votre nouveau mot de passe est : '.$nv_pass.'
Veuillez le noter pour éviter de l\'égarer.
Cordialement, l\'équipe de monsite.fr';
mail($mail_destinataire, $titre, $message, $entete);
Voilà, testé et approuvé par mes soins (mais certainement améliorable), en espérant que cela pourra t'aider !