所以我正在使用admin
中的PHP 5.6
面板功能,每当我尝试将用户切换为管理员时,它都会将其设置为构建器我不知道我在哪里做错了什么
这是代码
这是updateusera.php
<?php include 'core/init.php';
$id = $_GET['id'];
$type = $_GET['type'];
if($type == 'admin'){
mysql_query("UPDATE `users` SET `type` = 'user' WHERE `user_id` = '$id'");
header('location: changeusers.php');
} else if($type =='user'){
mysql_query("UPDATE `users` SET `type` = 'admin' WHERE `user_id` = '$id'");
header('location: changeusers.php');
}
// ============================================= ============================
if($type == 'moderator'){
mysql_query("UPDATE `users` SET `type` = 'user' WHERE `user_id` = '$id'");
header('location: changeusers.php');
} else if($type =='user'){
mysql_query("UPDATE `users` SET `type` = 'moderator' WHERE `user_id` = '$id'");
header('location: changeusers.php');
}
// ============================================= ============================
if($type == 'builder'){
mysql_query("UPDATE `users` SET `type` = 'user' WHERE `user_id` = '$id'");
header('location: changeusers.php');
} else if($type =='user'){
mysql_query("UPDATE `users` SET `type` = 'builder' WHERE `user_id` = '$id'");
header('location: changeusers.php');
}
?>
this is the changeusers.php file
由于某种原因它不会让我把我的两个代码放在这里P.S我是Stackoverflow的新手,所以我仍然可以使用这一切
如果有人有想法,我很乐意听到它
谢谢!
答案 0 :(得分:0)
else if
时,您有三个true
语句$type =='user'
。这些else if
执行中的所有内容和三个查询都会发送,最后一个会设置类型构建器。
您需要传入需要设置的参数类型。那样:
if($type == 'admin') {
echo "<a href='updateusera.php?id=&type=user'>Revoke Admin </a>";
} else {
echo "<a href='updateusera.php?id=$id&type=admin'>Grant Admin </a>";
}
if($type == 'moderator') {
echo "<a href='updateusera.php?id=$id&type=user'>Revoke Moderator </a>";
} else {
echo "<a href='updateusera.php?id=$id&type=moderator'>Grant Moderator </a>";
}
if($type == 'builder') {
echo "<a href='updateusera.php?id=$id&type=user'>Revoke Builder</a>";
} else {
echo "<a href='updateusera.php?id=$id&type=builder'>Grant Builder</a>";
}
然后你的代码需要像那样:
if($type == 'user') {
mysql_query("UPDATE `users` SET `type` = 'user' WHERE `user_id` = '$id'");
header('location: changeusers.php');
exit;
}
if($type == 'admin') {
mysql_query("UPDATE `users` SET `type` = 'admin' WHERE `user_id` = '$id'");
header('location: changeusers.php');
exit;
}
if($type == 'builder') {
mysql_query("UPDATE `users` SET `type` = 'builder' WHERE `user_id` = '$id'");
header('location: changeusers.php');
exit;
}
答案 1 :(得分:0)
您想将else if
语句更改为if语句;基本上所有else if
语句都在执行,最后else if
语句设置为构建器。