0

我试过这个查询:

GRANT SELECT,INSERT ON $mydb.*
    TO '$username'@'localhost' IDENTIFIED BY '$username'"

它在 phpMyAdmin 中授予selectinsert在 phpMyAdmin 中完美运行(如我所愿)。

但是当我使用这个用户名登录到我的 PHP 站点时,我可以编辑或删除所有帖子,并且我也想在 PHP 站点中限制这个用户。

我是初学者,所以任何人都可以告诉我如何在 PHP 中实现这一点吗?

我希望特定作者仅创建新帖子、编辑或删除他的帖子。

谢谢,如果我听起来令人困惑或不完整,我很抱歉。


感谢您的快速回复。

我已经为以下用户创建了一个表:

userid | username | pass | role | etc

在这里我可以role从表中得到roles

roleid | role

现在,我需要帮助:

现在,根据该role设置条件,哪个用户可以添加帖子,哪个用户可以删除帖子,以及哪个用户可以编辑帖子?

任何代码示例或示例?

4

2 回答 2

0

您应该始终在 php.ini 的用户管理类中拥有用户访问权限。

将您的用户访问权限存储在您的数据库中,始终检查您的用户是否有权执行正确的操作。

对于简单的用户访问类,您可以在您的数据库中将“编辑”用户访问权限设置为“编辑”。每当此用户尝试删除帖子时,请检查他是否具有访问权限。如果不是,例如,您可以重定向他或告诉他他没有访问权限。

于 2013-02-27T05:44:00.150 回答
0
GRANT SELECT,INSERT ON $mydb.*
            TO '$username'@'localhost' IDENTIFIED BY '$username'"

您上面的查询所做的只是向某些用户授予访问数据库的权限,$username与编辑帖子和删除帖子无关。

为了实现你的愿望,你需要做的是。

创建具有所需表的数据库,其中包含一个管理用户身份验证的角色表。

现在从该角色设置条件,哪个用户可以添加帖子,哪个用户可以删除帖子,哪个用户可以编辑帖子等等..

于 2013-02-27T05:44:39.377 回答