2

私は何かをする方法を見つけようとしています。可能に違いない - 複数のシステム (Twitter、Facebook など) で同様のことが行われているのを見たことがあります。

私がやりたい基本的なことは、誰かが私のウェブサイトにコメントを残すことです。コメントは、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"

電子メールが fred のメールボックスに到着するたびにスクリプトが呼び出されます。

于 2012-11-22T18:30:43.077 に答える
1

「メールから mysql に話しかける」ことはできません。メールは受動的なテキストであり、アクションを起こすことはできません。

ソリューションは、次のようなものに基づいています。

メール アカウントを持っていて、そのアカウントの受信トレイを定期的に php スクリプトを使用して、wgetまたは同様のcrontabエントリと組み合わせてポーリングします。イベント駆動型のアプローチを作成することもできますが、それはより複雑であり、実際には利点がありません。その受信トレイ内で見つかったすべてのメッセージについて、データベース内の以前のエントリと一致するかどうかを確認します。php でメッセージのヘッダーと本文 (テキスト) にアクセスできるため、これを行うことができます。必要なのはそれだけです。通常、2 つのメッセージ間の接続は、返信ボタンを押したときに電子メール プログラムによって設定される「In-reply-to」ヘッダーを評価することによって行われます。参考程度です。

アカウントの受信トレイへのアクセスは、標準のメール アクセス プロトコル (通常は pop3 またはより優れた imap4) によって行われます。メール サーバーが同じシステム上にない場合は、明らかに ssl 暗号化も追加する必要があります。php のimap拡​​張機能は、そのようなクライアントを実装するための非常に良い出発点であり、いくつかのプロトコルをサポートしています。

于 2012-11-22T18:25:14.080 に答える