2012-04-11 2 views
2

Ich versuche, ungelesene E-Mails von einem Google Apps-E-Mail-Konto abzurufen.Ungelesene E-Mails von Google Mail-Apps abrufen

Ive das Follow-Skript versucht:

$email = '[email protected]'; 
$pass = 'password'; 
$inbox = imap_open('{imap.gmail.com:993/imap/ssl}INBOX', $email, $pass, NULL, 1) or die('Cannot connect to Gmail'); 

.. aber ich erhalte die folgende Fehlermeldung:

Warning: imap_open() [function.imap-open]: Couldn't open stream {imap.gmail.com:993/imap/ssl}INBOX in /var/www/zvinx.dk/test/gmail.php on line 5 
Cannot connect to Gmail 

Ich habe meine Webhost kontaktiert und er stellt fest, dass imap_open vom webhotel unterstützt wird . Gibt es eine bestimmte Möglichkeit, dies zu überprüfen?

Wie kann ich die E-Mails anzeigen und kennzeichnen, wie sie mit php gelesen werden?

Antwort

0

Die PHP-Funktionen imap_last_error() und imap_errors() können Ihnen sagen, was vor sich geht.

<?php 
$mbox = imap_open ("{www.yoursite.com:143}INBOX", "$username", "$password"); 
if ($mbox === false) { 
     exit ("Can't connect: " . imap_last_error() ."\n"); 
} 
else 
{ 
     echo "Login worked!"; 
     //do stuff 
} 
?> 

Mehr: http://us.php.net/manual/en/function.imap-last-error.php

+0

Siehe auch: http://stackoverflow.com/questions/9755865/gmail-imap-with-php –

+0

Wenn ich hinzufügen imap_last_error bekomme ich folgende Fehlermeldung: Can‘ t Mailbox öffnen {imap.gmail.com:993/imap/ssl}INBOX: ungültige Remote-Spezifikation In Bezug auf Ihren Link habe ich die Bestätigung in zwei Schritten nicht aktiviert:/ – Christoffer

+0

Ah okay - Ich sehe, dass Sie versuchen, eine Verbindung herzustellen mit SSL. Können Sie bestätigen, ob Ihr PHP mit diesen Flags kompiliert wurde ?: --with-imap-ssl --mit-kerberos --with-openssl Diese werden für imap mit SSL benötigt. –