我正在为朋友的婚礼写一个照片库webapp,他们想要一个照片库供客人提交他们当天拍摄的数码照片.
在评估了所有选项后,我认为对用户来说最简单的方法是让他们使用熟悉的界面(他们的电子邮件),让他们将图片作为附件发送.
我已经创建了一个邮箱,但现在我需要连接并检索这些附件以进行自动处理以添加到图库系统.但是怎么样?你有没有看过这方面的教程或预制课程?
Dre*_*erx 10
我曾经做过很多这方面的工作,但我找不到代码,这是我发现的缩小版本.它应该让你走上正确的道路.我曾经从cronjob运行这种类型的脚本.对不起,我找不到最终版本.(
// Open pop mailbox
if (!$mbox = imap_open ("{localhost:110/pop3/notls}INBOX", "user", "tester")) {
die ('Cannot connect/check pop mail! Exiting');
}
if ($hdr = imap_check($mbox)) {
$msgCount = $hdr->Nmsgs;
} else {
echo "Failed to get mail";
exit;
}
$MN=$msgCount;
$overview=imap_fetch_overview($mbox,"1:$MN",0);
for ($X = 1; $X <= $MN; $X++) {
$file = imap_fetchbody($mbox, $X, 1);
imap_delete($mbox, $X);
}
imap_expunge($mbox);
imap_close($mbox);
Run Code Online (Sandbox Code Playgroud)
祝好运!
如果您正在为此目的创建专用邮箱,使用过滤机制几乎绝对不是您想要的.相反,您希望将邮箱作为应用程序的管道,并让应用程序只读入来自stdin的消息,解析主体,并解析主体以获取附件.
我知道所有流行的基于unix的MTA支持邮箱是管道,例如sendmail,postfix和qmail.通常,您可以在别名文件中定义它,如下所示:
#sendmail 或postfix语法msgsubmit:"|/usr/bin/php~path/to/example.php"
然后邮件到msgsubmit @ get路由到php程序进行传递.
这样做的好处是不依赖于IMAP服务器或MTA之外的任何其他服务器,只要您可以控制目标主机的MTA,它就可以正常工作.如果您希望脚本检查系统上的所有消息,那么过滤就是您想要的,我猜测不是这种情况.
如果你想在某个地方保存一个副本(不是一个坏主意),只需定义别名以转到多个地址,如下所示:
msgsubmit: "| /usr/bin/php ~path/to/example.php", msgsubmit-box
Run Code Online (Sandbox Code Playgroud)
或后缀虚拟格式:
msgsubmit
"| /usr/bin/php ~path/to/example.php"
msgsubmit-box
Run Code Online (Sandbox Code Playgroud)
您使用什么 MTA?如果您使用 postfix + maildrop,您可以创建一个过滤规则,通过 PHP 脚本传输某些消息,然后处理传入的邮件。(谷歌搜索maildrop 和xfilter
)。
归档时间: |
|
查看次数: |
39103 次 |
最近记录: |