0

私は、正しい日付に強く依存するphp/mysqlアプリに取り組んでいます。データベースに挿入された日付が常に正しいことを確認するため、また php/mysql の日付関数はシステム クロックに依存しているため、日付フォーム フィールドに現在の日付を入力し、それを現在の日付と比較するようにユーザーに依頼することにしました。データベースにデータを挿入する前に、CURDATE() を使用してデータベースに挿入します。

これが正しい方法なのか、それとも日付の整合性を確保するためのより良い解決策なのかわかりません。

4

1 に答える 1

0

回答へのアップグレード

通常、システムクロックが正しいかどうかに依存します。これは、ユーザー入力よりもはるかに自分で制御できるものであり、意図的または偶発的に誤っている可能性があります。

CURDATE()ステートメントの値として使用し、ネットワークタイムプロトコルクライアントを実行してシステムクロックを正しく保つINSERTなどの対策を講じることをお勧めします。最近のほとんどのオペレーティングシステムには、デフォルトでそのようなソフトウェアが含まれているだけでなく、通常、すぐに構成および動作します。

システムがスタンドアロンであり、ネットワークから時刻を更新できない場合は、次のいずれかの組み合わせを検討できます。別のソースから時報を受信する(NPL信号などの無線など)。システムクロックを定期的に(特に起動時に)確認します。CMOSバッテリーを監視し、タイムリーに交換されていることを確認します。または充電式電池を使用します。

于 2012-04-27T09:21:04.410 に答える