Ver Mensaje Individual
  #31 (permalink)  
Antiguo 10/03/2005, 14:57
2Fast To You
 
Fecha de Ingreso: septiembre-2003
Ubicación: Santo Domingo - R. Dominicana
Mensajes: 606
Antigüedad: 20 años, 7 meses
Puntos: 0
Hola Amigo, realmente me has ayudado un mundo, ya funciona el código pero cuando lo ejecuto que el cambia la clave no la pasa pro md5 y me poine en la Base de datos la misma que genera.

El código quedó así:
Código PHP:
<?php 
//conecto con la base de datos 
$conn mysql_connect("localhost","usuario","password"); 

//selecciono la BBDD 
mysql_select_db("basededatos",$conn); 

// incluyes la definición de la función genera_password().(yo lo obvio aquí) 
function genera_password($longitud,$tipo="alfanumerico"){ 

    if (
$tipo=="alfanumerico"){ 
        
$exp_reg="[^A-Z0-9]"
    } elseif (
$tipo=="numerico"){ 
        
$exp_reg="[^0-9]"
    } 
     
    return 
substr(eregi_replace($exp_reg""md5(rand())) . 
       
eregi_replace($exp_reg""md5(rand())) . 
       
eregi_replace($exp_reg""md5(rand())), 
       
0$longitud); 


$contrasena genera_password(8);// de 8 caracteres (o lo que quieras) 
$sql "UPDATE usuarios SET password = '$contrasena' WHERE email='".$_POST['email']."'"
mysql_query($sql) or die("error en <b>$sql</b> :::"mysql_error()); 
if(
mysql_affected_rows() == 1){// si hay una fila afectada (o sea si el email existe en la BD) 
   
mail $_POST['email'], "nuevo password""su nuevo password es: $contrasena"); 

?>