我正在开发一个系统,如果客户提交订单,他们会收到确认电子邮件。但是,我想让以下事情发生。如果客户随后点击回复,并回复此电子邮件地址,我希望他们的邮件不会转到该电子邮件地址,而是存储在服务器上的MySQL数据库中。
有没有办法以这种方式“拦截”和发送电子邮件?
答案 0 :(得分:5)
将设置的回复设置为直接进入您可以使用PHP imap_open访问和阅读电子邮件访问的邮箱。有了这个,将数据按需要插入数据库应该是一件简单的事情。
<?php
$mbox = imap_open("{imap.example.org:143}", "username", "password");
echo "<h1>Mailboxes</h1>\n";
$folders = imap_listmailbox($mbox, "{imap.example.org:143}", "*");
if ($folders == false) {
echo "Call failed<br />\n";
} else {
foreach ($folders as $val) {
echo $val . "<br />\n";
}
}
echo "<h1>Headers in INBOX</h1>\n";
$headers = imap_headers($mbox);
if ($headers == false) {
echo "Call failed<br />\n";
} else {
foreach ($headers as $val) {
echo $val . "<br />\n";
}
}
imap_close($mbox);
?>
PHP IMAP functions的完整列表非常详尽。
答案 1 :(得分:1)
如果没有邮箱,这是不可能的。
但是您可以为此执行特殊邮箱,并从PHP获取imap_*
函数的电子邮件,并基于subject
或email
将其保存在数据库中,然后删除该电子邮件。
答案 2 :(得分:1)
使用PHP IMAP函数,您可以读取发送到特定地址的邮件。但是,您不能将其发送到该地址。但您可以使用邮件,将其放入数据库并删除它。
答案 3 :(得分:0)
我认为没有办法轻易做到这一点。您可以做的是在您的电子邮件中有一个回复标题,并将其发送到受监控的邮箱,守护进程类型的服务会定期检查新电子邮件并开展工作。
答案 4 :(得分:0)
您可以查看以下链接和资源:
答案 5 :(得分:0)