Php 验证用户是否已经喜欢帖子的最佳方法?

Php 验证用户是否已经喜欢帖子的最佳方法?,php,database,mysqli,sql-like,Php,Database,Mysqli,Sql Like,我制作了一个简单的like按钮,当登录的用户按下它时,它会将+1“like”添加到该帖子行上的“likes”列中,并带有匹配的id 我仍然需要做的是一个函数,它检查用户(登录)是否已经喜欢文章,无论他们何时使用like按钮进入页面,这样like按钮可以正确高亮显示,避免同一用户喜欢不止一次 我的问题是,实现这一目标的最佳方式是什么?我所能想到的就是在用户数据库中创建一列(“likedposts”),将他们喜欢的帖子的ID存储在一个字符串中,例如“.122354435..3453463423..3

我制作了一个简单的like按钮,当登录的用户按下它时,它会将+1“like”添加到该帖子行上的“likes”列中,并带有匹配的id

我仍然需要做的是一个函数,它检查用户(登录)是否已经喜欢文章,无论他们何时使用like按钮进入页面,这样like按钮可以正确高亮显示,避免同一用户喜欢不止一次

我的问题是,实现这一目标的最佳方式是什么?我所能想到的就是在用户数据库中创建一列(“likedposts”),将他们喜欢的帖子的ID存储在一个字符串中,例如“.122354435..3453463423..3242343.”,用点分隔,然后检查他们是否已经喜欢其中的帖子,我会在
mysqli
中使用LIKE参数,例如
。。。其中'likedposts'类似于'%.3242343.%

但所有这些看起来都像是大量的数字运算,而且非常不方便,这让我想知道是否有一种更简单、更“紧凑”的方法可以做到这一点。
提前谢谢,希望我解释得足够好。

这是一个传统的例子

创建一个新表(例如,
user\u likes
),其中有一列引用用户表作为外键,另一列引用posts表作为外键

根据所使用的数据库,您可能希望添加第三列作为主键,或者使用已有的两列作为主键。

这是一种传统方法

创建一个新表(例如,
user\u likes
),其中有一列引用用户表作为外键,另一列引用posts表作为外键


根据您使用的数据库,您可能希望添加第三列作为主键,或者使用已有的两列作为主键。

不要这样做,只需使用另一个表并将其与ID链接即可。不要这样做,只需使用另一个表并将其与ID链接。您能详细说明一下吗?类似这样的内容吗?创建表user_likes(user INT、post INT、外键(user)引用users(id)、外键(post)引用posts(id));你能详细说明一下吗?像这样的?创建表user_likes(user INT、post INT、外键(user)引用users(id)、外键(post)引用posts(id));