Forums / National / Russian / Модули и плагины / Плагин pagecount не работает с SQL условием

prostogorod
#1 2017-02-06 22:15

При использовании такой конструкции

{USERS_DETAILS_ID|pagecount('news','','','page_owner = $this')}

Выдает ошибку:

SQL error 42000: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3

И ругается на этот участок кода:

$totalitems = $db->query("SELECT COUNT(*) FROM $db_pages AS p WHERE page_state='0' $where_cat $sqlq")->fetchAll();

 

Помогите, пожалуйста, решить эту проблему!

Остальные конструкции типа:

{USERS_DETAILS_ID|pagecount('news','','','')}
{PHP|pagecount('news')}

работают...  А также еще вопрос какие SQL условия существуют для практики, чтобы использовать этот плагин?

 

Kort
#2 2017-02-09 11:19

Правильно будет:

{USERS_DETAILS_ID|pagecount('news','','','page_ownerid = $this')}

В примере исправил )) Еще условия можно использовать, например, такие:

  • page_date больше/меньше/равно указанной даты
  • page_count больше/меньше/равно указанного количества

или любые условия с полями или экстраполями

SED.by - создание сайтов, разработка плагинов и тем для Котонти
prostogorod
#3 2017-02-09 15:23
{USERS_DETAILS_ID|pagecount('news','','','page_ownerid = $this')}

Да, спасибо! Работает! Но у меня вопрос как через функцию,  чтобы в любом месте можно было ввывести количество страниц конкретного пользователя?

Kort
#4 2017-02-12 12:15
{USERS_DETAILS_ID|pagecount('news','','','page_ownerid = 1')}

-- с явным указанием id пользователя

{PHP.usr.id|pagecount('news','','','page_ownerid = $this')}

-- для текущего пользователя

... или каким-то еще способом -- в зависимости от задачи

SED.by - создание сайтов, разработка плагинов и тем для Котонти