突出显示循环菜单中的当前值

时间:2016-09-13 13:12:32

标签: php

我试图在此循环菜单中突出显示当前值:

    <?php 
            for ($i=count($anos)-1;$i>=0;$i--)
            echo '<li><a href="obra.php?ano='.$anos[$i]['ano'].'" onclick="window.location=\'obra.php?ano='.$anos[$i]['ano'].'\';">'.$anos[$i]['ano'].'</a></li>';
    ?>

我试图解决网页中的一些问题,但我在编程方面的知识充其量只是初步的。我通过谷歌搜索设法解决了很多问题,但是我无法找到解决方案。

此循环从数据库中获取年份(anos)并在菜单中显示所有年份(anos),单击一年会带来包含图像库的页面。

这是页面:http://marialealdacosta.com/obra.php

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您可以使用$_GET将传递的值与URL一起使用。在你的情况下它是ano

使用此值与循环的值进行比较,如果它们相似则更改元素的样式。

所以你的代码看起来像这样,

<?php
     $ano="";
     if(array_key_exists("ano",$_GET)) { 
          /*
          Check if ano value is passed along with URL 
          before accessing it. Other wise it will give error.
          */

          $ano=$_GET["ano"];
     }
     for ($i=count($anos)-1;$i>=0;$i--) {
         $styles="";
         if($anos[$i]['ano']==$ano) { // this will check the current ano.
              $styles="background:red;"; // change appropriate styles here...
         }
         echo '<li style="'.$styles.'"><a href="obra.php?ano='.$anos[$i]['ano'].'" onclick="window.location=\'obra.php?ano='.$anos[$i]['ano'].'\';">'.$anos[$i]['ano'].'</a></li>';
    }
  

$ _ GET 是传递给的变量的关联保留数组   当前脚本通过URL参数。