Advertisement
marongiuchristian93

[JS] 5 - Random Password Generator

Apr 13th, 2012
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <html>
  2. <head>
  3. <title>Generatore Password Random</title>
  4. <meta name="author" content="Christian Marongiu" />
  5.  
  6. <script type="text/javascript">
  7. /*
  8. ##################################################################
  9. ## SCRIPT BY:   Christian Marongiu              ##
  10. ## INFO:    http://chrmar.altervista.org            ##
  11. ## CONTACT: christianmarongiu93@gmail.com           ##
  12. ##                              ##
  13. ## Pagina HTML/JavaScript per generare una password         ##
  14. ## random scegliendo lunghezza e difficoltà            ##
  15. ##################################################################
  16. */
  17.  
  18. var password_livello = "";
  19. function genera() {
  20. var password_lunghezza = document.getElementById("password_lunghezza").value; // prendo la lunghezza passw
  21. password_livello = document.getElementById("password_livello").value; // prendo il livello passw
  22. var errore = ""; // inizializzo errore come stringa
  23.     if(password_lunghezza == "" || password_livello == "") {
  24.     // Se uno dei campi da compilare e' vuoto
  25.         errore = "Rilevati campi vuoti! Compila il modulo come richiesto!";
  26.     }
  27.     else if(isNaN(password_lunghezza) || isNaN(password_livello)) {
  28.     // Se la lunghezza password inserita non e' un numero
  29.         errore = "La lunghezza della password e il livello della password devono essere numeri!";
  30.     }
  31.     else if(password_lunghezza < 6 || password_lunghezza > 32) {
  32.     // Se la lunghezza password e' un numero ma e' minore di 6 o maggiore di 32
  33.         errore = "La lunghezza della password non può essere minore di 6 o maggiore di 32";
  34.     }
  35.     else if(password_livello < 1 || password_livello > 3) {
  36.     // Se il livello password e' un numero ma e' minore di 1 o maggiore di 3
  37.         errore = "Il livello della password non può essere minore di 1 o maggiore di 3";
  38.     }
  39.  
  40.    
  41.     if(errore != "") {
  42.     // Se la stringa di errore non e' vuota stampo errore
  43.     alert(errore);
  44.     }
  45.     else { 
  46.     // Se la stringa di errore e' vuota quindi non ho errori
  47.         var password_generata = ""; // inizializzo la passw generata
  48.         var caratteri = "";        
  49.         switch(password_livello) {
  50.         case "1":
  51.             // se il livello passw e' 1
  52.             // abilito l'inserimento di soli caratteri
  53.             caratteri = new 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");
  54.             break;
  55.         case "2":
  56.             // se il livello passw e' 2
  57.             // abilito l'inserimento di soli caratteri e numeri
  58.             caratteri = new 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","0","1","2","3","4","5","6","7","8","9");
  59.             break;
  60.         case "3":
  61.             // se il livello passw e' 3
  62.             // abilito l'inserimento di caratteri, numeri, simboli
  63.             caratteri = new 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","0","1","2","3","4","5","6","7","8","9","!","@","#","$","%","^","&","*","(",")","-","+","=","_",",",";",":",".","<",">","?");
  64.             break;
  65.         default:
  66.             break;         
  67.         }
  68.         var lunghezza_array = caratteri.length;    
  69.         var numero_random;     
  70.         for(i=0;i<password_lunghezza;i++) {        
  71.             numero_random = Math.floor(Math.random()*lunghezza_array); // genero un numero random
  72.             // *lunghezza_array indica i casi possibili in base a quanti elementi ha l'array
  73.             // math.floor restituisce l'intero di un numero
  74.             // perche random genera un qualsiasi numero anche decimale
  75.             password_generata += caratteri[numero_random];
  76.         }
  77.         if(password_generata != "") {
  78.         // se la pw generata non e' vuota
  79.             document.getElementById("password_generata").value=password_generata; // cambio il campo input
  80.             return false; // return false per mantenere fermi i dati nella pagina altrimenti spariscono
  81.         }
  82.     }
  83. } // Fine funzione
  84. </script>
  85. </head>
  86.  
  87. <body>
  88. <form name="password" id="password" method="post">
  89. Come deve essere la password da generare?
  90. <br><br>
  91. Lunghezza password (da 6 a 32): <input type="text" size="4" id="password_lunghezza" />
  92. <br><br>
  93. Livello di difficoltà (da 1 a 3): <input type="text" size="4" id="password_livello" />
  94. <br><br>
  95.  
  96. <button onClick="return genera()">Genera!</button><br>
  97. <br>
  98. Password generata casualmente:
  99. <input type="text" size="48" id="password_generata">
  100. </div>
  101.  
  102. </form>
  103. </body>
  104. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement