Compartir password generator en tu social media
Abrir menú principal
Password generator

Generador de contraseñas php

Crear un generador de contraseñas aleatorias en PHP

Te explicamos cómo hacer un sencillo formulario para generar una contraseña basándose en patrones combinatorios de php. Con este generador de contraseñas podrás seleccionar desde los caracteres, minúsculas, mayúsculas, números y caracteres especiales, además de la longitud que desees para la contraseña y por último al pinchar sobre el botón "generar contraseña" te creara una clave única completamente aleatoria.

El siguiente tutorial esta realizado en: Php + Html + jquery

1 Generar password aleatorio en PHP en 1 linea de código

Ejemplo de como crear una contraseña aleatoria en PHP de manera rápida, en una linea de código.

<?php $psswd = substr( md5(microtime()), 1, 8); echo $psswd; ?>

2 Generar contraseña aleatoria en PHP en 9 líneas de código

Primero abre un archivo.txt, luego copia y pega las siguientes líneas de código en una página llamada: generador.php

<?php if(isset($_POST["caracteres"]) && isset($_POST["numcaracteres"])){ $numcaracteres = $_POST["numcaracteres"]; $caracteres = $_POST["caracteres"]; if($numcaracteres >= 6 && $numcaracteres <= 16){ $mayusculas = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; $minusculas = "abcdefghijklmnopqrstuvwxyz"; $numeros = "0123456789"; $c_especiales = "?!*-+_%#/=()"; $aux = floor($numcaracteres / count($caracteres)); $residuo = $numcaracteres % count($caracteres); $bandera = false; if($residuo != 0) $bandera = true; for($i=0; $i<count($caracteres); $i++){ if( $caracteres[$i] == "minusculas"){ if($bandera){ $bandera = false; $max = $aux + $residuo; } else $max = $aux; for($x = 0; $x < $max; $x++) $arraypassword[] = substr($minusculas, rand(0, strlen($minusculas)-1),1); } if( $caracteres[$i] == "mayusculas"){ if($bandera){ $bandera = false; $max = $aux+$residuo; } else $max = $aux; for($x = 0; $x < $max; $x++) $arraypassword[] = substr($mayusculas, rand(0, strlen($mayusculas)-1),1); } if( $caracteres[$i] == "numeros"){ if($bandera){ $bandera = false; $max = $aux+$residuo; } else $max = $aux; for($x = 0; $x < $max; $x++) $arraypassword[] = substr($numeros, rand(0, strlen($numeros)-1),1); } if( $caracteres[$i] == "c_especiales"){ $max = $aux; for($x = 0; $x < $max; $x++) $arraypassword[] = substr($c_especiales, rand(0, strlen($c_especiales)-1),1); } } shuffle($arraypassword); foreach ($arraypassword as $caracter) echo $caracter; } } ?>

Guarda el .txt con la extensión .php , este código se encarga de crear la clave dentro del campo de texto llamado "Contraseña" en el siguiente formulario.

3Crea la página HTML que contiene el formulario generador

Abre otro archivo.txt copia y pega el siguiente código en su interior, llama a esta página: generadorclaves.html

<!DOCTYPE html>
<html><head><title>Generador de contraseñas aleatorio</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" property="stylesheet" href="css/generador.css"/>
<link rel="shortcut icon" href="https://passwordgenerator.es/images/iconos/favicon.png" type="image/x-icon"/>
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=0"/>
<link href="https://fonts.googleapis.com/css?family=Poppins:400,500,600,700" rel="stylesheet">
</head>
<body> <div class="generador animated fadeIn"> <h1>Generador de contraseñas</h1> <form id="frmPasswords"> <div class="col1"> <input type="checkbox" name="caracteres[]" id="c1" value="mayusculas" checked /> <label for="c1"><span></span>A-Z</label> </div> <div class="col2"> <input type="checkbox" name="caracteres[]" id="c2" value="minusculas" checked /> <label for="c2"><span></span>a-z</label> </div> <div class="col3"> <input type="checkbox" name="caracteres[]" id="c3" value="numeros" checked /> <label for="c3"><span></span>0-9</label> </div> <div class="col4"> <input type="checkbox" name="caracteres[]" id="c4" value="c_especiales" /> <label for="c4"><span></span>?-!*</label> </div> <label>Número de caracteres</label> <input type="text" name="numcaracteres" id="numcaracteres" size="2" value="10"/> <input type="button" name="btnGenerar" id="btnGenerar" value="Generar contraseña"/> <input type="text" name="txtPassword" id="txtPassword" value="BIdU2T38xk"/> </form> </div> <div class="footer"><p><a href="https://passwordgenerator.es/" target="_blank">Password generator</a><sup>V1</sup></p></div>
</body>
<script type="text/javascript" src="https://passwordgenerator.es/demo/js/jquery.min.js"></script>
<script type="text/javascript">
function validaForm(){
var errores = "";
var respuesta = true;
if( !$("input[name|='caracteres[]']").is(':checked') ){respuesta = false;errores += "Checbox: Debes seleccionar al menos una opcion \\n" ;}
var numcaracteres = $("#numcaracteres").attr('value');
if( numcaracteres == '' || ( numcaracteres < 6 || numcaracteres > 16 ) ){respuesta = false;errores += "Los caracteres para la contraseña deben estar entre 6 y 16";}
return '{"valor": ' + respuesta + ', "mensaje": "' + errores + '"}';}
$(document).ready(function(){ $("#btnGenerar").click(function(){	respuesta = validaForm();	respuesta = jQuery.parseJSON(respuesta);	if( respuesta.valor == true ){	$.ajax({	url: "generador.php", type: "POST",	data: $("#frmPasswords").serialize(),	dataType: "html", success: function(password) { $("#txtPassword").attr('value',password); }	}); } else	alert(respuesta.mensaje); });
});
</script>
</html>

