No puedo recuperar el contenido del cuerpo del correo electrónico.¿Cómo usar IMAP en PHP para recuperar el contenido del cuerpo del correo?
Este es mi código
<?php
/* connect to server */
$hostname = '{myserver/pop3/novalidate-cert}INBOX';
$username = 'username';
$password = 'password';
/* try to connect */
$inbox = imap_open($hostname,$username,$password) or die('Cannot connect to Tiriyo: ' . imap_last_error());
//echo $inbox;
/* grab emails */
$emails = imap_search($inbox,'ALL');
/* if emails are returned, cycle through each... */
if($emails) {
/* begin output var */
$output = '';
/* put the newest emails on top */
rsort($emails);
/* for every email... */
foreach($emails as $email_number) {
//$email_number=$emails[0];
//print_r($emails);
/* get information specific to this email */
$overview = imap_fetch_overview($inbox,$email_number,0);
$message = imap_fetchbody($inbox,$email_number,2);
/* output the email header information */
$output.= '<div class="toggler '.($overview[0]->seen ? 'read' : 'unread').'">';
$output.= '<span class="subject">'.$overview[0]->subject.'</span> ';
$output.= '<span class="from">'.$overview[0]->from.'</span>';
$output.= '<span class="date">on '.$overview[0]->date.'</span>';
$output.= '</div>';
/* output the email body */
$output.= '<div class="body">'.$message.'</div>';
}
echo $output;
}
/* close the connection */
imap_close($inbox);
?>
Cuando utilizo a buscar correo electrónico de Gmail, se muestra el contenido del cuerpo del correo electrónico, pero una vez que utilizo mi servidor de correo, no puede recuperar el contenido del cuerpo del correo electrónico.
¿Puede ayudarme a solucionar el problema?
¿Qué servidor de correo estás usando? – Ben
Probado; tu script funciona bien con Gmail como dijiste. Los errores probablemente provienen de su servidor de correo. ¿Hay algún otro detalle que pueda proporcionar? – Ben
Probablemente un duplicado de http://stackoverflow.com/questions/5170489/php5-imap-i-aint-got-no-body – dkarp