PHP检查用户是否为管理员/用户,并显示按钮
我不是PHP专家,所以需要一些帮助 我在我的网站上有一个登录功能,它可以检查用户是管理员还是正常用户,工作正常 我添加了一个新功能,系统应该检查用户是否登录并显示不同的按钮PHP检查用户是否为管理员/用户,并显示按钮,php,button,hide,admin,display,Php,Button,Hide,Admin,Display,我不是PHP专家,所以需要一些帮助 我在我的网站上有一个登录功能,它可以检查用户是管理员还是正常用户,工作正常 我添加了一个新功能,系统应该检查用户是否登录并显示不同的按钮 如果用户未登录,则显示登录/注册按钮 如果用户以用户身份登录,则显示user.php按钮和 logout.php 如果用户是管理员,则显示admin.php和logout.php 但是,它只适用于用户。我错过了什么UserTypeID在数据库中为用户设置1,为管理员设置2 session_start(); <?ph
- 如果用户未登录,则显示登录/注册按钮
- 如果用户以用户身份登录,则显示user.php按钮和
logout.php - 如果用户是管理员,则显示admin.php和logout.php
UserTypeID
在数据库中为用户设置1,为管理员设置2
session_start();
<?php
if(isset($_SESSION['UserTypeID']) == 1) //check if user is a user and display buttons
{
?>
<li><a href="user.php">My Account</a></li>
<li><a href="logout.php">Logout</a></li>
<?php } elseif(isset($_SESSION['UserTypeID']) == 2) //check if user is an admin and display buttons
{
?>
<li><a href="admin.php">My Account</a></li>
<li><a href="logout.php">Logout</a></li>
<?php }else{ // if user is not logged in then display these buttons?>
<li><a href="signin.php">Sign In</a></li>
<li><a href="signup.php">Sign Up</a></li>
<?php } ?>
session_start();
像这样做。这会奏效的
<?php
session_start();
if(!empty($_SESSION['UserTypeID']) && $_SESSION['UserTypeID']== 1) //check if user is a user and display buttons
{
?>
<li><a href="user.php">My Account</a></li>
<li><a href="logout.php">Logout</a></li>
<?php } else if(!empty($_SESSION['UserTypeID']) && $_SESSION['UserTypeID']== 2) //check if user is an admin and display buttons
{
?>
<li><a href="admin.php">My Account</a></li>
<li><a href="logout.php">Logout</a></li>
<?php }else{ // if user is not logged in then display these buttons?>
<li><a href="signin.php">Sign In</a></li>
<li><a href="signup.php">Sign Up</a></li>
<?php } ?>
isset($\u会话['UserTypeID'])
返回true
或false
session_start();
<?php if(isset($_SESSION['UserTypeID']) && $_SESSION['UserTypeID']== 1) //check if user is a user and display buttons
{
?>
<li><a href="user.php">My Account</a></li>
<li><a href="logout.php">Logout</a></li>
<?php } elseif(isset($_SESSION['UserTypeID']) && $_SESSION['UserTypeID'] == 2) //check if user is an admin and display buttons
{
?>
<li><a href="admin.php">My Account</a></li>
<li><a href="logout.php">Logout</a></li>
<?php }else{ // if user is not logged in then display these buttons?>
<li><a href="signin.php">Sign In</a></li>
<li><a href="signup.php">Sign Up</a></li>
<?php } ?>
session_start();
session\u start()函数需要在php内部编写,并编写如下代码:
<?php
session_start();
if(isset($_SESSION['UserTypeID']) && $_SESSION['UserTypeID']== 1) //check if user is a user and display buttons
{
?>
<li><a href="user.php">My Account</a></li>
<li><a href="logout.php">Logout</a></li>
<?php } elseif(isset($_SESSION['UserTypeID']) && $_SESSION['UserTypeID'] == 2) //check if user is an admin and display buttons
{
?>
<li><a href="admin.php">My Account</a></li>
<li><a href="logout.php">Logout</a></li>
<?php }else{ // if user is not logged in then display these buttons?>
<li><a href="signin.php">Sign In</a></li>
<li><a href="signup.php">Sign Up</a></li>
<?php } ?>
isset($\u SESSION['UserTypeID'])是0或1,而不是2。SESSION\u start()
在Hi Gerard之外,在我的数据库中,admin设置为2,它可以很好地登录。别认为那是个问题Hi kerbholz是的我意识到了。但这并不能解决问题。还有一些东西不见了。thanks@DawidOskwarek您需要检查的是$\u SESSION['UserTypeID']==2,不带isset@DawidOskwarek别忘了接受这个答案。谢谢