¡Eso es todo!, con estos 2 archivos ya lo tendrías

Si deseas ver una demo de este tutorial haz clic aquí o descargar este generador de contraseñas php.

Otros códigos fáciles relacionados con generador de contraseñas php

Generador de contraseñas html y javascript

Ejemplo simple javascript para generar una contraseña aleatoria.

<script type="text/javascript">
function generar(longitud)
{ long=parseInt(longitud); var caracteres = "abcdefghijkmnpqrtuvwxyzABCDEFGHIJKLMNPQRTUVWXYZ2346789"; var contraseña = ""; for (i=0; i<long; i++) contraseña += caracteres.charAt(Math.floor(Math.random()*caracteres.length)); document.getElementById("pass").innerHTML=contraseña;
}
</script>
<p id="pass"></p>
<form id="Form" name="aleatorio" method="post" action="JavaScript:generar(document.aleatorio.long.value)" >
<input name="long" type="number" id="texto" autocomplete="off" placeholder="Longitud de la contraseña" required="">
<button type="submit" >Generar</button>
</form>

Generar código aleatorio en php

Con esta simple función se puede generar códigos aletorios. Muy útil para crear contreseñas aleatorias o códigos de verificacón entre otras cosas.

<?php
function generarCodigo($longitud) { $key = ''; $pattern = '1234567890abcdefghijklmnopqrstuvwxyz'; $max = strlen($pattern)-1; for($i=0;$i < $longitud;$i++) $key .= $pattern{mt_rand(0,$max)}; return $key;
}
//Ejemplo de uso
echo generarCodigo(6); // genera un código de 6 caracteres de longitud.
?>

Generar hash aleatorio php

Ejemplo 1 - Obtiene una cadena aleatoria con rand().

<?php
//Método con rand()
function generateRandomString($length = 10) { $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; $charactersLength = strlen($characters); $randomString = ''; for ($i = 0; $i < $length; $i++) { $randomString .= $characters[rand(0, $charactersLength - 1)]; } return $randomString;
}
?>

Ejemplo 2 - Obtiene una cadena aleatoria con str_shuffle() y crea un token único.

<?php
//Método con str_shuffle()
function generateRandomString($length = 10) { return substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, $length);
}
?>

Letras aleatorias javascript

Código javascript y html para generar letras al azar

<html>
<head>
<script>
function hacer(){
var aLetras = new Array('a', 'b', 'c');
var aNumeros = new Array('1', '2', '3');
var cLetra = aLetras[Math.floor(Math.random()*aLetras.length)];
var cNumero = aNumeros[Math.floor(Math.random()*aNumeros.length)];
cajaLetra = document.getElementById("campo1");
cajaLetra.value = cLetra;
cajaCombinada = document.getElementById("campo2");
cajaCombinada.value = cLetra+cNumero;
}
</script>
</head>
<body>
<input type="button" value="Hacer esta cosa" onclick="hacer();" /><br />
<input type="text" name="campo1" id="campo1" /><br />
<input type="text" name="campo2" id="campo2" /><br />
</body>
</html>

Generador de códigos números y letras javascript

Generar codigo alfanumerico aleatorio javascript, generador de cadenas aleatorias con números, letras mayúsculas y minúsculas.

<script>
function rand_code(chars, lon){
code = "";
for (x=0; x < lon; x++)
{
rand = Math.floor(Math.random()*chars.length);
code += chars.substr(rand, 1);
}
return code;
}
caracteres = "0123456789abcdefABCDEF?¿¡!:;";
longitud = 20;
alert(rand_code(caracteres, longitud));
</script>

Verificar contraseña segura con jQuery

Eejmplo de código como verificar de forma segura una contraseña con jQuery.

<link rel="stylesheet" type="text/css" media="all" href="style.css" />
<script src="http://code.jquery.com/jquery-1.7.min.js"></script>
<script>
$(document).ready(function() { $('input[type=password]').keyup(function() { // set password variable var pswd = $(this).val(); //validate the length if ( pswd.length < 8 ) { $('#length').removeClass('valid').addClass('invalid'); } else { $('#length').removeClass('invalid').addClass('valid'); } //validate letter if ( pswd.match(/[A-z]/) ) { $('#letter').removeClass('invalid').addClass('valid'); } else { $('#letter').removeClass('valid').addClass('invalid'); } //validate capital letter if ( pswd.match(/[A-Z]/) ) { $('#capital').removeClass('invalid').addClass('valid'); } else { $('#capital').removeClass('valid').addClass('invalid'); } //validate number if ( pswd.match(/\d/) ) { $('#number').removeClass('invalid').addClass('valid'); } else { $('#number').removeClass('valid').addClass('invalid'); } }).focus(function() { $('#pswd_info').show(); }).blur(function() { $('#pswd_info').hide(); });
});
</script>

Aquí puedes ver una demo del generador de contraseñas php.

Ver demoDescargar

Opinión usuarios

¿Que te parece nuestro generador de contraseñas?

4 Estrellas
4
4 Estrellas de 104 votos
subir