TemKa_SD 9 11/14/18 02:34 Здравствуйте. Не могу сообразить. У меня есть year и month в разных полях, вот это рабочий код для month, мне нужно добавить еще для года так же. Если выбран только месяц, отображать текущий год и выбранный месяц.Если выбран только год, отображать текущий месяц и выбранный год.Если выбран и месяц и год, отображать и месяц и год. Такие же условия должны быть? if ( isset( \IPS\Request::i()->month ) and isset( $months[ \IPS\Request::i()->month ] ) ) { $sqlCurrentDate = " AND year='" . $yearNow . "' AND month='" . $months[ \IPS\Request::i()->month ] . "' "; } else if ( isset( $year ) AND isset( $month ) ) { \IPS\Request::i()->month = $monthNow; \IPS\Request::i()->year = $yearNow; $sqlCurrentDate = " AND year='" . $yearNow . "' AND month='" . $monthNow . "' "; } Поделиться сообщением Ссылка на сообщение
TemKa_SD 9 11/14/18 02:42 Как правильно сделать 3 условие? // Если выбран только месяц. if ( isset( \IPS\Request::i()->month ) and isset( $months[ \IPS\Request::i()->month ] ) ) { \IPS\Request::i()->year = $yearNow; $sqlCurrentDate = " AND year='" . $yearNow . "' AND month='" . $months[ \IPS\Request::i()->month ] . "' "; } // Если выбран только год. else if ( isset( \IPS\Request::i()->year ) and isset( $years[ \IPS\Request::i()->year ] ) ) { \IPS\Request::i()->month = $monthNow; $sqlCurrentDate = " AND month='" . $monthNow . "' AND year='" . $years[ \IPS\Request::i()->year ] . "' "; } // Если выбран и месяц и год. else if ( ) { } // Если ничего не выбрано, текущие год и месяц. else if ( isset( $year ) AND isset( $month ) ) { \IPS\Request::i()->month = $monthNow; \IPS\Request::i()->year = $yearNow; $sqlCurrentDate = " AND year='" . $yearNow . "' AND month='" . $monthNow . "' "; } Поделиться сообщением Ссылка на сообщение
newbie 1723 11/14/18 05:18 Если у Вас в WHERE есть и год и месяц, то смысл городить огород с if/else \IPS\Request::i()->month = isset($months[\IPS\Request::i()->month]) ? $months[\IPS\Request::i()->month] : $monthNow; \IPS\Request::i()->year = isset($years[\IPS\Request::i()->year]) ? $years[\IPS\Request::i()->year] : $yearNow; $sqlCurrentDate = здесь уже используете \IPS\Request::i()->month и \IPS\Request::i()->year 1 Поделиться сообщением Ссылка на сообщение