php - 登录时如何将导航菜单栏更改为“注销”
问题描述
我正在做一个小项目来完成一个基本的网站,但我不知道如何在 php 中让我的菜单导航栏在用户成功登录后立即更改为注销。
我已经粘贴了导航栏代码和我认为可能相关的所有代码。任何帮助或指导将不胜感激。对 php 很陌生,您可能需要查看下面的所有代码,如果没有太多帮助,请道歉。PHP 代码是从 YouTube 教程中使用的......
导航栏菜单代码
iStudy大学
<section class="collapse navbar-collapse" id="myTogglerNav">
<div class="navbar-nav ml-auto">
<a class="nav-item nav-link px-3" href="index.php"><i class="fas fa-home"><span class="nav-text"> Home</span></i></a>
<a class="nav-item nav-link px-3" href="about.html"><i class="fas fa-info-circle"><span class="nav-text"> About</span></i></a>
<a class="nav-item nav-link px-3" href="contact.html"><i class="fas fa-envelope"><span class="nav-text"> Contact Us</span></i></a>
<a class="nav-item nav-link px-3" href="signup.php"><i class="fas fa-check-square"><span class="nav-text"> Sign Up</span></i></a>
<a class="nav-item nav-link px-3" href="login.php"><i class="fas fa-sign-in-alt"><span class="nav-text"> Login</span></i></a>
</div>
</section>
</div>
一些应用的PHP:
<?php
if (!isset($_SESSION['id'])) {
echo '<form action="includes/login.inc.php" method="post">
<input type="text" name="mailuid" placeholder="Email">
<input type="password" name="pwd" placeholder="Password">
<button type="submit" name="login-submit">Login</button>
</form>';
}
else if (isset($_SESSION['id'])) {
echo '<form action="includes/logout.inc.php" method="post">
<button type="submit" name="logout-submit">Logout</button>
</form>';
}
?>
注册表单代码:
<form class="form-signup" action="includes/signup.inc.php" method="post">
<?php
// Here we check if the user already tried submitting data.
// We check username.
if (!empty($_GET["uid"])) {
echo '<input type="text" name="uid" placeholder="Username" value="'.$_GET["uid"].'">';
}
else {
echo '<input type="text" name="uid" placeholder="Username">';
}
// We check e-mail.
if (!empty($_GET["mail"])) {
echo '<input type="text" name="mail" placeholder="Email" value="'.$_GET["mail"].'">';
}
else {
echo '<input type="text" name="mail" placeholder="Email">';
}
?>
<input type="password" name="pwd" placeholder="Password">
<input type="password" name="pwd-repeat" placeholder="Repeat password">
<button type="submit" name="signup-submit">Signup</button>
</form>
解决方案
<a>
执行与导航标签上的表单相同的操作。
<section class="collapse navbar-collapse" id="myTogglerNav">
<div class="navbar-nav ml-auto">
<a class="nav-item nav-link px-3" href="index.php"><i class="fas fa-home"><span class="nav-text"> Home</span></i></a>
<a class="nav-item nav-link px-3" href="about.html"><i class="fas fa-info-circle"><span class="nav-text"> About</span></i></a>
<a class="nav-item nav-link px-3" href="contact.html"><i class="fas fa-envelope"><span class="nav-text"> Contact Us</span></i></a>
<a class="nav-item nav-link px-3" href="signup.php"><i class="fas fa-check-square"><span class="nav-text"> Sign Up</span></i></a>
<?php
if (!isset($_SESSION['id'])) {
echo "<a class='nav-item nav-link px-3' href='login.php'><i class='fas fa-sign-in-alt'><span class='nav-text'> Login</span></i></a>";
} else {
echo "<a class='nav-item nav-link px-3' href='logout.php'><i class='fas fa-sign-out-alt'><span class='nav-text'> Logout</span></i></a>";
}
?>
</div>
</section>
推荐阅读
- reactjs - 如何使用 Mocha -Enzyme 和 nock 进行测试,当响应类型是数组缓冲区时使用 axios.get 获取文件?
- c# - 从字节数组创建 BitMapImage
- java - Eclipse com.google.protobuf.GeneratedMessage 类型无法解析。它是从所需的 .class 文件中间接引用的
- php - 如何解决 Apache 无法启动的问题
- c++ - 如何在 C++11 中使用命令行参数的大小创建动态数组?
- python - 如何在机器人框架中不使用 api-key 访问 API
- yolo - 是否可以将 yolo3 与 yolo9000 权重一起用于更多课程?
- java - do while循环中的while后没有分号,即使这样代码也没有抛出语法错误或编译时错误为什么
- excel - 用于动态数据透视表更新的循环 VBA 代码
- python - 如何修复已爬网 (403)