【问题标题】:Highlight Current Page on DYnamic Navigation PHP Mysql在动态导航 PHP Mysql 上突出显示当前页面
【发布时间】:2014-01-06 21:24:17
【问题描述】:

我从数据库中获取动态导航菜单,因为我有一个 CMS,所以这是我的代码:

<ul>
<?php
$result = mysql_query("SELECT id, name, DESCRIPTION FROM menu where VISIBLE='1' ORDER BY `order` ASC") or die(mysql_error());                   
while($row = mysql_fetch_array($result)){
printf('<li>%s %s </a></li> ', $row['name'],$row['DESCRIPTION']);
}
?>

我必须在 li 元素中添加它。这段代码也应该来自数据库

<?php if (strpos($_SERVER['PHP_SELF'], 'index.php')) echo 'class="current"';?>

我该怎么做?提前致谢。

【问题讨论】:

  • 您正在使用 PHP。 printf() 带有格式代码是毫无意义的,除非您使用数字的实际格式选项。但是,如果您坚持,请添加另一种格式代码,&lt;li%s&gt;%s ... 并在必要时用您的 css 类填写。

标签: php html mysql css content-management-system


【解决方案1】:

可能是这样的:

<ul>
<?php
$result = mysql_query("SELECT id, name, DESCRIPTION 
FROM menu where VISIBLE='1' ORDER BY `order` ASC") 
or die(mysql_error());                   
while($row = mysql_fetch_array($result)){
if (strpos($_SERVER['PHP_SELF'], 'index.php')) $code = 'class="current"'; else $code = '';
printf('<li %s>%s %s </a></li> ', $code, $row['name'],$row['DESCRIPTION']);
}
?>

【讨论】:

  • 感谢您的回复先生,但这将使所有导航都处于活动状态
  • 等一下我试试
  • 那么请告诉我们 CMS 路由是如何工作的。你能给出一个或两个更好的示例网址吗?
  • 就像我想的那样,它使所有导航都处于活动状态
  • 这段代码 应该在一行内跨度>
猜你喜欢
  • 2014-01-24
  • 2012-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-31
相关资源
最近更新 更多