我有一个创建用户表单,允许创建新用户并将其作为我网站的有效用户添加到数据库中。
作为此表单的一部分,您可以选择访问级别,即admin,manager,user。 出于某种原因,无论我放在这里,新用户总是被添加为级别3 - 即用户。 我已阅读并重新阅读代码,无法看到我的生活为什么会这样做!
这是处理新用户请求的php代码......
$accesslv1=$_POST['accesslv']; //reading the POST variable from the create userpage
//determine what access level this user has
if(accesslv1=="admin") {
$accesslv=1; //this would be an admim user
} elseif(accesslv1=="manager") {
$accesslv=2; //this would be a manager
} else {
$accesslv=3; //this would be a user
}
进行调试,我在最后弹出这个而不是重定向......
echo "Username: " .$username . "<br> AccessLevel: " .$accesslv1 ." (lv" .$accesslv .")";
我得到的就是这个......
用户名:test1
AccessLevel:manager(lv3)
这应该读取经理(lv2),但无论出于什么原因它不做!
提前感谢您的帮助!!
答案 0 :(得分:2)
您的代码中缺少变量的美元符号(在if语句中)。请参阅下面的修订版:
if($accesslv1=="admin")
{
$accesslv=1; //this would be an admim user
}
elseif($accesslv1=="manager")
{
$accesslv=2; //this would be a manager
}
答案 1 :(得分:1)
你在if / elseif行中缺少几个美元符号
if(accesslv1=="admin"){
答案 2 :(得分:0)
下面的评论:
$accesslv1=$_POST['accesslv'];
但if(accesslv1=="admin")