martes, 24 de julio de 2012

Revisar Correos G-Mail usando PHP e IMAP

Demo: http://davidwalsh.name/dw-content/php-gmail.php

CSS
div.toggler        { border:1px solid #ccc; background:url(gmail2.jpg) 10px 12px #eee no-repeat; cursor:pointer; padding:10px 32px; }
div.toggler .subject  { font-weight:bold; }
div.read          { color:#666; }
div.toggler .from, div.toggler .date { font-style:italic; font-size:11px; }
div.body          { padding:10px 20px; }
MooTools
window.addEvent('domready',function() {
  var togglers = $$('div.toggler');
  if(togglers.length) var gmail = new Fx.Accordion(togglers,$$('div.body'));
  togglers.addEvent('click',function() { this.addClass('read').removeClass('unread'); });
  togglers[0].fireEvent('click'); //first one starts out read
});
PHP
/* connect to gmail */
$hostname = '{imap.gmail.com:993/imap/ssl}INBOX';
$username = 'davidwalshblog@gmail.com';
$password = 'davidwalsh';

/* try to connect */
$inbox = imap_open($hostname,$username,$password) or die('Cannot connect to Gmail: ' . imap_last_error());

/* 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) {
    
    /* 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.= '
'; $output.= ''.$overview[0]->subject.' '; $output.= ''.$overview[0]->from.''; $output.= 'on '.$overview[0]->date.''; $output.= '
'; /* output the email body */ $output.= '
'.$message.'
'; } echo $output; } /* close the connection */ imap_close($inbox);

Créditos: http://davidwalsh.name/gmail-php-imap

No hay comentarios:

Publicar un comentario