根据用户启用/禁用PHP功能

时间:2014-06-18 02:51:21

标签: php

我目前正在使用php作为我的服务器端脚本语言编写一个网站。我已经使用它,以便根据用户偏好使用cookie /会话存储当前用户。

我希望人们能够查看其他人的个人资料页面,但如果个人资料页面不是他们自己的,那么显然会禁用这些功能。我该怎么做?我应该使用会话还是其他什么?这显然必须有效,所以当点击其他人的个人资料页面的链接时,它会记住' profile.php'必须禁用某些功能。

由于

2 个答案:

答案 0 :(得分:1)

这是一个常见的场景,这是我在遇到这样的情况时整合的模式。

假设您正在使用会话,当用户登录时,请设置:

$_SESSION['isLoggedIn'] = true;

当用户退出时,请设置:

$_SESSION['isLoggedIn'] = false;

然后你可以创建一个辅助函数来返回一个像这样的布尔值:

function is_user_logged_in() {
    return $_SESSION['isLoggedIn'];
}

然后,在整个代码中,您可以根据辅助函数的返回值有条件地显示项目。

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>";
}

WordPress使用同名的帮助函数: is_user_logged_in()

答案 1 :(得分:0)

您必须确定登录者是谁......

这是系统流程

如果用户登录将该用户的唯一标识存储到Session

(即$_Session['UniqueID'] == UserID

因此,如果用户点击其他用户的个人资料,则会比较

$_Session['UniqueID'] == ClickedUserID

如果true则启用功能 如果false则禁用功能

我希望它会对你有所帮助。