- 締切済み
メールで新着情報を更新させたい。
指定のメールアドレスにメールを送ると、新着情報を更新させたいです。 いろいろ検索しては見たのですが、なかなか詳しく書かれたものにたどり着けませんでした。 私の検索の仕方が悪かったのかもしれません。 (普通に営業的なところが出てきます…) 全く触れたことの無いことで、何がどうすればいいのかわかりません。 普通?のPHPだけで動かないとは思うのですが、間に何を入れればいいのか教えていただけませんでしょうか? スクリプト全部を教えていただけなくても、どれをどうして、これがこうなって…みたいな、流れを教えていただけたらと思います。 (全て教えていただけたらそれが一番ですが…) 未知過ぎてどうすればいいのかわからないので、何か進むきっかけになればと思い書き込ませていただきました。 私のレベルはPHPを少しわかるレベルです。(ネットショップを一から自分でなんとか完成させることが出来ました。そこの新着情報に使いたいです)
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- yambejp
- ベストアンサー率51% (3827/7415)
昔ながらの方式だと「.forwardでスクリプトを実行する」というのが ありますが、これはセキュリティ的にも環境の作りにくさ的にも 最近はあまりはやっていないですね、興味があったらググってみてください 普通の環境でおこなうのであれば (1)プールしておくメールアドレスをつくる (2)メールを読むPHPをかく もし所定の形式のメールがあれば、更新プログラムを実行、なければスルー 読み終わったらメールを削除 メールの読み込みにはPEAR::mailなど利用するとお手軽です http://pear.php.net/manual/ja/package.mail.mail.php (3)cronなどで定期的にPHPプログラムを実行する。 その際はwgetなどhttp経由で実行すればPHPの実行サーバーと定期処理を要求する サーバーは同じである必要はないため権限的にも有利 cronの実行タイミングは5分に1度程度であれば1日288回のチェックですし 負荷もたいして問題はないと思います。 (平日の朝8時から夜10時とか限定すればもっと少なくてもすみます)
メールをトリガとしてスクリプトを実行させるのは何気に結構面倒だったりします。 https://www.google.co.jp/search?q=%E3%83%A1%E3%83%BC%E3%83%AB%20%E3%83%88%E3%83%AA%E3%82%AC%E3%83%BC%20php そうではなく、簡易的なパスワード認証をつけて新着情報更新用のページを作るというのはどうでしょうか?単純にテキストファイルに書き込ませるならばすごく簡単ですね。あくまで「簡易的」なものなので、重要なパスワードを設定しないようにしてください。 http://pastebin.com/K6gR4nVT この情報をテキストとして読み出すときは <?php readfile('info.txt') ?> でどうぞ。 場合によっては <?php include('info.txt') ?> でPHPコードとして実行させるのもアリです。
補足
早速の回答ありがとうございます。 元ネタがネットショプなので、管理ページも作ってますし、そこから新着情報を更新するように組んでいますが、メールだと気軽さが違うかと思い、実装させたいと思って質問させていただきました。 メールからだと、スタッフたちもやってくれそうで…。
補足
私の使っているサーバーでは、cronも設定可能ということでしたので、そちらがベストなのでしょうか? 一定時間でメールをチェックさせて、あれば起動という流れであってますか? また少し調べてみます。