如何在php中制作活动导航栏?

2023-12-24

您好,我正在尝试使我的导航栏在 php 中处于活动状态,以便用户可以知道他们所在的页面。我是php新手,对它了解不多。那么如何在此代码中添加 class="active" 来创建活动导航栏并在同一 index.php 页面中显示所有页面。

 <a href="?page=home"> Home</a></br>
<a href="?page=news"> News</a></br>
<a href="?page=about"> About</a></br>
<a href="?page=contact"> Contact</a></br>

 <?php
if (!isset($_GET['page'])) {
    include "home.php";
} else {
switch ($_GET['page']) {
    case "home":
         include "home.php";
    break;
    case "news":
         include "news.php";
    break;
    case "about":
         include "about.php";
    break;
    case "contact":
         include "contact.php";
    break;
    default:
         include "home.php";
    };
}
?>

创建菜单项数组,然后使用foreach循环动态生成菜单。

这样,当您向数组添加新项目时,它们将显示在菜单中:

<html>
<head>
    <title>Website</title>

    <style type="text/css" media="screen">
        .active {
            font-weight: bold;
        }
    </style>
</head>
<body>

<?php

// This is your menu
$items = array("home", "news", "about", "contact");

foreach ($items as $item)
{
    if (isset($_GET['page']) && $_GET['page'] == $item)
    {
        echo '<a href="?page=' . $item . '" class="active"> ' . $item . '</a></br>';
        $activePage = $item . ".php";
    }
    else
    {
        echo '<a href="?page=' . $item . '"> ' . $item . '</a></br>';
    }
}

// Include your page
if (isset($activePage))
{
    include $activePage;   
}
else
{
    include "home.php";
}

?>

</body>
</html>

