所以我正在开发一个街机脚本,我决定做的第一件事就是登录注册系统。无论如何,有2个注册页面。一个用于管理员,一个用于用户。管理员将隐藏用户的另一个目录(例如:admincp / signup.php)。因此,当您注册为用户时,女巫的工作完全没问题。获得的所有数据等。当您注册为用户时,它会将名为admin的数据库中的行设置为0.(管理员注册会将其设置为1)。
<?php
// Exeute the connection to the database
require("common.php");
// Is the user logged in?
if(empty($_SESSION['user']))
{
// If the are not lets send em away
header("Location: login.php");
// We MUST do this. Or else people can view this page without logging it
die("Redirecting to login.php");
}
function isAdmin($number)
{
if ($number = 0)
{
return false;
}
if ($number = 1)
{
return true;
}
if ($number > 1)
{
// adminTF is short for adminTrueFalse
return "Invalid adminTF key";
}
}
?>
Hello
<?php echo htmlentities($_SESSION['user']['username'], ENT_QUOTES, 'UTF-8'); ?>,
you have <?php echo htmlentities($_SESSION['user']['coins'], ENT_QUOTES, 'UTF-8'); ?>
coins and you are <?php
if (isAdmin(0) == true)
{
echo "an admin.";
}
else
{
echo "not an admin.";
}
?>
<br />
<a href="memberlist.php">Memberlist</a><br />
<a href="edit_account.php">Edit Account</a><br />
<a href="logout.php">Logout</a>
好的,所以当你阅读它时,你可以告诉它有一个功能,应该告诉我用户是否是管理员。因为我正在调试,我只想告诉我,我不是管理员。但即使我为所需的密钥插入零,它仍然告诉我我是一名管理员。即使它应该告诉我我不是一个(因为数字为零),它说“你是管理员。”
答案 0 :(得分:3)
您正在使用=
(赋值运算符)而不是==
(比较)。