2

日付を作成して 3 日を追加しようとしています。次に、日付フィールド タイプで mysql db に保存しています。

これが私が持っているものです。

date('Y-m-d', strtotime("+3 days"));

次に、db に挿入します。日付の代わりに 0000-00-00 を取得することになりますが、エコーアウトすると正しく表示されます。

ただし、使用する場合

date('Y-m-d')

それをデータベースに挿入すると、正常に動作します。

どんな助けでも大歓迎です!

編集

値がクエリに渡されていないことをさらにデバッグしていることがわかりました。組み込みの CMS 関数を使用していて、エラーが表示されていなかったため、以前はこれをキャッチできませんでした。

4

1 に答える 1

3

確認事項:

  1. date('Y-m-d'andの出力date('Y-m-d', strtotime('+3 days'))(エコーアウト)。
  2. この値を挿入するクエリ文字列を表示します。これには、クエリを実行する前のファイル バージョンも含まれます。
  3. これには、純粋な MySQL 操作を使用するように切り替えることを検討してください。

    INSERT INTO ... VALUES (now() + INTERVAL 3 DAY)

代わりに、native->string->native->etc... からの往復を数回節約します。

于 2012-07-23T15:51:34.553 に答える