PHP功能的启用/禁用取决于用户
我目前正在编写一个网站,使用php作为我的服务器端脚本语言。我已经让它工作,以便根据用户偏好使用cookie/会话存储当前用户 我希望人们能够查看其他人的个人资料页面,但显然,如果个人资料页面不是他们自己的,功能将被禁用。我该怎么办?我应该使用会话还是其他什么?这显然必须起作用,因此当点击到其他人的个人资料页面的链接时,它会记住“profile.php”必须禁用一些功能PHP功能的启用/禁用取决于用户,php,Php,我目前正在编写一个网站,使用php作为我的服务器端脚本语言。我已经让它工作,以便根据用户偏好使用cookie/会话存储当前用户 我希望人们能够查看其他人的个人资料页面,但显然,如果个人资料页面不是他们自己的,功能将被禁用。我该怎么办?我应该使用会话还是其他什么?这显然必须起作用,因此当点击到其他人的个人资料页面的链接时,它会记住“profile.php”必须禁用一些功能 谢谢这是一个常见的场景,下面是我在遇到这种情况时集成的模式 假设您正在使用会话,当用户登录时,设置: $_SESSION['i
谢谢这是一个常见的场景,下面是我在遇到这种情况时集成的模式 假设您正在使用会话,当用户登录时,设置:
$_SESSION['isLoggedIn'] = true;
当用户注销时,设置:
$_SESSION['isLoggedIn'] = false;
然后,您可以创建一个助手函数,该函数返回如下布尔值:
function is_user_logged_in() {
return $_SESSION['isLoggedIn'];
}
然后,在整个代码中,您可以根据helper函数的返回值有条件地显示项
if ( is_user_logged_in() ) {
//show the logout button if current user is logged in
echo "<button class='logout'>Logout</button>";
} else {
//show the login button if current user is not logged in
echo "<button class='login'>Login</button>";
}
if(用户是否已登录()){
//如果当前用户已登录,则显示注销按钮
回显“注销”;
}否则{
//如果当前用户未登录,则显示登录按钮
回显“登录”;
}
WordPress使用同名的帮助函数:您必须确定谁是登录者 下面是系统流程 如果用户登录,请将该用户的唯一身份存储到
会话
(即$\u会话['UniqueID']==UserID
)
因此,如果用户单击其他用户的配置文件,它将比较
$_Session['UniqueID'] == ClickedUserID
如果true
则启用功能
如果false
则禁用功能
我希望它能帮助您。如果需要禁用2或3个特定功能,您可以使用会话变量。或者您可以在数据库上创建一个名为privileges的表。并为每个可以启用或不能启用的功能添加布尔字段。每次你做一个查询,你都会做一个if条件if(privile['select']==TRUE)谢谢,这更像是Facebook风格,你可以点击其他人的个人资料,编辑个人信息之类的东西都会被禁用。我想你只需要设置一个会话变量来记住上次点击的配置文件链接,并对照当前登录的用户检查它?你有这个数据库吗?很简单。创建一个名为user\u permission的表,并在注册时为每个用户设置默认权限。他们以后可以修改。在profile.php上,您可以设置如下条件:if(edit==True){//show enabled}else{//show disabled}