-2

オークションサイトを運営しています。オークション時間は14日に設定されています。14 日後、データベースに変更を加える必要があります。最善の解決策は何ですか? 関数を作成し、スクリプトの開始時に呼び出すか、CRON を作成しますか?

4

2 に答える 2

1

間違いなく最も安定した方法は、確かに Unix サーバーで CRON ジョブを使用することです。

ただし、作成されたオークションごとにこれらのジョブをスケジュールする必要があります (各オークションの 14 日後)。この場合、cron タブのようなものを介して cron ジョブを管理することを検討する必要があります。以下は、php / cron スケジューリング システムの設定方法に関する素晴らしいチュートリアルへのリンクです。

PHP で Cron ジョブを管理する

于 2013-06-02T07:24:03.390 に答える
0

ほとんどの場合、答えは特定の時間にデータをまったく変更しないことです。その答えは、必要なときに必要なだけデータを計算することです。例として、オークションのステータスを「実行中」から「完了」またはそれに類似したものに変更したいと推測しますが、そうではありません。

  1. オークションを作成するとき、DATETIMEフィールドの形式でデータベースに終了時刻を保存します
  2. 「実行中」のオークションを照会するときはいつでも、WHERE enddate > NOW()

このようにして、静的データで同じ効果を得ることができます。特に、多数のオークションを並行して実行している場合、非常に特定の時間に各オークションのステータスを変更すると、かなりの問題になる可能性があります。特に PHP のようなオンデマンド言語では。

于 2013-06-02T08:03:37.993 に答える