我有一个if语句,当我的mysql表=服务器uri时,它改变了css类,但我无法让它工作。这是我的代码:
$adminresults = mysql_query('SELECT * FROM menu_admin WHERE position="l"');
$adminresults_array = array();
while ($row = mysql_fetch_assoc($adminresults)) {
$img = $row["img"];
$href = $row["location"];
$text = $row["name"];
$uri = $_SERVER["REQUEST_URI"];
if ($href == $uri){
$output .= "<li class='active'><a href='$CFG->wwwroot/{$href}'><p class='cssimg'><img src='$CFG->wwwroot/theme/{$img}'/></p><p class='csstxt'>{$text}</p></a></li>";
} else {
$output .= "<li><a href='$CFG->wwwroot/{$href}'><p class='cssimg'><img src='$CFG->wwwroot/theme/{$img}'/></p><p class='csstxt'>{$text}</p></a></li>";
}
}
}
echo "<link rel='stylesheet' href='/theme/css/styles.css' type='text/css'>
<div id='leftmain'>
<div class='cssmenu' align='left'>
<ul>{$output}</ul>
</div>
</div>";
该位置将是文件名或文件名路径,例如sitefolder / file.php
答案 0 :(得分:0)
我怀疑问题是$_SERVER["REQUEST_URI"]
在uri的开头包含斜杠,而你的$href
变量没有。
在比较之前,也许在服务器uri上使用ltrim
。像这样:
$uri = ltrim($_SERVER["REQUEST_URI"],'/');