直播中
你是不是抱怨過,當(dāng)你呆在一個朋友的房子或拜訪親戚時,想檢查郵件但是不知道你的POP/IMAP設(shè)置?;蛘吒愕氖?,他們沒有POP或IMAP軟件?
基于Web的電子郵件似乎只是在最近才在網(wǎng)上被談起。這里就是如何使用PHP來生成一個快速的,簡單的和有效的IMAP或POP 郵件閱讀器。一旦這個做好了,你現(xiàn)在就能夠從世界的任何一個角落僅用一個瀏覽器來閱讀你的郵件。
第一件必需知道的是確認(rèn)你已經(jīng)具有了一個可用的IMAP服務(wù)器。你可以從ftp://ftp.cac.washington.edu/imap得到UW IMAP服務(wù)軟件和庫函數(shù)(你將需要把這個庫編譯進(jìn)PHP中,所以你可能也要安裝同庫在一起的IMAP服務(wù)軟件)。
一旦你已經(jīng)運(yùn)行了IMAP服務(wù)器并且用IMAP支持編譯過了PHP(確信你讀過了PHP文檔中關(guān)于如何編譯支持IMAP的PHP),剩下的就很easy了!
我們將生成一個好用和簡單的基于3個腳本的mail閱讀程序。
第一個腳本將用來讀取用在IMAP中的用戶名及口令。我們將使用標(biāo)準(zhǔn)的PHP認(rèn)證功能來做。
login.php3 包含:
--------------------------------------------------------------------------------
<?php
if (!$PHP_AUTH_USER) {
Header("WWW-authenticate: basic realm=\"Mail Chek\"");
Header("HTTP/1.0 401 Unauthorized"); }
else {
$MYDIR=ereg_replace("/[^/]+$","",$PHP_SELF);
Header("Location: $SERVER_NAME$MYDIR/messages.php3"); }
?>
--------------------------------------------------------------------------------
它簡單地讀取你的用戶名和口令并且重定向到郵件閱讀頁面。
messages.php3 包含:
--------------------------------------------------------------------------------
<?php
$MAILSERVER="{localhost/imap}";
$link=imap_open($MAILSERVER,$PHP_AUTH_USER,$PHP_AUTH_PW);
$headers=imap_headers($link);
for($x=1; $x < count($headers); $x++) { $idx=($x-1);
echo "<a href=\"view.php3?num=$x\">$headers[$idx]</a><br>"; }
?>
--------------------------------------------------------------------------------
它打開一個IMAP連接到通過$MAILSERVER所指定的郵件服務(wù)器,傳遞你的用戶名和口令。
它然后在一個循環(huán)中得到一個所有郵件的信息頭的列表,把它們打印出來。在打印出來之外,也給每一
個信息頭生成了一個指向view.php3的鏈接,傳遞給view.php3信息頭的信息序號。
view.php3 包含:
--------------------------------------------------------------------------------
<?php
$MAILSERVER="{localhost/imap}";
$link=imap_open($MAILSERVER,$PHP_AUTH_USER,$PHP_AUTH_PW);
$header=imap_header($link,$num);
echo "From: $header[fromaddress]<br>";
echo "To: $header[toaddress]<br>";
echo "Date: $header[Date]<br>";
echo "Subject: $header[Subject]<br><br>";
echo imap_body($link,$num);
?>
--------------------------------------------------------------------------------
view.php3象上面一樣打開IMAP連接,并且得到郵件消息的頭信息,將其打印出來。
它然后讀出郵件信息的信息體并打印到屏幕上。
就是它了!你現(xiàn)然擁有了一個基于web功能的郵件程序器...Hotmail要小心了,php來了!;^)
--------------------------------------------------------------------------------
翻譯的話:
這篇文章很簡單地實現(xiàn)了一個可以閱讀IMAP郵件協(xié)議的郵件閱讀程序。但是首先要在本地安裝一個IMAP
郵件服務(wù)器才可以。我試驗的時候使用了國內(nèi)的支持IMAP的免費(fèi)郵件,大家可以去http://www.363.net去申
請。這樣郵件服務(wù)器地址應(yīng)該改成為:{363.net:143}。還有一點要注意的是在messages.php3中,它將取出
每一個郵件的頭,但有時雖然有郵件可能取不出來,我想也許是沒有主題的原因吧,只是我的想象。所以大
家在試驗的時候,郵件最好寫出主題。這篇文章比較簡單,我將在某個時間寫一篇比較復(fù)雜的文章向大家繼
續(xù)介紹用PHP處理IMAP的編程。還有一點就是第一個腳本由于是用來讀入用戶名及口令的,所以可以不用,
在messages.php3中直接填入用戶名和口令即可。
轉(zhuǎn)自:PHPBuilder.com