我可以知道如何将活动菜单设置为page.php?name=about
$a = basename($_SERVER['SCRIPT_NAME']);
<li<?php if ($a == 'page.php?name=about'){?> class="active"<?php }?>><a href="<?php echo $url; ?>/page.php?name=about" title="About">About</a></li>
我的课程在page.php?name=about
我可以知道如何解决它吗?
答案 0 :(得分:1)
$_GET['name']
$ _GET超全局是如何从查询字符串中访问变量的。
$class = ($_GET['name'] == 'about' ? "active" : "");
echo "<li class=\"$class\">";
答案 1 :(得分:0)
将if条件更改为:if ($a == 'page.php' && $_GET['name'] == 'about')
答案 2 :(得分:0)
$_SERVER['SCRIPT_NAME']
仅为您提供脚本的名称。参数不包括在内。您需要使用$_GET
数组来获取参数(如果它们是这样的话,则需要$_POST
)。试试这个:
<li<?php if ($_GET['name'] == 'about'){?> class="active"<?php }?>><a href="<?php echo $url; ?>/page.php?name=about" title="About">About</a></li>
答案 3 :(得分:0)
您的$ a定义需要如下所示才能按预期工作
$a = $_SERVER['SCRIPT_NAME'].'?name='.$_GET['name'];
<li<?php if ($a == '/page.php?name=about'){?> class="active"<?php }?>><a href="<?php echo $url; ?>/page.php?name=about" title="About">About</a></li>
或者,您可以使用
if ($_SERVER['SCRIPT_NAME']=='/page.php')
$a=$_GET['name'];
<li<?php if ($a == 'about'){?> class="active"<?php }?>><a href="<?php echo $url; ?>/page.php?name=about" title="About">About</a></li>
答案 4 :(得分:0)
试试这个......
<li><a href="page.php"
<?php if(strpos(basename($_SERVER['REQUEST_URI']),'page.php')=='page.php'){
echo' class="active"';}
?> ><!-- end of opening 'a' element -->
About</a></li>