2017-04-21 85 views
0

所以我试图做一个虚拟的网站,只有被标记为高级会员才能看到某些内容。由于它是一个虚拟网站,因此这种区分的方式是在创建帐户时在复选框上选择是或否。但是,我无法弄清楚的是,我可以对整个网站进行检查,以确保用户是高级会员,而不是普通会员或访客。在注册页面本身,我想如果用户是高级会员,我可以用一个if语句最初纪念像这样php限制用户内容

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

,但我会怎么做起来很喜欢membersonly.php页面只显示了?我假设我不得不使用一个函数或一个类,但我真的不知道我需要在内部做什么。

编辑 我想我没有解释自己不够清楚,并不奇怪,因为我张贴这在凌晨2点。我不想只是将普通用户和客人重定向到membersonly.php我想要它,所以只有memberonly页面的链接才会显示在导航栏上(如果用户有高级帐户)。这可以通过if语句来实现吗?或者我需要创建一个专门用于监视这个函数或类的类?

回答

0

你可以简单地通过以下步骤做: 1.点击按钮事件后的第一次检查,如果用户是溢价还是正常 2.把一个if条件,如果用户是优质然后

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

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

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

+0

不需要类和函数。 –

0

我假设你知道基本的php遵循你的会员页面上的步骤。

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

  2. 从用户id(我认为你完成了使用登录)获取用户。

  3. 检查条件,如果用户不是优质,那么用户是溢价,然后将其重定向到主页。

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

0

在db表“is_premium'.Upon添加标记栏保存,如果用户是 溢价比这个标志值,否则插入1 0.Than创建,检查 如果一个函数登录的用户是否保费,并且在每个 页面的开始处调用此函数。以下是检查用户的溢价 函数的功能的实现。

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