Asimismo, es posible introducir una palabra a codificar, que tambien es guardada.
Y, con los registros guardados, hay un decodificador. Podeis verlo en funcionamiento aquí:
http://enr1c.eshost.es/paginas/generador.php.
Y el código:
Código PHP:
<?php
echo 'Aqui tienes tu contraseña:<br>';
function f_genera_psw($num=8){ // By Kernellover
$voc = array ("a","e","i","o","u");
$con = array ("b","c","d","f","g","h","j","k","l","m","n","p","q","r","s","t","w","x","y","z");
$psw = ""; // cadena que contendrá el password.
$vc = mt_rand(0,1); // definde si empieza por vocal o consonante.
for ($n=0; $n<$num; $n++){
if ($vc==1){
$vc=0;
$psw .= $con[mt_rand(0,count($con)-1)];
}
$psw .= $voc[mt_rand(0,count($voc)-1)];
$psw .= $con[mt_rand(0,count($con)-1)];
}
$psw = ereg_replace ("q","qu",$psw);
$psw = ereg_replace ("quu","que",$psw);
$psw = ereg_replace ("yi","ya",$psw);
$psw = ereg_replace ("iy","ay",$psw);
$psw = substr($psw,0,$num);
return $psw;
}
$password = f_genera_psw(rand(4,16));
$md5 = md5($password);
$link = mysql_connect('host','user','password');
mysql_select_db("dbname",$link);
$result = mysql_query("SELECT * FROM md5 WHERE md5 ='$md5'",$link);
if(mysql_num_rows($result)>0){
echo $password;
}else{
mysql_query("INSERT INTO md5 (palabra,md5) VALUES ('$password','$md5')",$link);
echo $password;
}
?>
<br><br><br>
Decripta md5:<br>
<form method="get" action="generador.php">
<input type="text" name="md5">
<input type="submit">
</form>
<?php
if(isset($_GET['md5'])) {
$md5 = $_GET['md5'];
$link = mysql_connect('host','user','password');
mysql_select_db("dbname",$link);
$result = mysql_query("SELECT * FROM md5 WHERE md5 ='$md5'",$link);
if(mysql_num_rows($result)>0){
$row=mysql_fetch_array($result);
$palabra = str_replace('<','<',$row['palabra']);
echo'Tu palabra es:<br>'.$palabra.'<br>';
}else{
echo 'No tenemos este código md5 en la base de datos, vuelve a intentarlo :-)<br>';}
}?>
<br>Encripta en md5:<br>
<form method="get" action="generador.php">
<input type="text" name="new_md5">
<input type="submit">
</form>
<?php
if(isset($_GET['new_md5'])) {
$h = $_GET['new_md5'];
$new_md5 = md5($h);
$link = mysql_connect('host','user','password');
mysql_select_db("dbname",$link);
$result = mysql_query("SELECT * FROM md5 WHERE md5 ='$new_md5'",$link);
if(mysql_num_rows($result)>0){
echo 'Tu palabra en md5 es:<br>'.$new_md5.'<br>';
}else{
mysql_query("INSERT INTO md5 (palabra,md5) VALUES ('$h','$new_md5')",$link);
echo 'Tu palabra en md5 es:<br>'.$new_md5.'<br>';
}
}
?>
![sonriente](http://static.forosdelweb.com/fdwtheme/images/smilies/smile.png)