2011-12-27 21 views
0

私のデータベースに情報を保存しているフォームを作成しました。私は毎日午後11時に行くページを作成し、その日の情報をプルして私にメールします。今日の特定の時刻にPHPにメールを送信する方法

これは私のデータベース構造である:

1 ID int(11) AUTO_INCREMENT 
2 Who text  utf8_general_ci 
3 Time text  utf8_general_ci 
4 What text  utf8_general_ci 
+6

"ページ"という言葉でPHPの考え方を止めるのに役立ちます。 Web中心のビューでは、PHPは他のプログラムと同じようなプログラムであり、cronのような標準的なシステムツールで特定の時間に実行するようにスケジュールされているという事実を見逃してしまいます。 –

+1

@Extelliqentので、crontabやスケジュールされたタスクを使用する必要があります(私の答えに記載されています....) – Neal

答えて

2

ウェブサーバーへのシェルアクセスがある場合は、crontabを使用して、指定された時刻にphpスクリプトを実行するスケジュールを設定できます。

これは、ページを閲覧している人と同じように動作します。誰かがあなたのページをブラウズするたびに、スクリプトが実行されます。スケジュールが始まると、スクリプトが実行されます。唯一の違いは、それがローカルユーザーであり、外部ユーザーではないことです。

あなたの望むように動作するようにスクリプトを設定してから、crontabをセットアップするだけです。

Here's crontabの使い方を説明するリンク。これはあなたを始めてくれるでしょう。

+0

自分のコンピュータにスケジュールタスクを作成してページを開くことができます。その後、スクリプトを実行してページを閉じることができます。それははるかに簡単で速い方法でしょう。しかし、それは私に良いアイデアを与えたあなたの助けに感謝します。私は、PHPはそれを解決するだろうと思った。 – Extelliqent

+0

PHPスクリプトを 'php'コマンド(例えば、' php stuff.php')を使って直接実行することができます。もしあなたがそれをユーザーのやりとりを必要としない形式にすることができれば、ブラウザなしで直接実行することができます関与している。 – marnir

4

は、LinuxのcrontabまたはWindowsのスケジュールされたタスクのいずれかを使用する必要があります。

+0

私はそれをブラウズせずにいくつかのアクションを実行しているWebページについて話しています。 – Extelliqent

+1

@Extelliqentこれは不可能です。 – Neal

+0

...またはほとんどの時間を過ごす長い時間を費やす仕事 –

0

Cron JobsまたはPHP Botを使用してください。 PHPボットを使用するのは、cronジョブを使用する必要がないからです。データベースにunixタイムスタンプと "SENT"カラムを設定するだけで、それを取得できます。

関連する問題