簡體   English   中英

如何使用PHP將活動添加到標簽和li標簽

[英]how to add active to a tag and li tag with php

試圖讓我的PHP導航欄起作用。 如果頁面是最新的,我試圖用附加的活動類來回顯用戶所在的頁面。

這是我的代碼。 它顯示了鏈接,我可以瀏覽該站點,但是它忽略了活動的類。 懸停工作和鏈接的樣式。 它只是忽略活動類。

<?php
$pages = array(
    "index.php" => "Home", 
    "pages/contact.php" => "Contact Us", 
    "pages/services.php" => "services", 
    "pages/employees.php" => "Employees", 
    "pages/dashboard.php" => "Dashboard");

foreach ($pages as $url => $label) {
  echo '<li ';

  if (isset($_GET['page']) && $_GET['page'] == $url) {
    echo '"class=active"';
  }
  echo '><a href=', "$url", '>', "$label", '</a></li>';
}
?>

嘗試這個:

echo 'class="active"';

這樣做:

$pages = array(
    "index.php" => "Home", 
    "pages/contact.php" => "Contact Us", 
    "pages/services.php" => "services", 
    "pages/employees.php" => "Employees", 
    "pages/dashboard.php" => "Dashboard");

foreach ($pages as $url => $label) {
  echo '<li ';

  if(basename($_SERVER['REQUEST_URI'])== basename($url)){   // this line
        echo "class='active'";                              // this line
   }                                                        // and this line
  echo '><a href=', "$url", '>', "$label", '</a></li>';
}
?>
<?php 

if ($_SERVER['REQUEST_URI'] === "/page") echo 'id="active"'; 

?>

未經測試:

<?php
$pages = array(
    "index.php" => "Home", 
    "contact.php" => "Contact Us", 
    "services.php" => "services", 
    "employees.php" => "Employees", 
    "dashboard.php" => "Dashboard");

$uri = explode("/", stripslashes($_SERVER['REQUEST_URI']));

foreach ($pages as $url => $label) {
  echo '<li ';
  echo in_array($url, $uri)?'class="active"':'';
  echo '><a href="'.$url.'">'.$label.'</a></li>';
}
?>

注意:最佳做法是將其他頁面文件放在yout index.php旁邊的根目錄中

<?php
$pages = array(
    "index.php" => "Home", 
    "pages/contact.php" => "Contact Us", 
    "pages/services.php" => "services", 
    "pages/employees.php" => "Employees", 
    "pages/dashboard.php" => "Dashboard");

$cururl = $_SERVER['PHP_SELF'];

foreach ($pages as $url => $label) {
  echo '<li';

  if (strpos($cururl,$url)!==false) {
    echo ' class="active"';
  }
  echo '><a href=', "$url", '>', "$label", '</a></li>';
}
?>

這應該為您工作。 因為,您試圖使用GET-METHOD訪問URL地址。 在這里,我通過執行$cururl = $_SERVER['PHP_SELF'];獲取您的URL $cururl = $_SERVER['PHP_SELF']; 並檢查活動菜單項if (strpos($cururl,$url)!==false)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM