Bonjour à nouveau, 
Je tente de faire un générateur de mot de passe. Un clic sur un bouton remplirait une textbox avec un mot de passe générer aléatoirement.
Voici le résultat :
 
  
Et voici le formulaire :
Puis voici là page du générateur :
Où est le problème ? Est-ce que c'est le fait d'avoir la modification de la base de données et le générateur sur la même page qui pose un problème ?
Cordialement,
lizeal
Modifié par lizeal (10 Feb 2014 - 16:43)
      
      
    Je tente de faire un générateur de mot de passe. Un clic sur un bouton remplirait une textbox avec un mot de passe générer aléatoirement.
Voici le résultat :
Et voici le formulaire :
<form name="add_user" method="post" action="ajouterAdherent_add.php">
<?php
$req="select * from adherent order by NomAdherent asc";
		$exec=mysql_query($req);
			  
		echo '<br>Nom de l adhérent : <select name="NomAdherent">';
		while ($ligne=mysql_fetch_array($exec))
		   {
				echo '<option value="'.$ligne['NomAdherent'].'">'.$ligne['NomAdherent'];   
		   }
		echo '</select><br>';
?>
<label for="mdpUtiliateur">Mot de passe :</label><br/>
          <input type="password" name="mdpUtilisateur" value="<? include('ajouterAdherent_add.php')?>" readonly="readonly"/><input type="button" value="Générer un mot de passe" onclick="<?include('ajouterAdherent_add.php')?>" />
<br>
           <input type="submit" name="submit" value="Ajouter l'adhérent" /></form>
Puis voici là page du générateur :
<?php
include "connexion.php";
$_SESSION['mess'] = '';
$_nomAdherent = htmlentities($_POST["nomAdherent"]);
$_mdpUtilisateur = htmlentities($_POST["mdpUtilisateur"]);
if (!isset($_nomAdherent) || !isset($_mdpUtilisateur))
{
    echo'
    <script>
        document.location="javascript:history.back()";
    </script>';
}
else
{
		$req="select NomAdherent, mdpUtilisateur from adherent where NomAdherent=$_nomAdherent";
		$exec=mysql_query($req);
		if (mysql_num_rows($exec)==0)
		{
			$num=1;
			}
			else
			{
			$ligne=mysql_fetch_array($exec);
			$num=$ligne['Id'] + 1;
		}
        $sql="update into adherent (mdpUtilisateur) values ('$mdpUtilisateur')";
		mysql_query($sql);
        header ("Location: ajouterAdherent.php");
}
?>
<!-- GENERATEUR DE MOTS DE PASSE -->
<?php
function genererMDP ($longueur = 8){
    // initialiser la variable $mdp
    $mdp = "";
 
    // Définir tout les caractères possibles dans le mot de passe, 
    // Il est possible de rajouter des voyelles ou bien des caractères spéciaux
    $possible = "2346789bcdfghjkmnpqrtvwxyzBCDFGHJKLMNPQRTVWXYZ";
 
    // obtenir le nombre de caractères dans la chaîne précédente
    // cette valeur sera utilisé plus tard
    $longueurMax = strlen($possible);
 
    if ($longueur > $longueurMax) {
        $longueur = $longueurMax;
    }
 
    // initialiser le compteur
    $i = 0;
 
    // ajouter un caractère aléatoire à $mdp jusqu'à ce que $longueur soit atteint
    while ($i < $longueur) {
        // prendre un caractère aléatoire
        $caractere = substr($possible, mt_rand(0, $longueurMax-1), 1);
 
        // vérifier si le caractère est déjà utilisé dans $mdp
        if (!strstr($mdp, $caractere)) {
            // Si non, ajouter le caractère à $mdp et augmenter le compteur
            $mdp .= $caractere;
            $i++;
        }
    }
 
    // retourner le résultat final
    return $mdp;
}
 
?>
Où est le problème ? Est-ce que c'est le fait d'avoir la modification de la base de données et le générateur sur la même page qui pose un problème ?
Cordialement,
lizeal
Modifié par lizeal (10 Feb 2014 - 16:43)