Foros del Web » Programando para Internet » PHP »

enviar mas de un password por email

Estas en el tema de enviar mas de un password por email en el foro de PHP en Foros del Web. Buenas chicos, vereis, estoy intentando hacer como podria enviar todos los códigos por email, la web es una web de anuncios y los usuarios pueden ...
  #1 (permalink)  
Antiguo 21/12/2010, 19:08
 
Fecha de Ingreso: junio-2008
Mensajes: 165
Antigüedad: 15 años, 10 meses
Puntos: 6
enviar mas de un password por email

Buenas chicos, vereis, estoy intentando hacer como podria enviar todos los códigos por email, la web es una web de anuncios y los usuarios pueden poner alertas para si se publica un anuncio de las caracteristicas que desean se les avise. Cada alerta tiene un código o password para poder eliminarla en caso de que ya no la quiera.

Lo que intento es que un usuario al poner su email previamente habiendo echo clik en un enlace de recordar contraseña le llegue al mail sus datos. He conseguido que envié pero solo una :(. Llega en este formato:

Email: [email protected]
Código: xxxx

Como podría hacer para que lleguen todos los codigos que tenga? Se que sería algo con bucles pero no se como hacerlo exactamente el formato en el que quiero que llegue es:

Alerta en <provincia>-<muni>-<cp>".v_pass;

Este es el código que actualmente tengo pero solo envia una pass :(

Código PHP:
Ver original
  1. $result= mysql_query("SELECT pass
  2.                             FROM alertas   
  3.                             WHERE mail='$mail'
  4.                              AND valido=1")
  5.     or die(mysql_error());
  6.  
  7.     $v_encontrado = mysql_num_rows($result);
  8.     if($v_encontrado!=0){//si el usuario ha sido encontrado se continua con el proceso
  9.         $row = mysql_fetch_array( $result );
  10.  
  11.         $v_pass= $row['pass'];
  12.        
  13.         mysql_free_result($result);
  14.  
  15.  
  16.         $enviado=envia_correo_recordatorio("Estimado usuario ",$mail,$p_modo,$v_mensaje,$p_to,$v_pass);//envia correo
  17.         if ($enviado==1){
  18.             $v_msg="Tus datos de acceso se han enviado correctamente, por favor revisa tu correo.";
  19.         }else{
  20.             $v_msg="No se han podido enviar los datos de acceso. Intentelo de nuevo";
  21.         }
  22.    
  23.     }else{
  24.         $v_msg="El mail especificado no tiene ninguna alerta activada";
  25.     }

Muchisimas gracias!!
  #2 (permalink)  
Antiguo 21/12/2010, 20:46
 
Fecha de Ingreso: noviembre-2009
Mensajes: 63
Antigüedad: 14 años, 5 meses
Puntos: 7
Respuesta: enviar mas de un password por email

Pero como tenes tus datos en la base de datos?

Supongo que tenes varios registros de un mismo usuario donde se almacenan los distintos passwords no?
  #3 (permalink)  
Antiguo 22/12/2010, 05:11
 
Fecha de Ingreso: junio-2008
Mensajes: 165
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: enviar mas de un password por email

Gracias por responder DrHank, Las pass se guardan en el campo pass de la tabla alertas y no es por usuarios, es decir es por mails por ejemplo un mismo mail puede tener varias alertas esta es la estructura de la tabla alertas:

mail,pass,tipo,provincia,municipio,codpostal,fecha ,valido

Entones como decia un mismo mail puede tener distintas alertas y distintas pass por ejemplo:

Código SQL:
Ver original
  1. mail                                      pass              tipo                Provincia           Municipio         codpostal          fecha              valido
  2. [email]mismo@usuario.com[/email]            151532          Alquiler          Valencia             Valencia          46980               xx/xx/xx          1
  3. [email]mismo@usuario.com[/email]            121534          Venta            Madrid                Madrid            28157               xx/xx/xx          1

Y en el mail deberia presentarse así:

Estimado usuario estos son tus codigos:

Alerta de Alquiler en Valenvia/Valencia con código 151532
Alerta de venta en Madrid/Madrid con código 121534

No se si igual no me explico pero muchas gracias por responder DrHank

Última edición por cronosmen; 22/12/2010 a las 05:21
  #4 (permalink)  
Antiguo 22/12/2010, 06:44
 
Fecha de Ingreso: junio-2008
Mensajes: 165
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: enviar mas de un password por email

Ya lo he coneguido, pero en vez de enviarme las dos pass me envia por ejemplo dos veces la misma pass. ¿Qúe puede fallar?.

Código PHP:
Ver original
  1. $result= mysql_query("SELECT pass
  2.                             FROM $v_tabla  
  3.                             WHERE mail='$mail'
  4.                              AND valido=1")
  5.     or die(mysql_error());
  6.  
  7.     $v_encontrado = mysql_num_rows($result);
  8.     mysql_free_result($result);
  9.     if($v_encontrado!=0){
  10.         $result= mysql_query("SELECT count(*)
  11.                                 FROM $v_tabla  
  12.                                 WHERE mail='$mail'
  13.                                 AND valido=1")
  14.         or die(mysql_error());
  15.         $n_anuncios_encontrados = mysql_num_rows($result);
  16.        
  17.         $n_anuncio=0;//variable para recorrer anuncios
  18.        
  19.         $v_msg_mail=$v_mail." estos son tus datos de acceso <br>";
  20.         while($n_anuncio<=$n_anuncios_encontrados){
  21.         $result= mysql_query("SELECT titulo,pass,municipio,provincia,codpostal
  22.                                 FROM $v_tabla  
  23.                                 WHERE mail='$mail'
  24.                                 AND valido=1")
  25.         or die(mysql_error());
  26.        
  27.         $row = mysql_fetch_array( $result );
  28.  
  29.         $v_pass= $row['pass'];
  30.         $v_titulo= $row['titulo'];
  31.         $v_municipio= $row['municipio'];
  32.         $v_provincia= $row['provincia'];
  33.         $v_cod_postal= $row['codpostal'];
  34.        
  35.         $v_msg_mail=$v_msg_mail."<br><br> titulo: <b>".$v_titulo."</b><br> Municipio: <b>".$v_municipio."</b> <br> Provincia: <b>".$v_provincia."</b> <br> Código postal: <b>".$v_cod_postal."</b><br> Código: <b>".$v_pass."</b><br>";
  36.        
  37.        
  38.                
  39.         $n_anuncio=$n_anuncio+1;
  40.         }
  41.        
  42.         $enviado=envia_correo_recordatorio("Estimado usuario",$mail,$p_modo,$v_mensaje,$p_to,$v_msg_mail);
  43.        
  44.         if ($enviado==1){
  45.             $v_msg="Tus datos de acceso se han enviado correctamente, por favor revisa tu correo.";
  46.         }else{
  47.             $v_msg="No se han podido enviar los datos de acceso. Intentelo de nuevo";
  48.         }

Última edición por cronosmen; 22/12/2010 a las 07:10
  #5 (permalink)  
Antiguo 22/12/2010, 07:44
 
Fecha de Ingreso: diciembre-2010
Mensajes: 32
Antigüedad: 13 años, 4 meses
Puntos: 1
Respuesta: enviar mas de un password por email

No entiendo esta parte:


Código PHP:
while($n_anuncio<=$n_anuncios_encontrados){
        
$resultmysql_query("SELECT titulo,pass,municipio,provincia,codpostal
                                FROM $v_tabla   
                                WHERE mail='$mail'
                                AND valido=1"
)
        or die(
mysql_error()); 
porque usas mysql_query dentro del while? no veo que las variables de la query cambien en el bucle.
  #6 (permalink)  
Antiguo 22/12/2010, 08:21
 
Fecha de Ingreso: junio-2008
Mensajes: 165
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: enviar mas de un password por email

Arreglado :D alfinal e hecho:

Código PHP:
Ver original
  1. if($v_encontrado!=0){
  2.        
  3.             $result= mysql_query("SELECT $id,titulo,pass,municipio,provincia,codpostal
  4.                                     FROM $v_tabla  
  5.                                     WHERE mail='$mail'
  6.                                     AND valido=1")
  7.             or die(mysql_error());
  8.            
  9.         while ($row = mysql_fetch_array( $result )){
  10.             $v_pass= $row['pass'];
  11.             $v_titulo= $row['titulo'];
  12.             $v_municipio= $row['municipio'];
  13.             $v_provincia= $row['provincia'];
  14.             $v_cod_postal= $row['codpostal'];
  15.            
  16.             $v_msg_mail=$v_msg_mail."Titulo: <b>".$v_titulo."</b><br> Municipio: <b>".$v_municipio."</b> <br> Provincia: <b>".$v_provincia."</b> <br> Código postal: <b>".$v_cod_postal."</b><br> Código de anuncio: <b>".$v_pass."</b><br><br>";
  17.         }
  18.        
  19.         $enviado=envia_correo_recordatorio("Estimado usuario de AparcaYa",$mail,$p_modo,$v_mensaje,$p_to,$v_msg_mail);
  20.        
  21.         if ($enviado==1){
  22.             $v_msg="Tus datos de acceso se han enviado correctamente, por favor revisa tu correo.";
  23.         }else{
  24.             $v_msg="No se han podido enviar los datos de acceso. Intentelo de nuevo";
  25.         }
  26.        
  27.     }else{
  28.         $v_msg="El mail especificado no tiene ningún anuncio publicado";
  29.     }

Perdonarme por la ignorancia -.- a veces lo mas sencillo no me entra en la cabeza

Última edición por cronosmen; 22/12/2010 a las 08:35
  #7 (permalink)  
Antiguo 22/12/2010, 08:36
 
Fecha de Ingreso: diciembre-2010
Mensajes: 32
Antigüedad: 13 años, 4 meses
Puntos: 1
Respuesta: enviar mas de un password por email

Son errores normales, a veces es tan simple que no lo ves, a todos nos pasa

Etiquetas: email, enviar, mas, password
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 07:16.