Générateur mdp
iamtheone
Messages postés
40
Statut
Membre
-
iamtheone Messages postés 40 Statut Membre -
iamtheone Messages postés 40 Statut Membre -
Bonjour,
Mon code qui permettrait de générer un mdp aléatoire ne fonctionne pas... :/ Je ne comprend pas. Je cherche une explication plutôt qu'une correction si possible (je veux comprendre)
Voici le code complet :
Merci.
Mon code qui permettrait de générer un mdp aléatoire ne fonctionne pas... :/ Je ne comprend pas. Je cherche une explication plutôt qu'une correction si possible (je veux comprendre)
Voici le code complet :
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
<script type="text/javascript">
var chain; var caracters; var caracter;
function genere() {
document.form.result.value= "";
chain = "azertyuiopqsdfghjklmwxcvbn";
if (document.form.figures.checked) {
chain += "1234567890";
};
if (document.form.specials.checked) {
chain += "!@#$&?%";
};
if (document.form.upperCase.checked) {
chain += "AZERTYUIOPQSDFGHJKLMWXCVBN";
};
var caracters = eval(document.form.caracters.value);
for (i=0, i<caracters, i++) {
var caracter = chain.charAt(Math.floor(Math.random() * chain.length));
document.form.result.value += "+caracter+";
};
//reset
chain = "azertyuiopqsdfghjklmwxcvbn";
document.form.figures.checked = false;
document.form.specials.checked = false;
document.form.upperCase.checked = false;
};
</script>
</head>
<body>
<h2>Mdp Generator</h2>
<p>Short description</p>
<form name="form">
Lenght : <input type="number" name="caracters" value="6"></input><br />
<input type="checkbox" name="figures"></input>Active figures<br />
<input type="checkbox" name="specials"></input>Active specials caracters<br />
<input type="checkbox" name="upperCase"></input>Active upper cases<br />
<input type="submit" name="genere" value="genere" onClick="genere()"></input><br /><br />
<input type="text" name="result" placeholder="your future password"></input>
</form>
</body>
</html>
Merci.
A voir également:
- Générateur mdp
- Generateur mdp - Télécharger - Sécurité
- Reinitialiser pc sans mdp - Guide
- Mettre un mdp sur un dossier - Guide
- Mdp bios oublié - Guide
- Generateur de cle windows 10 - Guide
Si tu regardes dans la console de ton navigateur..il te les affiche !
Par exemple .. pour un for ... ce sont les point-virgules qu'il faut utiliser ... pas les virgules !
for (i=0, i<caracters, i++) {Doit s'écrire :
for (var i=0; i<caracters; i++) {Tu utilises aussi des quotes inutilement..
par exemple :
A la place .. il suffit de mettre :
Bref .... voici le code corrigé
Je te laisse le regarder et comparer avec le tient pour comprendre tes erreurs....
<!DOCTYPE html> <html> <head> <title>Page Title</title> </head> <body> <h2>Mdp Generator</h2> <p>Short description</p> <form name="form"> Lenght : <input type="number" name="caracters" value="6"><br /> <input type="checkbox" name="figures">Active figures<br /> <input type="checkbox" name="specials">Active specials caracters<br /> <input type="checkbox" name="upperCase">Active upper cases<br /> <input type="button" name="genere" value="genere" onclick="generer();"><br /><br /> <input type="text" name="result" placeholder="your future password"> </form> <script type="text/javascript"> function generer(){ var chain; var caracters; var caracter; document.form.result.value= ""; chain = "azertyuiopqsdfghjklmwxcvbn"; if (document.form.figures.checked) { chain += "1234567890"; } if (document.form.specials.checked) { chain += "!@#$&?%"; } if (document.form.upperCase.checked) { chain += "AZERTYUIOPQSDFGHJKLMWXCVBN"; } var caracters = eval(document.form.caracters.value); for (var i=0; i<caracters; i++) { var caracter = chain.charAt(Math.floor(Math.random() * chain.length)); document.form.result.value += caracter; } //reset chain = "azertyuiopqsdfghjklmwxcvbn"; document.form.figures.checked = false; document.form.specials.checked = false; document.form.upperCase.checked = false; } </script> </body> </html>Faudrait aussi arrêter d'utiliser l'écriture : document.form.machintruc ... et utiliser à la place des ID pour tes éléments HTML et donc : document.getElementById('idmachintruc')
Les variables définies en dehors des fonctions sont "globales" (accessible dans toutes les fonctions).. alors que les variables définies DANS les fonctions ne sont accessibles qu'à celles ci.
Ensuite pourquoi mettre le JS à la fin du body .... pour qu'il ne soit actif qu'une fois que la page est totalement chargée... de plus cela permet d'afficher le HTML même si il y a des erreurs dans le JS
Pour ce qui est des ID .. et bien.. disons que c'est l'essence du javascript.
Pour "selectionner" les éléments on utilise les ID ... les class et en dernier recours les "name".
(les attributs name sont, par contre, les seuls utilisés en php )