如果我想要这个按钮,我该怎么办只能被admin

时间:2017-11-22 10:23:23

标签: php html

我做了一些研究,但我找不到合适的答案

我希望该按钮只能由管理员点击,如果该按钮点击了我的普通用户,则会出现一个警告框

或者,只有以管理员身份登录才会显示该按钮?

<a href="view.php" class="btn btn-info" role="button">Admin button</a>

这是我的管理按钮↑

我的数据库中的管理员信息是:

userid: 3
username: admin
password: admin
role: 0 

我应该包括↓

<?php
session_start()
include "connection.php"

if(empty($_SESSION['role'] == '0')){
echo "xxx";
}
else
{
echo "xxx";
}
?>

如果是这样,我应该在“xxx”中写什么?

connection.php将是:

<?php
$conn = mysqli_connect("localhost","root","","gallery");

if(mysqli_connect_errno())
{
    die("<script>alert('Error in connection !');window.history.go(-1);</script>");
}
echo "<script>alert('Successfully connected !');</script>";
?>

3 个答案:

答案 0 :(得分:1)

如果您的唯一目的是隐藏非管理员用户的按钮,那么它非常简单,并且您不需要else逻辑运算符。因为如果条件不满足。别做什么

<?php
session_start()
include "connection.php"

if(empty($_SESSION['role'] == '0')){
echo "<p><a href='view.php' class='btn btn-info' role='button'>Admin button</a></p>";
}
?>

答案 1 :(得分:1)

<?php
session_start()
include "connection.php"

if(empty($_SESSION['role'])
&& $_SESSION['role'] == '0'){
    echo "<p><a href='view.php' class='btn btn-info' role='button'>Admin button</a></p>";
}
?>

应该是上述条件。

在您的代码中,空函数和相等条件不正确。

答案 2 :(得分:0)

您可以使用会话变量&#34; role&#34;和javascript函数来做到这一点。

Javascript:

在您的页眉或页脚中添加此脚本

<script type="text/javascript">
function checkUser(type) {
    if (type == '0') { // User is Admin move to view
        window.location("view.php");
    } else {
        alert("Hey! You are not admin");
    }
}
</script>

<强> HTML

在您的页面中,将您的链接更改为:

<?php
session_start();
include "connection.php" ?>

<button class='btn btn-info' role='button' onclick="checkUser(<?php if($_SESSION['role'] == '0'){
  echo '0';
  } else {
    echo '1';
  } ?>

);" >Admin button</button>