Как вывести ID группы в комментариях
ЕСТЬ РЕШЕНИЕ
ЗАКРЫТО
подскажите, пожалуйста
Как можно вывести ID группы пользователя в комментариях? Лопатил-лопатил компонент комментариев… чтот так ничего и не вышло. Подскажите, пожалуйста, что во фронтенде и моделе дописать . Понял ток как переменные в шаблон выводить
В фронтенде в шаблон поставил В моделе к запросу
как видно добавил В шаблоне переменная $is_group выводит везде значения = 2. Что и где еще надо подправить, подскажите плз.
assign('is_group', $inUser->group_id)->
public function getComments($only_published=true, $is_tree=false, $from_module = false) { $inUser = cmsUser::getInstance(); global $_LANG; $published = $only_published ? 'c.published = 1' : '1=1'; $sql = "SELECT c.*, u.id as user_id, u.group_id, IFNULL(u.nickname, 0) as nickname, IFNULL(u.login, 0) as login, IFNULL(u.is_deleted, 0) as is_deleted, IFNULL(p.imageurl, 0) as imageurl, IFNULL(p.gender, 0) as gender FROM cms_comments c LEFT JOIN cms_users u ON u.id = c.user_id LEFT JOIN cms_user_profiles p ON p.user_id = u.id WHERE {$published} {$this->inDB->where} {$this->inDB->group_by} {$this->inDB->order_by}\n"; if ($this->inDB->limit){ $sql .= "LIMIT {$this->inDB->limit}"; } $result = $this->inDB->query($sql);
u.id as user_id, u.group_id,
#3
30 апреля 2014 в 18:12
у пользователя id группы получается с помощью строчки
$group_id = $inUser->getGroupIdByUserId($inUser->id);
Сегодня в 03:57
Странник, результат тот же
Возможно не правильно изложил суть вопроса. Суть в том, чтобы не важно какой пользователь какой группы заходит на сайт, он должен видеть у коммента админа ид=2(ид группы), у коммента пользователя ид=1(ид группы) и т.д.
выводит везде значения = 2
Возможно не правильно изложил суть вопроса. Суть в том, чтобы не важно какой пользователь какой группы заходит на сайт, он должен видеть у коммента админа ид=2(ид группы), у коммента пользователя ид=1(ид группы) и т.д.
#5
1 мая 2014 в 00:25
Вы составили запрос в модели, а пользуетесь зачем-то другой функцией? )
берите из модели…
запрос
в смарти добавленные g.id AS gid, g.title AS gtitle, g.alias AS galias окажутся в массиве
( название переменной более точно смотрите во фронтеде, там где вызывается $model->getComments() )
{$comments.gid}, {$comments.gtitle}, {$comments.galias}
ID группы не особо информативен, поэтому берем дополнительное название группы и псевдоним…
берите из модели…
запрос
..................... $published = $only_published ? 'c.published = 1' : '1=1'; $sql = "SELECT c.*, g.id AS gid, g.title AS gtitle, g.alias AS galias, IFNULL(u.nickname, 0) as nickname, IFNULL(u.login, 0) as login, IFNULL(u.is_deleted, 0) as is_deleted, IFNULL(p.imageurl, 0) as imageurl, IFNULL(p.gender, 0) as gender FROM cms_comments c LEFT JOIN cms_users u ON u.id = c.user_id LEFT JOIN cms_user_profiles p ON p.user_id = u.id LEFT JOIN cms_user_groups g ON u.group_id = g.id WHERE {$published} {$this->inDB->where} {$this->inDB->group_by} {$this->inDB->order_by}\n"; if ($this->inDB->limit){ $sql .= "LIMIT {$this->inDB->limit}"; } $result = $this->inDB->query($sql); $this->inDB->resetConditions(); while($comment = $this->inDB->fetch_assoc($result)){ ............
( название переменной более точно смотрите во фронтеде, там где вызывается $model->getComments() )
{$comments.gid}, {$comments.gtitle}, {$comments.galias}
ID группы не особо информативен, поэтому берем дополнительное название группы и псевдоним…
#6
1 мая 2014 в 01:24
Решено. Понял. Выводил не верно переменную, о которой даже не знал, что она как-то из запроса формируется. Теперь буду знать что да к чему. Благодарю.