Currently making a blog websit and wanted to add an administrator locked button in the navbar that allows them to delete users there is onlly 1 Admin whos username will be “Admin”.
Right now I have something like this:
<nav class="navbar"> <p class="logo">BLOG</p> <ul class="navbar-list"> <?php if(isset($_SESSION['username'] == "Admin")) { echo ($_SESSION["username"]), ' <li class="navbar-item"><a href="index.php">Home</a></li> <li class="navbar-item"><a href="adminpage.php">master</a></li> <li class="navbar-item"> <form action="includes/logout.php" method="POST"> <button class="btn btn-logout" type="submit" name="submit">Logout</button> </form> </li> '; } else if (isset($_SESSION['username'])) { echo ($_SESSION["username"]), ' <li class="navbar-item"><a href="index.php">Home</a></li> <li class="navbar-item"> <form action="includes/logout.php" method="POST"> <button class="btn btn-logout" type="submit" name="submit">Logout</button> </form> </li> '; } else { echo ' <li class="navbar-item"><a href="index.php">Home</a></li> <li class="navbar-item"><a href="signup.php">Sign Up</a></li> <li class="navbar-item"><a href="login.php">Sign In</a></li> '; } ?> </ul> </nav>
I keep getting this error Fatal error: Cannot use isset() on the result of an expression (you can use “null !== expression” instead) in C:xampphtdocspdo-blog-masterincludesnavbar.php on line 12
Any help will be appreciated.
Advertisement
Answer
You have an Error here:
if (isset($_SESSION['username'] == "Admin"))
You are trying to check if the result of the expression is set (true or false) which doesn’t work because isset()
can’t used that way.
https://www.php.net/manual/en/function.isset.php
Change this to:
if (isset($_SESSION['username']) && $_SESSION['username'] === "Admin")