Интересно, как я могу создать систему тегов в php и с базой данных mysql, мои первоначальные мысли заключались в том, чтобы создать строку в таблице, где хранятся статьи, называемые тегами и перечислить теги, разделенные запятыми, но я не знаю, как я могу создать запрос, который ищет соответствующие теги, я не хочу запрашивать каждую статью каждый раз, когда кто-то нажимает на тег. может ли кто-нибудь помочь?
Как я могу создать систему тегов с использованием php и mysql?
Ответ 1
Вы описываете отношения "многие ко многим" между статьями и тегами. Вы хотите использовать таблицу промежуточных соединений, чтобы решить эту взаимосвязь.
Теперь, чтобы найти все статьи, соответствующие выбранному тегу:
SELECT a.article_title
FROM Tag t
INNER JOIN Article_Tag_Xref atx
ON t.tag_id = atx.tag_id
INNER JOIN Article a
ON atx.article_id = a.article_id
WHERE t.tag_name = 'SelectedTagName'
Ответ 2
tbl_articles имеет articleID и т.д.
tbl_tags имеет tagID и т.д.
tbl_taggedarticles имеет taggedArticleID, articleID, tagID
SELECT articleID FROM tbl_taggedarticles WHERE tagID = "searchedID"