Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/01/2011, 12:43
Avatar de RIVERMILLOS
RIVERMILLOS
 
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 1 mes
Puntos: 15
Respuesta: Problema con SCRIPT recuperador de contraseñas

mira haciendo pruebas asi me funciono a mi

Código PHP:
Ver original
  1. <?php
  2.     //include('config.php'); // incluímos los datos de acceso a la BD
  3.     if(isset($_POST['enviar'])) { // comprobamos que se han enviado los datos del formulario
  4.         if(empty ($_POST['username'])) {
  5.             echo "No ha ingresado el usuario. <a href='javascript:history.back();'>Reintentar</a>";
  6.         }else { /*
  7.             $username = mysql_real_escape_string($_POST['username']);
  8.             $username = trim($username);
  9.             $sql = mysql_query("SELECT username, password, email FROM usuarios WHERE username='".$username."'");
  10.             if(mysql_num_rows($sql)) {
  11.                 $row = mysql_fetch_assoc($sql);
  12.                 $num_caracteres = "10"; // asignamos el número de caracteres que va a tener la nueva contraseña
  13.                 $nueva_clave = substr(md5(rand()),0,$num_caracteres); // generamos una nueva contraseña de forma aleatoria
  14.                 $username = $row['username'];
  15.                 $password = $nueva_clave; // la nueva contraseña que se enviará por correo al usuario
  16.                 $password2 = md5($password); // encriptamos la nueva contraseña para guardarla en la BD
  17.                 $email = $row['email'];
  18.                 // actualizamos los datos (contraseña) del usuario que solicitó su contraseña
  19.                 mysql_query("UPDATE usuarios SET password='".$password2."' WHERE username='".$username."'");
  20.                 // Enviamos por email la nueva contraseña
  21.                 $remite_nombre = "Tu cuenta, Página de Navidad"; // Tu nombre o el de tu página
  22.                 $remite_email = "[email protected]"; // tu correo
  23.                 $asunto = "Recuperación de contraseña"; // Asunto (se puede cambiar)
  24.                 $mensaje = "Se ha generado una nueva contraseña para el usuario <strong>".$username."</strong>. La nueva contraseña es: <strong>".$password."</strong>.";
  25.                 $cabeceras = "From: ".$remite_nombre." <".$remite_correo.">rn";
  26.                 $cabeceras = $cabeceras."Mime-Version: 1.0n";
  27.                 $cabeceras = $cabeceras."Content-Type: text/html";
  28.                 $enviar_email = mail($email,$asunto,$mensaje,$cabeceras);
  29.                 if($enviar_email) {
  30.                     echo "La nueva contraseña ha sido enviada al email asociado al usuario ".$username.".";
  31.                 }else {
  32.                     echo "No se ha podido enviar el email. <a href='javascript:history.back();'>Reintentar</a>";
  33.                 }
  34.             }else {
  35.                 echo "El usuario <strong>".$username."</strong> no está registrado. <a href='javascript:history.back();'>Reintentar</a>";
  36.             }
  37.        */ echo $_POST['username'];}
  38.     }else {
  39. ?>
  40. <form action="<?php $_SERVER['PHP_SELF']?>" method="post">
  41. <fieldset><ul><li><label for="usuario">Usuario</label>
  42. <input class="input" type="text" id="username" name="username" value=""></li>
  43. <li class="buttons">
  44. <input type="submit" id="submit_button" class="submit" name="enviar" value="Recuperar"></li></ul></fieldset></form>
  45. <?php
  46. }
  47. ?>


pruebalo y me dices