php限制用户内容

时间:2017-04-21 06:29:55

标签: php restrictions

所以我想创建一个虚拟网站,只有标记为高级版的会员才能看到某些内容。由于它是一个虚拟网站,因此区分的方法是在创建帐户时在复选框上选择是或否。但是,我无法弄清楚我是如何检查整个网站以确保用户是高级会员而不是普通会员或客人。在注册页面本身,我想我可以使用if语句来初始标记它

if($user['premium'] == 1){
   $_SESSION['premium'] = true;
}

但我怎么能这样做,如memberonly.php这样的页面只显示用户是否是高级会员?我假设我必须使用函数或类,但我真的不知道我在内部需要做什么。

修改的 我想我没有清楚地解释自己,因为我在凌晨2点发布了这个并不奇怪。我不想只是将普通用户和访客从membersonly.php重定向我想要它,所以如果用户有一个高级帐户,只有成员页面的链接才会显示在导航栏上。这可以用if语句完成,还是我需要创建一个专门用于监控它的函数或类?

3 个答案:

答案 0 :(得分:0)

您可以通过以下步骤完成: 1.在按钮上单击发布事件,首先检查用户是高级还是正常 2.设置if条件,如果用户是高级,那么

header('Location: ****.php'); 

否则以相同的方式使用其他php文件。

注意:如果用户是高级版或正常用户,则需要添加到数据库中。

答案 1 :(得分:0)

我假设你知道基本的php,只需按照你的会员页面上的步骤进行操作。

  1. 创建与数据库的连接。

  2. 从用户ID中获取用户(我认为您已完成使用登录)。

  3. 检查用户是否为高级版的条件,如果用户不是高级版,则将其重定向到主页。

    require_once('connection.php'); // Fetch user details. if($user['premium'] != 1){ header("location:index.php"); }

答案 2 :(得分:0)

在数据库表中添加一个标志列' is_premium'。如果用户是,则保存   溢价比这个标志中的插入1还要0.然后创建一个检查的功能   如果登录用户是否为高级版,则在每次启动时调用此函数   page.following是检查溢价的功能的实现   用户。

 function checkPremium(){
 if($_SESSION['premium'] == true){
    return true;
 }else{
  header('Location:some_other_page.php');
 }
 }