2012-02-13 8 views
0

ウェブセミナーを実施中です。ウェブセミナーの3日前に私のサイトに登録されているすべての人にリマインダーメールを送ってほしい。PHPを使用して自動リマインダ電子メールを設定するにはどうすればよいですか?

登録者の詳細は私のMySQLにあり、PHPウェブサイトです。

どうすればよいですか?

ご協力いただければ幸いです。

ありがとう、

+5

1.毎日PHPスクリプトを実行するようにサーバーにcronを設定します。2. 3日後に開始するWebinarを確認するスクリプトを設定します3 。登録ユーザーを取得し、それらをメールしてください –

+0

ベストソリューションはAaron Wによって提供されたものです。しかし、あなたはcronjobsを設定する権限を持っていない場合... phpListのようなプログラムを使用することができます - あなたが送りたい電子メールのリストを取得します。 ... phplistのスケジュールを電子メールで送信すると、指定されたスケジュールで実行されます。 ----最良の方法ではありませんが、それはオプションです – user769889

+0

Aaron W.の解決策は良いことです。詳細が必要な場合はコメントしてください。 – drnewman

答えて

0

PHPには組み込みスケジューラがありません。

使用可能ないくつかのonline cronsがありますWindowsの

または

にUNIX/Linux上のcron

または

Schedulersを使用して検討すべきです。

あなたのphpスクリプトを呼び出します。

注:上記のリンクはdrupalサイトを参照していますが、cronとスケジューラに関する説明はpure-phpに適用されます。

1

ウェビナーの3日前に特定の時刻にリマインダースクリプトを実行するようにクローンジョブを設定できます。あなたのスクリプトはあなたのユーザーデータをループし、phpのmail関数のいくつかのバリエーションを使用して電子メールを送信します。 http://docs.cpanel.net/twiki/bin/view/AllDocumentation/CpanelDocs/CronJobs

私たちはあなたがいないなら上記のどの教えてください:

サーバーの種類が何であるかを確認しますが、あなたはここのcPanelを実行している場合はありませんがcronジョブを設定する方法についての彼らのドキュメントへのリンクがあります確かに私たちはいくつかの情報を提供することができます。

4

PHPはサーバ上で常時稼動しているプログラムではないため、PHP自身では実行できません。ユーザーがWebページを要求したときにのみ実行されます。電子メールを行うためにPHPスクリプトを呼び出すcronジョブをサーバー上にセットアップする必要があります。

最初に、データベースには、既に電子メールを送信したかどうかを示すフィールドが必要です。あなたのPHP電子メールスクリプトは、イベントまで3日以内であるかどうかをチェックし、その人に電子メールを送信していない場合は送信します。

次に、そのスクリプトをcronジョブから呼び出します。コマンドラインからPHPを実行するか、curlまたはwgetのようなものを使用して、Webブラウザでスクリプトを実行しているかのようにURLを取得できます。 (それはまた、必要ならば別のコンピュータからcronジョブを実行できることを意味するでしょう)

+0

こんにちは、私の記事に返信してくれてありがとう!初心者なので、私はプロセスを理解することが難しいと思う。現在のプロセスでは、登録ページ(php)から詳細を取得し、別のテーブルに保存します。誰かが登録したらすぐに、「登録ありがとうございます」というメールが送信されます。今、cronジョブとは何ですか?私はそれをどうしたらいいですか? FTPとDBにアクセスできます。私を助けてもらえますか? –

+0

概要については、http://en.wikipedia.org/wiki/Cron_jobを参照してください。サーバーを設定して設定する必要があります。だから、それを持っていなければ、自分のコンピュータにcronジョブ(またはWindowsのスケジュールされたタスク)を設定する必要があります。 – DisgruntledGoat

関連する問題