2

我正在尝试弄清楚如何做某事。这一定是可能的——我在多个系统(推特、脸书等)中看到过类似的事情。

我想做的基本事情是——有人在我的网站上发表评论。评论会发送到我的电子邮件以及我的 MySql 数据库。然后我直接在我的电子邮件上回复。回复将保存到数据库中,并自动批准用户的评论。

我不知道如何直接通过电子邮件与我的 MySql / PHP 系统对话。另外 - 我不知道如何设置收件箱?

我猜我需要设置邮件服务器规则,以便发送到 xxxx-response@mydomain.com 的电子邮件实际上被重定向到 php 脚本,其中 xxxx 是原始评论的标识符?

感谢您提供的任何光...

4

2 回答 2

3

假设您在一个unix 系统上,您可以设置一个帐户来接收邮件,例如“fred”,并在fred 的主目录中使用.forward 将电子邮件传送到您的php 脚本。例如

。向前:

|"/usr/bin/php /path/to/your/script.php"

每当电子邮件到达弗雷德的邮箱时,它将调用您的脚本。

于 2012-11-22T18:30:43.077 回答
1

您不能“通过电子邮件与 mysql 交谈”。电子邮件是一段被动的文本,没有任何东西可以采取行动。

该解决方案基于以下内容:

您有一个电子邮件帐户,并通过 php 脚本定期轮询该帐户的收件箱,方法是使用wget或类似的方式与crontab条目结合使用。您也可以创建事件驱动的方法,但这更复杂,并没有真正提供优势。对于在该收件箱中找到的所有消息,您检查它是否与数据库中的任何先前条目匹配。您可以这样做,因为您可以通过 php.ini 访问消息标题和正文(文本)。这就是你所需要的。通常,两条消息之间的连接是通过评估电子邮件程序在您按下回复按钮时设置的“In-reply-to”标头来完成的。它就像一个参考。

对帐户收件箱的访问是通过标准邮件访问协议完成的,通常是 pop3 或更好的 imap4。当邮件服务器不在同一个系统上时,显然您也想添加 ssl 加密。php 的imap扩展是实现这样一个客户端的一个很好的开始,它支持多种协议。

于 2012-11-22T18:25:14.080 回答