Php 如何防止用户将评论留给其他用户

Php 如何防止用户将评论留给其他用户,php,sql,restriction,Php,Sql,Restriction,假设我有一个网站,用户可以在这里互相发表评论 我们有用户A、用户B和用户C。 此外,支持用户B已阻止用户C 用户A给用户B留下注释,代码如下: $query = "insert into comments (author_id, profile_id, comment, date_posted) values(?, ?, ?, now())"; 这就是执行此任务的查询。 现在用户C转到用户B的页面留下评论,但用户B阻止他留下评论 用户C不能只给另一个用户留下一条评论,然后手工处理请求,这样他就

假设我有一个网站,用户可以在这里互相发表评论

我们有用户A、用户B和用户C。 此外,支持用户B已阻止用户C

用户A给用户B留下注释,代码如下:

$query = "insert into comments (author_id, profile_id, comment, date_posted) values(?, ?, ?, now())";
这就是执行此任务的查询。 现在用户C转到用户B的页面留下评论,但用户B阻止他留下评论

用户C不能只给另一个用户留下一条评论,然后手工处理请求,这样他就可以将的profile_id更改为阻止他的用户吗


如何防止这种情况发生?

我认为您需要进行另一个查询并使用该结果设置条件。创建一个查询以获取用户B的黑名单
$blacklist
,然后检查
如果(!in_array('user C',$blacklist)){execute insert query}

在执行insert之前,必须检查用户是否不在黑名单中。永远不要相信任何数据来自外部。您如何存储数据块?您的代码必须检查该机制。
创建一个查询以获取用户B的黑名单$blacklist,然后检查(!in_array('user C',$blacklist))
——为什么不在单个查询中执行此操作