2017-02-05 21 views
0

誰でも何が間違っているのを見ることができますか?私はcan`t :(日付ピッカーからmysql/phpまでの奇妙な日付フォーマット

例日:10日目、02月、年間2017

私のDBには、それが挿入されます。2017年10月2日

DBがDATEに設定されている

のjQuery日付ピッカー:HTMLへ

$('.datepicker').daterangepicker({ 
    singleDatePicker: true, 
    locale: { 
     format: 'DD/MM/YYYY' 
    } 
}); 

日付ピッカー出力:2017年10月2日

PHP:

$Newdate = date('Y-m-d', strtotime(str_replace('-', '/', $DateTaken))); 

なぜ日と月が切り替わるのですか?あなたは、日付()関数での日付の書式を変更する必要が

答えて

0

$Newdate = date('d-m-Y', strtotime(str_replace('-', '/', $DateTaken))); 

Documentaion: http://php.net/manual/en/function.date.php

+0

てきたが、ドキュメントを読んで、しかし何を示唆すると、日付が0000-00-00として挿入可能。日付は、ユーザーの入力を表示するだけで、日付を「Y-m-d」と理解している日に変換し、それでも月と日を切り替える場合は正しいですか? – KommerSnart

+0

これを確認してください:http://stackoverflow.com/questions/8338031/mysql-setup-the-format-of-datetime-to-dd-mm-yyyy-hhmmss-when-creating-a-tab ... "MySQLはDATETIME値を取得し、 'YYYY-MM-DD HH:MM:SS'形式で表示します。これはmysqlサイトからのものです。このタイプのみを保存することはできますが、表示する必要がある場合は、多くの時間フォーマット関数の1つを使用して変更することができます。 –

+0

OK、DATEからDATETIMEにテーブルを変更し、新しい日付形式、同じ結果で再試行しました。しかし、私が日付(「Y-m-d」)から今日(「Y-d-m」)に変更された場合、それは機能しました!ユーザーが入力すると、日付がdbに正しく保存されました。日10月2年2017年の結果(db = 2017-02-10 00:00:00):D – KommerSnart

関連する問題