• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:タイマー機能を使って指定時間にメール送信したい)

タイマー機能を使って指定時間にメール送信したい

このQ&Aのポイント
  • タイマー機能を使用して指定時間にメールを送信する方法を知りたいです。
  • PC初心者向けに管理画面を作成して、ブラウザから操作してもらいたいです。送信するメールの内容や送信時間は毎回変わります。
  • phpからcrontabを編集してタイマー処理を実現しようとしましたが、パーミッションの問題で書き込みができませんでした。解決策を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

回答ではありませんが、crontabファイルが777って。。。恐すぎません? (最悪でも許可された処理しか出来ないようにするために、  sudoとかmod_suexecを使うべきかと) ただ、メールを指定された時刻に発行するだけのことなら、cronを触らなくても system("at 実行する日付と時刻 メール発行するシェル"); で、指定するだけでできますよ。 もし、1回のエントリーでメール発行が一回ということでなく、 一度エントリーしたら、同じメールを毎日や毎週でメールを定期発行するというのであれば、独自にキュー管理するテーブルを作って cronで、5分毎にphpを動かして、そのphpが最新5分以内のキューデータをみてメール発行するようにすればいいのではないでしょうか。 (前後処理時間差の関係でメールを多重発行しないように、発行済みのキューはテーブルに発行時刻を埋めるなりして)

yamada0812
質問者

お礼

>superside0様 返信ありがとうございます。 crotは固定で○分ごとに起動し、 phpでDBを見て送信メールを送るようにすれば良いのですね。 簡単な事を難しくやろうとしてました。 ありがとうございます。