Как получить все теги, принадлежащие статье?

Пожалуйста, извините за мой английский. Я создал сайт на основе тегов, с архитектурой MVC и PHP. Работает нормально. Когда пользователь нажимает на тег, запрос дает всю информацию для этого тега. Например, пользователь нажимает на тег «PHP», запрос показывает все статьи, которые имеют тег «PHP». Это мой запрос

    public function get($Getlabel){
$tagLabel = $this->db->prepare("select `txtcenter`.`id`, `title`, `imagurl`, `writer`, `dttime`, `txtmain`, `counter`,
`tags`.`tag` as tagsshow
from `txtcenter`
INNER  join `taglink` on `taglink`.`txtcenterid` = `txtcenter`.`id`
INNER  join `tags` on `tags`.`id` = `taglink`.`tagid`
where `tags`.`tag` in (:Label)
");
$tagLabel->execute(array('Label' => $Getlabel));
return $tagLabel->fetchAll(PDO::FETCH_OBJ);
}

Давайте теперь объясним мою проблему. Я хочу, чтобы каждая статья имела все теги, принадлежащие ниже, с запросом на редактирование выше.

-2

Решение

Если вы хотите вернуть список тегов статьи в запросе, вы можете использовать что-то вроде этого

    select tbl.*,
GROUP_CONCAT(DISTINCT tags.tag SEPARATOR ',') As all_tags
from(
select `txtcenter`.`id`, `title`, `imagurl`, `writer`, `dttime`, `txtmain`, `counter`,
`tags`.`tag` as tagsshow, `taglink`.`tagid`
from `txtcenter`
INNER  join `taglink` on `taglink`.`txtcenterid` = `txtcenter`.`id`
INNER  join `tags` on `tags`.`id` = `taglink`.`tagid`
where `tags`.`tag` in (:Label)
) tbl
inner join tags
on tags.id=tbl.tagid
GROUP BY tbl.id

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

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]