如何使用php和mysql创建标记系统?

mcb*_*eav 13 php mysql tags tagging database-design

想知道我如何在php和mysql数据库中创建标记系统,我最初的想法是在表格中创建一个存储文章的行,命名标签,并列出用逗号分隔的标签,但我不知道如何我可以创建一个搜索匹配标签的查询,我不想每次有人点击标签时查询每篇文章.有人可以帮忙吗?

Joe*_*lli 36

您正在描述文章和标签之间的多对多关系.您希望使用中间联结表来解决该关系.

在此输入图像描述

现在,要查找与所选标记匹配的所有文章:

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'
Run Code Online (Sandbox Code Playgroud)