Foros del Web » Programando para Internet » PHP »

como mandar usuario y contraseña olvidadas a mail correspondiente

Estas en el tema de como mandar usuario y contraseña olvidadas a mail correspondiente en el foro de PHP en Foros del Web. Hola, quisiera saber si el codigo que he hecho que muestro a continuacion que es el archivo que recibe el post, en este caso el ...
  #1 (permalink)  
Antiguo 30/06/2011, 11:39
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Pregunta como mandar usuario y contraseña olvidadas a mail correspondiente

Hola, quisiera saber si el codigo que he hecho que muestro a continuacion que es el archivo que recibe el post, en este caso el mail para verificar que ese usuario existe en mi bd...si existe bien: se confirma que existe el mail, sino da mail inexistente, hasta alli no hay problema pues ya lo probe; lo que quisiera comprobar es si estoy haciendo bien en tomar el usuario y la contrasena(que es tipo blob) con ese select y desde ese registro correspondiente y guardarlo en una variable y asi mandarlo por el metodo del servidor de gmail que ya lo comprobe que me sirve con otros ejemplos; lo que no se tampoco es como insertar esa variable: $informacion (que lleva el usuario y contraseña, al mail correspondiente que es otra variable no?. y asi terminar este capitulo de mandar usuarios y contraseñas olvidadas. he visto numerosas faqs pero no logro comprenderlas en su totalidad. ayuda por favor, no se si estoy programando bien...gracias de antemano.

$recuperar es el mail del usuario.


Código PHP:
<body>
<?php

$recuperar
=$_POST['recuperar'];

if (!empty(
$_POST)) {
    
$conexion mysql_connect('localhost','root','');
    
mysql_select_db('datos',$conexion);
    
    
$user mysql_real_escape_string($_POST['recuperar']);
    
    
$sql 'SELECT mail FROM datos1 WHERE mail = \''.$user.'\'';
        
        
$query mysql_query($sql,$conexion) or die(mysql_error());
        
$numUsers mysql_num_rows($query);
 
        if (
$numUsers == 1) {

        
        echo 
"EMAIL EXISTE se mandara a su mail su usuario y contraseña";
        
$conexion mysql_connect('localhost','root','');
        
mysql_select_db('datos',$conexion);
    
    
$user1 mysql_real_escape_string($_POST['recuperar']);
    
    
$informacion 'SELECT usuario,contrasena FROM datos1 WHERE mail = \''.$user1.'\'';

    
    
//mando info de usuario y contraseña a mail correspondiente

include("class.phpmailer.php");
include(
"class.smtp.php");
 
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth true;
$mail->SMTPSecure "ssl";
$mail->Host "smtp.gmail.com";
$mail->Port 465;
$mail->Username "[email protected]";
$mail->Password "eduardoxxx";

$mail->From "[email protected]";
$mail->FromName "Lovemoon";
$mail->Subject "su usuario y contraseña";
$mail->AltBody "Hola, te doy tu usuario y contraseña:.";
$mail->MsgHTML("Hola, te doy tu usuario y contraseña:<br><b>xxxx</b>.");

$mail->AddAddress("[email protected]""Destinatario");
$mail->IsHTML(true);
 
if(!
$mail->Send()) {
  echo 
"Error: " $mail->ErrorInfo;
} else {
  echo 
"Mensaje enviado correctamente";
}
    
        }else{
            
        echo 
"EMAIL INEXISTENTE";    
       
        }}
    
     
?>

</body>
</html>

Última edición por gabrielcorr4; 30/06/2011 a las 11:46
  #2 (permalink)  
Antiguo 30/06/2011, 11:53
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 3 meses
Puntos: 128
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

Prueba con esto :

Código PHP:
Ver original
  1. $sql = 'SELECT mail,usuario,contrasena FROM datos1 WHERE mail = \''.$user.'\'';
  2.     $query = mysql_query($sql,$conexion) or die(mysql_error());
  3.     $numUsers = mysql_num_rows($query);
  4.     if ($numUsers == 1)
  5.     {
  6.         while ($row = mysql_fetch_array($query))
  7.         {
  8.             $usuario=$row['usuario'];
  9.             $clave=$row['clave'];
  10.         }
  11.         include("class.phpmailer.php");
  12.         include("class.smtp.php");
  13.         $mail = new PHPMailer();
  14.         $mail->IsSMTP();
  15.         $mail->SMTPAuth = true;
  16.         $mail->SMTPSecure = "ssl";
  17.         $mail->Host = "smtp.gmail.com";
  18.         $mail->Port = 465;
  19.         $mail->Username = "[email protected]";
  20.         $mail->Password = "clave";
  21.         $mail->From = "[email protected]";
  22.         $mail->FromName = "Lovemoon";
  23.         $mail->Subject = "su usuario y contraseña";
  24.         $mail->AltBody = "Hola, te doy tu usuario y contraseña:.";
  25.         $mail->MsgHTML("Hola, te doy tu usuario : ".$usuario."  y clave:<b>".$clave."</b>.");
  26.         $mail->AddAddress("[email protected]", "Destinatario");
  27.         $mail->IsHTML(true);
  28.         if(!$mail->Send())
  29.         {
  30.           echo "Error: " . $mail->ErrorInfo;
  31.         }
  32.         else
  33.         {
  34.             echo "Mensaje enviado correctamente";
  35.         }



Saludos
__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #3 (permalink)  
Antiguo 30/06/2011, 11:55
Avatar de ramiro_md  
Fecha de Ingreso: septiembre-2008
Mensajes: 274
Antigüedad: 15 años, 8 meses
Puntos: 26
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

Amigo, esta consulta en verdad te funciona?:
Código PHP:
Ver original
  1. $sql = 'SELECT mail FROM datos1 WHERE mail = \''.$user.'\'';
No debería ser :
Código PHP:
Ver original
  1. $sql = 'SELECT datos1.mail FROM datos1 WHERE mail = \''.$user.'\'';
En el SELECT debes especificar la tabla donde sacas el campo. Ahora porque usas una sola tabla y pensás que no es necesario, pero si estuvieras mezclando 3 o más tablas, ¿cómo sabría MySQL de qué tabla sacar cada campo?
Saludos.
  #4 (permalink)  
Antiguo 30/06/2011, 12:01
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

Ramiro como puse al comienzo de mi explicacion, esa parte ya la probe y me funciona a la perfeccion, por ahora no tengo necesidad de usar mas tablas, voy poco a poco pues recien empiezo mi programa, "solo quiero que me expliquen lo que pregunte en detalle", gracias.
  #5 (permalink)  
Antiguo 30/06/2011, 12:16
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

pero la variable $clave no seria equivalente al campo que hay en mi bd de datos? en este caso contrasena...? en todo caso le puse contrasena y me sale esto de error:

SMTP Error: Could not authenticate. Error: SMTP Error: Could not authenticate.

y como tu me lo pusiste me sale de eror:

Notice: Undefined index: clave in C:\EasyPHP-5.3.6.0\www\prueba\recuperar3.php on line 27
SMTP Error: Could not authenticate. Error: SMTP Error: Could not authenticate.

parece que hay un error de entrada al servidor gmail.
  #6 (permalink)  
Antiguo 30/06/2011, 12:19
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 3 meses
Puntos: 128
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

Exacto, me equivoque en poner el nombre del campo, lo raro es que tu decias que podias enviar correo por gmail, y ahora te falla la autentificación, por si acaso yo cambio usuario y contraseña d etu correo gmail, lo coloque como [email protected] y clave, cambiaste esos datos cierto?


Saludos.

__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #7 (permalink)  
Antiguo 30/06/2011, 12:20
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

gracias bullan eres un genio, ya me sirvio, es que no tenia puesta bien mi cuenta de gmail y hubo que cambiarle el clave por contrasena y me salio geniallllll. gracias mil.
  #8 (permalink)  
Antiguo 30/06/2011, 12:40
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

codigo completo funciona a la perfeccion y con el mail de variable por defecto en el transportador gmail, para mandar datos a la persona indicada que olvido sus datos:

Cita:

<?php

$recuperar=$_POST['recuperar'];

if (!empty($_POST)) {
$conexion = mysql_connect('localhost','root','');
mysql_select_db('datos',$conexion);

$user = mysql_real_escape_string($_POST['recuperar']);

$sql = 'SELECT mail,usuario,contrasena FROM datos1 WHERE mail = \''.$user.'\'';
$query = mysql_query($sql,$conexion) or die(mysql_error());
$numUsers = mysql_num_rows($query);
if ($numUsers == 1)
{
while ($row = mysql_fetch_array($query))
{
$mail=$row['mail'];
$usuario=$row['usuario'];
$clave=$row['contrasena'];
}
include("class.phpmailer.php");
include("class.smtp.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Host = "smtp.gmail.com";
$mail->Port = 465;
$mail->Username = "[email protected]";
$mail->Password = "eduardoxxx";
$mail->From = "[email protected]";
$mail->FromName = "Lovemoon";
$mail->Subject = "su usuario y contraseña";
$mail->AltBody = "Hola, te doy tu usuario y contraseña:.";
$mail->MsgHTML("Hola, te doy tu usuario : ".$usuario." y clave:<b>".$clave."</b>.");
$mail->AddAddress($recuperar, "Destinatario");
$mail->IsHTML(true);
if(!$mail->Send())
{
echo "Error: " . $mail->ErrorInfo;
}
else
{
echo "Mensaje enviado correctamente";
}


}else{

echo "EMAIL INEXISTENTE";

}}

?>

</body>
</html>
  #9 (permalink)  
Antiguo 04/07/2011, 04:49
 
Fecha de Ingreso: marzo-2011
Mensajes: 226
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

hola,

sabes si ese codigo funciona con la version de php 5.2? xq a mi no me funciona, no me llega ningun correo a mi cuenta de correo gmail

gracias de antemano
  #10 (permalink)  
Antiguo 04/07/2011, 06:43
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 3 meses
Puntos: 128
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

Viringas, tienes la clase phpmailer??
__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #11 (permalink)  
Antiguo 04/07/2011, 08:31
 
Fecha de Ingreso: marzo-2011
Mensajes: 226
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

si la tengo pero, yo uso la version de php5.2 y segun vi en la web de phpmailer para la version 5 y 6 hay otros archivos con distinto nombre q la para la version 4 y segun vi en los includes de este post eses pertenecen a la version 4, de ahi mi pregunta de si con la version de php5 se puede utilizar igual el codigo q esta puesto en este post xq a mi no me funciona
  #12 (permalink)  
Antiguo 04/07/2011, 09:00
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 3 meses
Puntos: 128
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

Yo utilizo la 5.2 y no tengo problemas, baja de nuevo la clase PhpMailer y pruebalo nuevamente, si tienes problemas abre un posrt nuevo indicando lo que nececitas, es mejor ayudar de esa manera a responder un post que esta listo, saludos
__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #13 (permalink)  
Antiguo 04/07/2011, 13:12
 
Fecha de Ingreso: marzo-2011
Mensajes: 226
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: como mandar usuario y contraseña olvidadas a mail correspondiente

podrias pasarme dichas clases? xq las baje varias veces y me sigue sin funcionar

Etiquetas: contraseña, mail, mandar, olvidadas, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:12.