2011-07-19 9 views
1

こんにちは、自分のウェブサイトのナビゲーション/ページボタンを生成し、アクティブなページにスタイル要素を与えようとしています。私が今現在持っているのは、ホームページにスタイル要素を適用することですが、他のページに移動するときは、スタイル要素は現在のページに適用されるのではなく、「ホーム」ボタンにとどまります。PHPのナビゲーションメニューとアクティブなページのスタイル

マイページはURLはとても似ていると動的です:http://www.website.com/?p=contact

<?php 

    $current = array(
     "" => "Home", 
     "?p=contact" => "Contact Us", 
     "?p=about" => "About Us", 
     "?p=privacy" => "Privacy Policy" 
    ); 
    foreach($current as $k => $v) { 
     $active = $_GET['page'] == $k 
      ? ' class="current_page_item"' 
      : ''; 
     echo '<li'. $active .'><a href="./'. $k .'">'. $v .'</a></li>'; 
    } 

?> 

私はいくつかのことを試してみたが、それは正しく動作し得るように見えることはできませんが、任意の助けをいただければ幸いです。ありがとう:)

答えて

1

次の行はあなたが$ _GETあなたのクエリ文字列パラメータである[ 'P']を使用する必要があります$ K

犯人

$ _GET [ 'ページ'] ==にあります。例のURLにはcontactと等しくなります。したがって、配列の値を?p=に保存する

<?php 

    $current = array(
     "" => "Home", 
     "contact" => "Contact Us", 
     "about" => "About Us", 
     "privacy" => "Privacy Policy" 
    ); 
    foreach($current as $k => $v) { 
     $active = $_GET['p'] == $k 
      ? ' class="current_page_item"' 
      : ''; 
     echo '<li'. $active .'><a href="./'. $k .'">'. $v .'</a></li>'; 
    } 

?> 
+0

大変感謝しています。D – Jessica

関連する問題