大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> PHP专区 -> 构建简单的Webmail系统

构建简单的Webmail系统

时间: 2021-07-31 作者:daque

这是一段web mail的演示代码,功效不是很强,然而构造还比拟完备,重要的功效如察看文献夹,察看函件,恢复,来信都有。然而步调中没有商量附属类小部件解读和发送的题目。 (原文在 这边)。仅引荐给蓄意领会webmail编制程序的网友做个参考。越发完备的webmail请大师到 这边搜索。 请提防:步调中运用了http认证功效,此功效需共同apache效劳器运用。 -------------------------------------------------------------------------------- 将以次代码辨别存为 index.php3, imapfuncs.phl 摆设imapfuncs.phl文献中的$m_host = "localhost"; $m_mailserver = "transit.fast.no"; 而后欣赏 index.php3 即可.  -------------------------------------------------------------------------------- index.php3 <?php /* $id: index.php3,v 1.3 1999/04/14 12:12:32 borud exp $ */ /* load the imap library functions we\'ve written */ include("imapfuncs.phl"); m_login($m); ?> <html> <head> <title><?php echo "$m_sysname"; ?></title> </head> <body bgcolor=#aaaaaa text=#000000 link=#440000 vlink=#440000 alink=#ff00ff> <h1 align=center><?php echo "$m_sysname"; ?></h1> <hr size=1 noshade> <p> <?php if ($cmd == "delete") { m_delete($marked, $m); m_list($m); } elseif ($cmd == "display") { m_display($n, $m); } elseif ($cmd == "compose" || $cmd == "reply") { m_compose($n, $m); } elseif ($cmd == "send") { m_send($to, $subject, $body); m_list($m); } else { m_list($m); } ?> <p> <hr size=1 noshade> <?php echo "user: $php_auth_user"; ?> </body> </html> -------------------------------------------------------------------------------- imapfuncs.phl <?php /* -*-c++-*- */ /* $id: imapfuncs.phl,v 1.4 1999/04/14 12:12:32 borud exp $ */ /* configurable parameters */ $m_host = "localhost"; $m_mailserver = "transit.fast.no\"; $m_color_odd = "#cccccc"; $m_color_even = "#eeeeee"; $m_color_head = "#aaaaff"; $m_color_bg = "#ffffff"; /* globals */ $m_port = 143; $m_service = "imap"; $m_sysname = "simple php3 imap interface 1.0"; $m_mbox = "{$m_host:$m_port/$m_service}"; $m_realm = "imap interface"; $mbox = false; /* functions */ function m_login ($mailbox = '') { global $mbox, $m_realm; global $php_auth_user, $php_auth_pw; if ($mbox) { return true; } if (! $php_auth_user) { m_reject($m_realm); } $mbox = @imap_open(m_mailbox_name($mailbox), $php_auth_user, $php_auth_pw); if (! $mbox) { m_reject($m_realm); } return true; } function m_list($mailbox = '') { global $mbox, $php_self; global $m_color_odd, $m_color_even, $m_color_head, $m_color_bg; /* if not logged into server, do so */ if (! $mbox) { if (! m_login($mailbox)) { return false; } } $num = imap_num_msg($mbox); echo "<form action=$php_self type=post>\n"; echo "<center><table border=0 cellspacing=0 cellpadding=1 width=90%>\n"; echo "<tr align=left bgcolor=$m_color_head>"; echo "<th> </th><th>from</th><th>subject</th><th>date</th>"; echo "</tr>\n"; for ($i=1; $i < ($num+1); $i++) { $head = imap_header($mbox, $i, 50, 50, 0); $from = $head->fetchfrom; $subj = $head->fetchsubject; $date = m_date_format($head->date); $bgcolor = ($i%2 == 0)?$m_color_odd:$m_color_even; echo "<tr bgcolor=\"$bgcolor\">\n"; echo " <td><input type=checkbox name=marked[] value=$i></td>\n"; echo " <td>$from</td>"; echo "<td><a href=\"$php_self?m=$mailbox&n=$i&cmd=display\">$subj</a></td>"; echo "<td>$date</td>\n"; echo "</tr>\n"; } if ($num <= 0) { echo "<tr><td align=center colspan=4 bgcolor=$m_color_bg><br>"; echo "<font size=+1 color=#ff0000>no messages in mailbox</font>"; echo "<br><br></td></tr>\n"; } echo "<tr bgcolor=$m_color_head><td colspan=4>"; echo "<input type=submit name=cmd value=delete>"; echo "<input type=submit name=cmd value=compose>"; echo "<input type=submit name=cmd value=refresh>"; echo "</td></tr>\n"; echo "</table></center>\n"; echo "</form>\n"; return true; } function m_display($msgno, $mailbox = '') { global $mbox, $m_color_head, $m_color_bg; global $php_self; if (! $mbox) { if (! m_login($mailbox)) { return false; } } $struc = imap_fetchstructure($mbox, $msgno); if (! $struc) { return false; } $head = imap_header($mbox, $msgno, 50, 50, 0); $from = $head->fromaddress; $subj = $head->subject; $date = $head->date; $body = htmlentities(imap_body($mbox, $msgno)); echo "<center>\n"; echo "<table border=0 cellspacing=0 cellpadding=10 width=100%>\n"; echo "<tr bgcolor=$m_color_head><th>message #$msgno: $from / $subj</th></tr>\n"; echo "<tr bgcolor=$m_color_bg><td><pre>\n"; echo "from: $from\n"; echo "subject: $subj\n"; echo "date: $date\n"; echo "<hr size=2 noshade>\n"; echo "$body\n"; echo "</pre></td></tr>\n"; echo "<tr bgcolor=$m_color_head><td>"; echo "<form action=$php_self method=post>"; echo "<input type=hidden name=m value=$mailbox>\n"; echo "<input type=hidden name=n value=$msgno>\n"; echo "<input type=hidden name=marked[] value=$msgno>\n"; echo "<input type=submit name=cmd value=back>"; echo "<input type=submit name=cmd value=reply>"; echo "     <input type=submit name=cmd value=delete>"; echo "</td></tr>\n"; echo "</table>\n"; echo "</center>\n"; return true; } function m_delete ($msgno, $mailbox='') { global $mbox; if (is_array($msgno)) { while (list($dummy, $num) = each($msgno)) { imap_delete($mbox, $num); } imap_expunge($mbox); } else { return false; } return true; } function m_compose ($msgno='', $mailbox='') { global $mbox, $m_color_head, $m_color_bg; global $php_self, $php_auth_user, $m_mailserver; if ($msgno != '') { $head = imap_header($mbox, $msgno, 150, 150, 0); $to = $head->fromaddress; $subject = "re: " . $head->subject; $body = "$to wrote:\n"; $body .= ereg_replace("\n","\n>", "\n" . imap_body($mbox, $msgno)); } else { $to = ""; $subject = ""; $body = ""; } echo "<center>\n"; echo "<form method=post action=\"$php_self\">\n"; echo "<table border=0 cellpadding=5 cellspacing=0>\n"; echo "<tr bgcolor=$m_color_head><td align=right>to:</td>"; echo "<td><input type=text name=to value=\"$to\" size=50></td></tr>\n"; echo "<tr bgcolor=$m_color_head><td align=right>subject:</td>"; echo "<td><input type=text name=subject value=\"$subject\" size=50></td></tr>\n"; echo "<tr bgcolor=$m_color_bg><td colspan=2>"; echo "<textarea cols=76 rows=10 name=body wrap=hard>$body</textarea>"; 

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.