2012-06-19 102 views
5

我想用PHP的標準庫從頭開始寫一個非常簡單的基於Web的電子郵件客戶端。我會誠實的;我不完全確定自己在做什麼,所以這是我一起入侵試用和學習的東西。但是,無論我嘗試什麼,我都會保持超時。有什麼建議?我知道預期的輸出不會很漂亮,但正如我所說的,這只是爲了試驗和錯誤。如何用PHP下載電子郵件

<?php 

$stream = imap_open('{imap.gmail.com:993/imap/ssl}INBOX', '<email_removed>', '<password_removed>') or 
    die('Cannot connect to server: ' . imap_last_error()); 

$date = date('d M Y', strtotime('-1 month')); 
if ($emails = imap_search($stream, "SINCE \"$date\"")) { 
    rsort($emails); 

    foreach ($emails as $email_number) { 
     echo imap_fetchbody($stream, $email_number, 2); 
    } 
} 

imap_close($stream); 

?> 

輸出我得到它如下。

警告:imap_open()[function.imap開]:無法打開流{imap.gmail.com:993/imap/ssl}INBOX在3 線無法連接到服務器:能」 t連接到gmail-imap.l.google.com,993:網絡不可達

注意:未知:無法連接到gmail-imap.l.google.com,993:連接超時(ERRFLG = 1)未知在線0

通知:未知:無法連接到gmail-imap.l.google.com,993:連接超時(errflg = 1)i n元在線0

通知:未知:無法連接到gmail-imap.l.google.com,993:網絡不可達(ERRFLG = 2)在未知在線0

+2

「網絡無法訪問」通常意味着您無法獲取_any_出站網絡。 –

+2

您的機器可以路由到'gmail-imap.l.google.com'嗎?您的網絡服務器是否被限制爲[強制訪問控制](http://en.wikipedia.org/wiki/Mandatory_access_control)工具,如[SELinux](http://en.wikipedia.org/wiki/Security-Enhanced_Linux), [TOMOYO](http://tomoyo.sourceforge.jp/index.html.en)或[SMACK](http://schaufler-ca.com/)? – sarnold

+0

@sarnold,我不確定。我怎麼能找到這個? –

回答

3

後進一步的研究,我的主機(HostMonster)disallows this,所以我將不得不把我的業務在別處。 :/

+0

Bluehost顯然也可以解僱它 –

+0

@FranciscoPresencia,我相信他們是屬於同一家公司的。 –