您应该用此代码替换所有代码并尝试一下。使用循环来减少需要编写的冗余标记量不仅是DRY http://en.wikipedia.org/wiki/Don%27t_repeat_yourself但将来会为您节省很多时间!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在php中制作活动导航栏? 的相关文章

  • 如何在 Zend Framework 3 中注册自定义表单视图助手

    我正在将继承的 Zend Framework 2 应用程序迁移到 Zend Framework 3 并且在注册自定义表单视图助手时遇到了一些困难 这些助手在应用程序使用版本 2 时起作用 主要用于添加标签属性以实现可访问性 例如 这是一个自
  • 如何在laravel中注册后自动登录

    我在 laravel 中注册用户时遇到问题 user假设是包含所有数组元素的数组 同时自动登录以下代码结果false 数据库中保存的密码是hash make password user id this gt user model gt ad
  • php 数组中出现意外的 json 输出结构

    我正在尝试转换动态数据 如何从 PHP 获取此 JSON JSON 122240cb 253c 4046 adcd ae81266709a6 item 0 3 这就是我所做的 但它不起作用 PHP json array 122240cb 2
  • CodeIgniter 自定义库未加载

    我是 CodeIgniter 的新手 并尝试用它开发一个相当简单的应用程序 只是一个用于处理想要娱乐中心通行证的员工的注册的表单 我正在尝试将事物分开以使它们更清晰 这是代码 应用程序 控制器 reccenter php class Rec
  • Yii2 - 错误请求 (#400) |前端和后端cookie

    仅当我打开时才会出现此问题frontend and backend在相同的browser 设想 与后端交互 gt 切换选项卡 gt 与前端交互 gt 切换选项卡返回 gt 与后端交互 gt 错误请求 400 Cookie 后端 identi
  • AWS-PHP-SDK / SNS 直接寻址返回错误

    您好 我正在使用 Laravel 4 设置来利用 AWS SNS 向我的 iOS 设备发送推送消息 从 AWS 控制台向我的设备发布命令效果很好 然后我尝试从 PHP sns AWS get sns sns gt publish array
  • 是否可以将路由参数传递给 Laravel 中的控制器构造函数?

    是否可以将路由参数 或路由段 注入到控制器构造函数中 您找到一些代码来澄清我的问题 class TestController protected param public function construct paramFromRoute
  • PHP:读取所有传入 HTTP 请求的类 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Xdebug V3 不会停止 VSCode 中的断点

    我正在尝试使用 VSCode 在 XAMPP 上进行调试 但没有成功 我知道有很多关于这个的问题 我已经尽了一切努力 但仍然行不通 我的 xdebug 扩展确实有一件奇怪的事情 我目前使用 PHP v7 4 12 和 Xdebug 版本 3
  • 在哪里可以获得 PHP 5.3+ 的 runkit DLL 扩展?

    这是一个简单的问题 我在哪里可以获得 PHP 5 3 版本的 runkit 扩展 它的手册 http php net manual en book runkit php http php net manual en book runkit
  • docker 中的 php Curl 冲突 CURLOPT_FILE 和 CURLOPT_RETURNTRANSFER

    当我使用curl时CURLOPT FILE and CURLOPT RETURNTRANSFER选项 文件为空 没有任何curl错误 fp fopen saveTo w ch curl init fileUrl curl setopt ch
  • 在 PHP 字符串中格式化 MySQL 代码

    是否有任何程序 IDE 可以在 PHP 字符串中格式化 MySQL 代码 例如 我使用 PHPStorm IDE 但它无法做到这一点 它对 PHP 和 MYSQL 执行此操作 但不适用于 php 字符串内的 MYSQL 我已准备好使用新的
  • Facebook API sdk 4.0 - 将照片发布到 Facebook

    我正在尝试创建一个应用程序 用户可以在其中浏览照片并将其从计算机提交到 Facebook 为此 他们首先必须将照片上传到服务器 然后使用 Facebook 请求将此图像发布到 Facebook 我正在使用多部分 表单数据 这就是我到目前为止
  • 通过互联网IP地址从一台计算机访问xampp到另一台计算机

    我试图从另一台计算机访问我的 xampp 它显示为禁止错误 然后我在 google 上搜索答案 因为他们告诉在 apache 文件夹中的 httpd conf 文件中更改一些设置 如下所示 Order Deny Allow Deny fro
  • 一次从多个表中删除行

    我正在尝试将 2 个查询合并为一个这样的查询 result db gt query DELETE FROM menu WHERE name new or die db gt error result db gt query DELETE F
  • 在 SwiftUI 中使用可观察对象切换视图

    我正在练习尝试使用 SwiftUI 中的可观察对象切换视图 但我的代码无法正常工作 我知道我可以用 State 来做到这一点 但我想用可观察的对象来实现这一点 当我单击内容视图中的图像时 图像不会改变 有人能帮我吗 内容视图 swift i
  • PHP 中的 -> 和 :: 有什么区别?

    这个东西困扰我好久了 一直找不到 在 php 中使用 和 gt 之间的类有什么区别 让我举个例子 想象一个名为 MyClass 的类 该类中有一个函数 myFunction 使用有什么区别 MyClass myclass new MyCla
  • 雄辩的第一个 where 子句

    我想知道 Laravel 如何实现雄辩的语法 以便可以静态调用第一个 where 子句User where User where id 23 gt where email email gt first 他们有吗public static f
  • 使用 php/regex 验证美国电话号码

    EDIT 我混合并修改了下面给出的两个答案 以形成完整的功能 现在它可以完成我想要的功能 然后是一些 所以我想我会将其发布在这里 以防其他人来寻找同样的东西 Function to analyze string against many p
  • PayPal 网关已拒绝请求。安全标头无效(#10002:安全错误 Magento

    在 magento 中增加 PayPal 预付款 我已填写 magento admin 中的所有凭据 但是当我进入前端并单击 pay pal 按钮时 它给出了 PayPal 网关已拒绝请求 安全标头无效 10002 安全错误 我用谷歌搜索了

随机推荐

  • 如何将用户的多个值存储到特定大小的数组?

    我正在尝试从用户那里获取值并将其存储在特定大小的数组中 我的代码看起来像 int n int parse Console ReadLine string samples Console ReadLine Split int scores A
  • Robolectric“需要互联网许可”

    当我使用 Robolectric 创建活动时收到此错误 java lang IllegalArgumentException INTERNET permission is required 这就是我正在做的 Config constants
  • “新的展示位置”有什么用途?

    这里有人用过C 的 placement new 吗 如果是这样 那又是为了什么 在我看来 它只对内存映射硬件有用 Placement new 允许您在已分配的内存中构造一个对象 当您需要构造对象的多个实例时 您可能希望这样做以进行优化 并且
  • Geodjango 管理,显示点域而不是地图

    这可能是一个愚蠢的问题 但我找不到任何明确的答案 如何更改 Django 管理中的显示 以便 Pointfield 不会像 OpenLayer 地图那样显示 而是作为常规输入字段显示 我需要查看长纬度以进行调试 我必须更改字段类型吗 小部件
  • 如何使用 React 中的样式在特定 div 中设置线性渐变和背景图像

    我需要使用 React Js 中的样式在特定 div 上设置线性渐变以及背景图像 我能够获得其中任何一个 我的意思是说图像或线性渐变 但不能同时获得两者 图像将与线性渐变重叠 我尝试了以下解决方案 leftAdArea width 380
  • 依赖性分析工具 - 更新回归测试用例[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 Problem 我想这是一个很常见的问题 添加新代码会导致回归 现有的测试用例变得过时 代码中的依赖关
  • 替换与正则表达式中的字符不匹配的字符

    我有这个正则表达式 private static final String SPACE PATH REGEX a z A Z 0 9 我检查我的字符串是否与此正则表达式匹配 如果不匹配 我想用 替换所有不在这里的字符 我尝试过 privat
  • 未捕获的 URIError:URI 格式错误 - Windows 上的 jquery UI 选项卡

    我在本地 Windows 开发环境中使用 jquery UI 选项卡 我正在用他们测试演示代码 http jqueryui com tabs default div ul li a href tabs 1 Nunc tincidunt a
  • 将 firebase 数据库 url(String) 分配给数据库引用变量?

    我正在尝试将一个包含数据库中某个位置的 url 的字符串分配给 DatabaseReference 类型 例子 String strRef my database url DatabaseReference ref here I want
  • 注意:未定义索引:HTTP_REFERER

    注意 未定义索引 HTTP REFERER http referer SERVER HTTP REFERER 我在教程中使用了这个 看起来还不错 代码还从包含文件中调用它 我应该改变什么 我添加了 print r SERVER 现在页面给了
  • AngularJS中页面刷新或移动到另一个页面后保留下拉值

    让我解释一下我的情况 我的主页中有下拉列表 如果更改了下拉列表 则数据的更改取决于下拉列表的值 如果我刷新页面或移至另一个页面 下拉列表将自动清除 我想在刷新页面或移动到另一个页面后保留下拉列表值 我尝试这样做 但这没有帮助 HTML
  • 将方法转换为静态方法时的内存使用情况

    我开始使用 Resharper 它指示何时使用一种方法could设为静态 将数百个方法转换为静态方法会在很长一段时间内增加内存占用吗 否 更改为静态方法对内存没有影响 第一次引用类型 无论是静态还是非静态 时 都会初始化所有静态成员并运行静
  • 为 Caffe 生成 LMDB

    我正在尝试使用 caffe 我正在使用 python 包装器 构建用于显着性分析的深度学习模型 但我无法理解如何为此目的生成 lmdb 数据结构 我已经浏览了 Imagenet 和 mnist 示例 我明白我应该以以下格式生成标签 my t
  • 如何添加日期时间字段和时间字段

    我必须添加time对现有的价值datetime在 SQL Server 2012 中使用 T SQL 的值 我在想DATEADD http msdn microsoft com en us library ms186819 aspx功能它可
  • 如何在node.js上运行.php脚本

    我使用 wamp 服务器和 node js 来运行我的应用程序 server js 但是当我想执行 php 脚本时 我总是收到错误 POST http localhost 8080 login php 404 Not Found 服务器 j
  • 从 VBA 定义的宏创建 PowerPoint 加载项

    因此 我在 PowerPoint 演示文稿中创建了一个宏 并且希望其他人可以轻松使用该宏 根据我收集的信息 最好的方法是创建一个Add in 我看到几篇文章指出要执行以下操作 但我仍然遇到问题 打开新的 PowerPoint 演示文稿 使用
  • 如何从一个项目创建多个apk?

    我有一个 android 项目 我需要在其中创建多个 apk 每个 apk 之间的唯一区别是包名称 例如 com my package name 和应用程序字符串名称 因此我可以在一台设备上安装该应用程序的多个实例 有更好的方法吗 我考虑过
  • PL/SQL:有什么技巧可以避免对象的克隆吗?

    如果我们将一个对象变量分配给 pl sql 中的其他对象变量 则该对象将被克隆 因为 pl sql 不支持引用 例如 以下代码将打印两个不同的句子 create or replace type cla as object class wou
  • 在 Firebase Storage Swift 中使用图像引用数据库中的 Firebase 用户

    通常我可以在网上找到这个问题的答案 但由于它太新了 我一直遇到麻烦 当我让用户登录应用并为其个人资料选择 4 5 张图片时 如何将这些图像存储在 Firebase 存储中 并在 Firebase 数据库中将这些图像引用给该用户 Thanks
  • 如何在php中制作活动导航栏?

    您好 我正在尝试使我的导航栏在 php 中处于活动状态 以便用户可以知道他们所在的页面 我是php新手 对它了解不多 那么如何在此代码中添加 class active 来创建活动导航栏并在同一 index php 页面中显示所有页面 a h