Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/01/2011, 09:47
ninco90
 
Fecha de Ingreso: enero-2011
Mensajes: 77
Antigüedad: 13 años, 3 meses
Puntos: 3
Exclamación Problema con SCRIPT recuperador de contraseñas

Hola amigos:

Estoy con un script que su función es recuperar contraseñas para la gente que se olvida. Es para mi zona de miembros.

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'])) {
  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);
  17.                 $email = $row['email'];
  18.                
  19.                 mysql_query("UPDATE usuarios SET password='".$password2."' WHERE username='".$username."'");
  20.                
  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.         }
  38.     }else {
  39. ?>

El prorblema que tengo es que siempre introduzco mi nombre de usuario y siempre me dice que no he introducido ningún nombre, cuando yo accedo con el sin problemas. Me podríais decir donde tengo el error, por favor.