Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/11/2015, 14:46
Avatar de berkeleyPunk
berkeleyPunk
 
Fecha de Ingreso: febrero-2013
Ubicación: México :C
Mensajes: 565
Antigüedad: 11 años, 3 meses
Puntos: 22
Pregunta imap_body() siempre devuelve el mismo mensaje!

Hola

Necesito recuperar información de los emails de mi buzón de entrada GMAIL.
El código que les pongo a continuación lo hace casi todo bien. Excepto por una cosa. El último foreach debería mostrar en pantalla 3 cosas:
  1. El subject
  2. El email del remitente, y
  3. El cuerpo del mensaje

Por alguna extraña razón en pantalla se muestran el SUBJECT y el EMAIL de cada uno de los mensajes dentro del inbox. Pero el cuerpo del mensaje siempre se muestra el mismo, que es el último, o sea, el último que llegó al correo. Es decir, no aparece el mensaje de cada uno de los emails.

¿Cómo solucionar esto?


Código PHP:
Ver original
  1. $arrayDeEmails = imap_search($conexionIMAP, "SUBJECT \"$asunto\" FROM \"$remitente\"", SE_UID);
  2.  
  3. if($arrayDeEmails) {
  4.     foreach($arrayDeEmails as $correo) {
  5.         $cabeceras       = imap_headerinfo($conexionIMAP, $correo);
  6.         $overview        = imap_fetch_overview($conexionIMAP, $correo, 0);
  7.         $emailRemitente  = $cabeceras->from[0]->mailbox . "@" . $cabeceras->from[0]->host;
  8.         // $mensajeCompleto = imap_qprint(imap_body($conexionIMAP, $numeroDeMensajes));
  9.         $mensajeCompleto = imap_body($conexionIMAP, $numeroDeMensajes);
  10.  
  11.         $output  = $correo;
  12.         $output .= $overview[0]->subject;
  13.         $output .= $emailRemitente;
  14.  
  15.         echo $output;
  16.         include("includes/parsear-html-4.php");
  17.  
  18.     }
  19. }
  20. else {
  21.     // echo "ERROR! Imposible leer array de emails de la bandeja de entrada.";
  22. }


Saludos!

Última edición por berkeleyPunk; 25/11/2015 a las 14:54