-1

さて、以下は現在のページ名を選択する関数です。例: index.php、owner.php、contactus.php など。現在のページを強調表示する css id(#active) セレクターをアクティブにする必要があるため、この関数を作成しました。

関数

function curPageName() {
return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
}
$pagename = curPageName();

そして、これは私のナビゲーションコードです:

<ul>
<li><a href="index.php" <?php if($pagename == "index.php") echo "id='active'"; 
?>>HOME</a></li>
<li><a href="owner.php" <?php if($pagename == "owner.php") echo "id='active'"; ?>>LIST 
YOUR PROPERTY</a></li>                        
<?php
$menu = mysql_query("SELECT * FROM page where status = 1");

while($re = mysql_fetch_array($menu))
{
$pageid = $re['pageid'];
$pagelink = $re['pagelink'];
$pagename = strtoupper($re['pagename']);
$pagedes =  $re['pagedes'];                     

echo "<li><a href='page.php?pageid=$pageid'>$pagename</a></li>";
}
?>                      

<li><a href="contactus.php" <?php if($pagename == "contactus.php") echo "id='active'"; 
?>>CONTACT US</a></li>
</ul>

だから、私の質問は、Index.php と owner.php への css id セレクターがアクティブになっていることです。しかし、 contactus.phpページへのcssセレクターはアクティブになりません。

私のコードに何か問題がありますか?

4

1 に答える 1

2

に上書き$pagenameしましたwhile loop

while($re = mysql_fetch_array($menu))
{
$pageid = $re['pageid'];
$pagelink = $re['pagelink'];
$pagename = strtoupper($re['pagename']);

^^^^^ overwritten variable value change this variable name

$pagedes =  $re['pagedes'];                     

echo "<li><a href='page.php?pageid=$pageid'>$pagename</a></li>";
}

-------------------------------------vvvvvvvvv- this will be last value of while loop
<li><a href="contactus.php" <?php if($pagename == "contactus.php") echo "id='active'"; 
?>>CONTACT US</a></li>
于 2012-11-12T16:07:43.683 に答える