タイトルが示すように、mysql から javascript に移行するたびに 1 日を失ってしまい、それを理解できません。データベースに挿入するときに 1 日を失います (たとえば、10/14/12 を入力すると、データベースは 10/13/12 を読み取るとします)、データベースから読み取るときにも 1 日を失います (10/13 を取得します)。 /12 となり、現在は 10/12/12 になっています)。
これが私のプロセスです:
//date input from jquery ui datepicker
$('#datepicker'+p).datepicker({numberOfMonths: 3, showButtonPanel: true, dateFormat: "D, d M, yy"});
//date sent to php to upload to mysql so there is a format conversion
$start = date("Y-m-d", strtotime($startdate));
ダウンロードに進みます:
//date taken from mysql no modifications
//date modified to be sent to viewer in a nicer format
var start = $.datepicker.formatDate('D, d M, yy', new Date (item.start));
私が思うこと: 問題は両方の方法で発生するようであり、私の JavaScript が問題ではないと確信しています。これは私の mysql サーバーの問題でしょうか? また、日付は DATE 型として mysql に保存されることに注意してください。
//as requested my sql code
INSERT INTO classdates (start, end, hours, days, off, notes, type, branch) VALUES(:start, :end, :hours, :days, :off, :notes, :type, :branch)