Ris

Ris

+657
Репутация
3771
Рейтинг
#1 Наборы, фильтр по полю Дата 13 апреля 2018 в 19:15

Может это поле не может так сортировать?

Jestik
Но в запросе ясно видно, что он должен выводить.
  1. WHERE (i.dateof >= DATE_SUB(NOW(), INTERVAL 7 DAY))
То есть строки, где dateof младше 2018-04-06 19:12:40, а те что старше — в выборку не попадают.
Еще раз прошу выполнить команду
  1. SELECT i.*, u.nickname AS user_nickname, f.title AS folder_title
  2. FROM que_con_poster i
  3. FORCE INDEX FOR ORDER BY (dataset_week)
  4. INNER JOIN que_users AS u FORCE INDEX (PRIMARY) ON u.id = i.user_id
  5. LEFT JOIN que_content_folders AS f ON f.id = i.folder_id
  6. WHERE (i.dateof >= DATE_SUB(NOW(), INTERVAL 7 DAY)) AND (i.is_parent_hidden IS NULL) AND (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
  7. ORDER BY i.date_pub DESC
  8. LIMIT 0, 15
в phpmyadmin
И посмотрите, что содержится в dateof в результатах запроса.
#2 Наборы, фильтр по полю Дата 12 апреля 2018 в 23:32

Вот это вот… может я все таки что то не так в настройках делаю..)

Jestik
Да что там можно не так сделать, когда вот это вот должно отсекать все старше недели
  1. WHERE (i.dateof >= DATE_SUB(NOW(), INTERVAL 7 DAY))
Вы теперь попробуйте вот это в пыхапеадмине выполнить:
  1. SELECT i.*, u.nickname AS user_nickname, f.title AS folder_title
  2. FROM que_con_poster i
  3. FORCE INDEX FOR ORDER BY (dataset_week)
  4. INNER JOIN que_users AS u FORCE INDEX (PRIMARY) ON u.id = i.user_id
  5. LEFT JOIN que_content_folders AS f ON f.id = i.folder_id
  6. WHERE (i.dateof >= DATE_SUB(NOW(), INTERVAL 7 DAY)) AND (i.is_parent_hidden IS NULL) AND (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
  7. ORDER BY i.date_pub DESC
  8. LIMIT 0, 15
и посмотрите, будет ли там запись за седьмое июня.
#3 Наборы, фильтр по полю Дата 12 апреля 2018 в 22:59
Jestik,
А есть там кроме счетчика запрос sql, где FORCE INDEX FOR ORDER BY (dataset_week) фигурирует?
#4 [ЕСТЬ РЕШЕНИЕ] Вывод Никнейма в стороннем компоненте 12 апреля 2018 в 22:25
<?php $prof = cmsCore::getModel('users')->getUser($dating['profile_id']); echo $prof['nickname']?>
#5 [ЕСТЬ РЕШЕНИЕ] Вывод Никнейма в стороннем компоненте 12 апреля 2018 в 21:56
@Sinatra,
Достаточно где-то в этом файле найти зацепку. id профиля, который просматривается.
А уж с его помощью можно выдать никнейм.
Вы можете сказать, как там в этом файле id профиля фигурирует?
#6 [ЕСТЬ РЕШЕНИЕ] Вывод Никнейма в стороннем компоненте 12 апреля 2018 в 21:03
@Sinatra,
Ну хоть какие-то упоминания о профиле юзера в шаблоне есть?
Выведите там это временно на посмотреть print_r($user); print_r($profile);
И гляньте чего там прилетает.
#7 Наборы, фильтр по полю Дата 12 апреля 2018 в 20:39
Jestik,
Выполните этот ваш запрос
  1. SELECT COUNT( i.id ) as count
  2. FROM que_con_poster i
  3. FORCE INDEX FOR ORDER BY (dataset_week)
  4. WHERE (i.dateof >= DATE_SUB(NOW(), INTERVAL 7 DAY)) AND (i.is_parent_hidden IS NULL) AND (i.is_approved = '1') AND (i.is_deleted IS NULL) AND (i.is_pub = '1')
в phpmyadmin и посмотрите, будут ли там записи, которые там быть не должны и каким образом они туда попали.
#8 [ЕСТЬ РЕШЕНИЕ] Вывод Никнейма в стороннем компоненте 12 апреля 2018 в 20:23
@Sinatra,
Ну так чтобы совсем этим не заморачиваться просто добавьте в рендер
'nickname' => $profile['nickname']
Потом в шаблоне сможете к нему обращаться просто $nickname

Я видел этот компонент. Это страшно.
#9 [ЕСТЬ РЕШЕНИЕ] Вывод Никнейма в стороннем компоненте 12 апреля 2018 в 20:03
@Sinatra,
Вы программист или где?
Посмотрите, откуда берется эта переменная $profile.
Подсказка:
\system\controllers\users\actions\profile.php

У Вас в вашем компоненте хоть как-то присутствует переменная, которая обозначает юзера, профиль которого просматривается?
Может хотя бы его id есть?
#10 А где правила рейтинга и голосования найти? 12 апреля 2018 в 19:54

сколько можно голосовать за или против?

Donto
До отказа кнопки мыши.
#11 [ЕСТЬ РЕШЕНИЕ] Вывод Никнейма в стороннем компоненте 12 апреля 2018 в 19:33

мне же нужно выводить в шаблоне никнейм пользователя чей профиль просматривается

@Sinatra
Так посмотрите, как он выводится в стандартном шаблоне:
\templates\default\controllers\users\profile_view.tpl.php
#12 Наборы, фильтр по полю Дата 12 апреля 2018 в 16:51
Jestik,
На вид все правильно.
Вот это вот условие фильтрует записи, где dateof (кстати, что это за поле? сами добавляли?) больше или равно текущая дата + 7 дней
  1. i.dateof >= DATE_SUB(NOW(), INTERVAL 7 DAY)
Проверьте эту запись, которая от 07.06.2018. Может там эта dateof в каком-то неправильном формате записана? Попробуйте её вручную переписать.
#13 [ЕСТЬ РЕШЕНИЕ] Не выводит результат при определенной последовательности 12 апреля 2018 в 16:33

Добрый день, не могли бы вы посмотреть на код и подсказать почему не работает

snoopik
Потому что в самом низу кода куча условий. Если входящие данные удовлетворяют какому-нибудь условию — выводится то или иное значение.
Так вот то, что вводите Вы не удовлетворяет ни одному из условий.
#14 При создании нового типа контента на ICMS2 вылезло «503 Service Unavailable» 12 апреля 2018 в 15:12

все, само заработало....

@bbssochiru
Надо говорить "Бох помог". laugh
#15 Наборы, фильтр по полю Дата 12 апреля 2018 в 13:04

не совсем понял)

Jestik
Ну в отладке выводятся запросы sql и запрос, в котором есть что-то типа FORCE INDEX (системное имя вашего датасета) и надо посмотреть.
🍪Мы используем файлы cookie для работы сайта. Читать подробнее.