我只为两位管理员用户创建了一个表格,我可以为其提供完全访问权限。
session_start();
$query="select * from tbl_user where username='$username' and password='$password'";
$result=mysql_query($query);
$count=mysql_num_rows($result);
if($count>0)
{
$row=mysql_fetch_row($result);
if($row[0]=='1')
{
$_SESSION['admin']='admin';
}
else
{
$_SESSION['admin']='user';
}
header("Location:http://localhost/test/sample.php");
}
在这个sample.php
中,我提供了这样的访问权限:
<td>
<?php
if($_SESSION['admin']=='admin')
{
?>
<a href='Subscribers.php'> Subscribers</a>
<?php
}
?>
</td>
<td>
<a href='CreateRelease.php'> Releases</a>
</td>
在sample.php
中,我写了session_start
,但是,我可以与任何用户一起登录。仅显示Releases
选项。
有什么建议吗?
答案 0 :(得分:2)
在每个需要会话的脚本中调用session_start()
作为第一件事。
答案 1 :(得分:0)
既然你说session_start();
中有sample.php
,那么问题出在其他地方。
请注意,您说表tb_user
的第一列是username(admin or user)
?
是0
还是1
?如果没有,那么这就是问题所在:
// $row[0] is the value of username you said, how could it be 1?
if($row[0]=='1') {
答案 2 :(得分:0)
这是一个问题:
if($row[0]=='1')
这将查看$ row的第一列。根据你的评论,这是用户名。您应该使用的是用于确定用户是否是管理员的任何内容。
// Something like this
if($row['isAdmin'] == 1)