は、私は私のカスタムモジュールに日付フィールドを追加するには、このリンク上の手順に従っ私は日付を選択して設定を保存するとき、それは選択された一つ前の日一日を私に返し:(Magentoのカスタムモジュールの日付フィールドには、選択した日付の前日までの日付を保存
例えば:
私は2月25日、20を選択すると、 12とは、2012年
お知らせは、それは私がますprint_r管理コントローラで($モデル)前に保存したときに私はこれを取得:(
1日前に保存され、それが保存されます、保存して2月24日を返します。
[start_date] => 2012-01-24 16:00:00 // i set it to 25 but its saving 24
[end_date] => 2012-01-26 16:00:00 // i set it to 27 but .....
[status] => 1 [content] => asdasdadsd
[created_time] => 2012-01-25 07:27:11 // it gives current date and it is O'rite
[update_time] => 2012-01-25 07:27:11) //it gives current date and it is O'rite
注:
私は投稿日をエコー、それが正しかった私投稿データに問題がないことを意味するように設定されている場合は、 のクライアント側にはバグがないので、問題がどこにあるのかはデータベースに保存するように変換されます。任意のヘルプ???
if($data['start_date'] != NULL)
{
$date = Mage::app()->getLocale()->date($data['start_date'], Zend_Date::DATE_SHORT);
$model->setStartDate($date->toString('YYYY-MM-dd HH:mm:ss'));
}
if($data['end_date'] != NULL)
{
$date1 = Mage::app()->getLocale()->date($data['end_date'], Zend_Date::DATE_SHORT);
$model->setEndDate($date1->toString('YYYY-MM-dd HH:mm:ss'));
}
を、私は、このいずれかを試してみました:
echo $format = Mage::app()->getLocale()->getDateFormat(Mage_Core_Model_Locale::FORMAT_TYPE_SHORT).'<br/>';
if($data['start_date'] != NULL)
{
echo $data['start_date']."<br/>"; // 01/27/12 correct date posted which i entered
$date = Mage::app()->getLocale()->date($data['start_date'], $format);
echo $date; /// Jan 26, 2012 4:00:00 PM but here we get back to one day
$time = $date->getTimestamp();
$model->setStartDate(Mage::getSingleton('core/date')->date(null, $time));
//$model->setStartDate($date->toString('YYYY-MM-dd HH:mm:ss'));
}
if($data['end_date'] != NULL)
{
echo $data['end_date'].'<br/>';
$date1 = Mage::app()->getLocale()->date($data['end_date'], $format);
$time = $date1->getTimestamp();
$model->setEndDate(Mage::getSingleton('core/date')->date(null, $time));
//$model->setEndDate($date1->toString('YYYY-MM-dd HH:mm:ss'));
}
$形式は、エコー:M/D/YY オリジナルの投稿日をここで
は私が試した私のinitiallコードです:01/27/12 $ dateエコー結果:2012年1月26日4:00:00
値がフォームから正しく送信されているかどうかを確認しましたか?コントローラーの操作に達すると正しいのですか?そうでなければ、クライアント側の問題があります。正しく提出された場合: 'print_r'の直前に' echo date_default_timezone_get(); 'とは何か?私はそれをエコー –
そのUTC :) – atif