Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/11/2012, 10:23
Avatar de DeivisAndres
DeivisAndres
 
Fecha de Ingreso: febrero-2012
Ubicación: Colombia
Mensajes: 305
Antigüedad: 12 años, 3 meses
Puntos: 41
Respuesta: Mostrar un listado de usuarios y enviarlo por email para cada discoteca

1º ¿Cómo puedo guardar el listado de usuarios que me devuelve la consulta, a través del array, en $body, y asi tener correctamente el contenido del mensaje en $mail->MsgHTML('')?

No te entiendo.

2º ¿Cómo podría enviar el listado de los usuarios (de cada discoteca) a los emails correspondientes, que estan almacenados en otra tabla: DISCOTECA.D_EMAIL? ¿Tengo que meter el actual bucle while dentro de otro bucle (foreach o while) o cómo?

Si, pero podrías hacer que cuando este consultando usuario por usuario realizar un consulta donde te saca el correo de cada uno y lo vas mostrando. Como yo lo aria seria de esta manera para mandar un mensaje a cada usuario, sacaría el email de cada usuario:

Código PHP:
Ver original
  1. $sql = mysql_query("SELECT nombre, apellido, email FROM usuario", $conexion) or die(mysql_error());
  2. while($Mostrar = mysql_fetch_array($sql)){
  3. // email de destino
  4. $email = $Mostrar['email'];
  5. // asunto del email
  6. $subject = $_POST['motivo']; // capturas el motivo del mensaje.
  7. // Cuerpo del mensaje
  8. $mensaje = "Hola ".$Mostrar['nombre']." ".$Mostrar['apellido']."\n"; // Muestra el nombre y apellido del usuario.              
  9. $mensaje.= "IP: ".$_SERVER['REMOTE_ADDR']."\n\n";
  10. $mensaje.= "-------------------------------------------------------------------- \n\n";
  11. $mensaje.= $_POST['comentarios']."\n\n"; // Capturo el detalle del mensaje
  12. $mensaje.= "---------------------------------- \n";
  13. $mensaje.= "Enviado desde http://programasoft.com/deivis.html \n";
  14.    
  15. // headers del email
  16. $headers = "From: ".$email."\r\n";
  17. // Enviamos el mensaje
  18.  if (mail($email, $subject, $mensaje, $headers)) {
  19.   $aviso = '<script>alert("Su mensaje se envio correctamente!!!");</script>';
  20.  }else{
  21.   $aviso = '<script>alert("Error al enviar su mensaje, compruebe los campos!!!");</script>';
  22.  }             
  23. }

Como puedes ver le mando el mensaje a cada usuario de la BD uno por uno con un while.

3º ¿Habría algún problema si meto la SELECT de los usuarios dentro del bucle y que vaya cambiando su valor de UD_DISCOTECA (el nombre de esta) por un $array que contenga todos los nombres de las discotecas (SELECT D_NOMBRE FROM DISCOTECA)?

Si podira funcionar que por cada usuario realize una consulta para sacar al informacion.