Расхождение даты в запросе ::find и при её выборе через yii Datepicker

149
06 марта 2018, 05:02

Есть SQL запрос следующего вида

$model = News::find()->alias("n")->select(['n.id', 'name', 'id_author', 'cdate_int' => new Expression("FROM_UNIXTIME(cdate_int, '%Y')"), 'status'])
        ->where(new Expression("FROM_UNIXTIME(cdate_int, '%d') = '$userDay' AND FROM_UNIXTIME(cdate_int, '%m') = '$userMonth' "
        . "AND id_region = :id_region", [":id_region" => REGION_ID]))
         ->joinWith("rating nr")->orderBy("nr.rate DESC")->all();
        $result = ArrayHelper::index($model, NULL, "cdate_int");

Он выбирает из моей БД новость за день и месяц, которые указаны в переменных $userDay и $userMonth. Выбранные данные индексируются по году

$result = ArrayHelper::index($model, NULL, "cdate_int");, после чего $result передается в представление index.

Суть проблемы заключается в том, что в DatePicker я выбираю новость за 9 августа, в переменные $userDay и $userMonth попадают нормальные значения и выбираются корректные данные. Если же я пытаюсь выбрать через Datepicker новости за 1 августа, то выборка происходит за 31 июля. Дата хранится в формате timestamp, тип поля INT.

Как можно решить эту проблему расхождении дат? Вот так выглядит код Datepicker в представлении:

DatePicker::widget([
  //условие для того чтобы поле ввода не становилось пустым после выбора даты 
 //или если еще ничего не выбрано
'value' => (empty($today)) ? Yii::$app->getRequest()->getQueryParam('date') : $today,
'name' => 'userdate',
'options' => ['class' => 'col-md-2',
    'data-role' => 'datepicker-widget'
],
'id' => 'userdate',
'clientOptions' => [
    'onSelect' => new \yii\web\JsExpression("function (date) {
                        $.ajax({
                            type: 'GET',
                            url: 'index/',
                            data: {date: date},
                            success: function (result) {
                                console.log('success' + ' ' + date)
                            },
                        });
                    }"),
    ],
]);
READ ALSO
Помогите прочитать данную функцию

Помогите прочитать данную функцию

Прошу помочь мне прочитать логику данного кода что за что отвечаетЕсли есть желание помочь, пожалуйста, продублируйте данный код в ответ...

158
Не удается передать в массив параметров компонента редактирования формы ID элемента. Bitrix

Не удается передать в массив параметров компонента редактирования формы ID элемента. Bitrix

Подобный вопрос возникал уже на форуме (ссылка) Но все равно не понимаю как использовать этот компонент на редактированиеУ меня уже отфильтрован...

151
Как в функции вырезать и передать поля?

Как в функции вырезать и передать поля?

Всем доброго времени сутокУ меня два вопроса

165
группировка полей yii2

группировка полей yii2

как вытащить группированные поля(received_person_id), через count не получается

177