我试图在点击时显示链接橙色,但出于某种原因,我可以在使用PHP时让它工作,有人可以帮我纠正这个问题吗?
这是PHP代码。
function category_tree( $parent = 0, $parent_url = '' ){
$page_url = current_page_url();//grabs url address
echo "<ol>";
$mysqli = mysqli_connect("localhost", "root", "", "sitename");
$q = sprintf("SELECT id, category, url FROM categories WHERE parent_id = %d ORDER BY category asc", $parent);
$r = mysqli_query($mysqli, $q);
while($rs = mysqli_fetch_assoc($r) ){
$url = $parent_url . $rs['url'];
echo '<li> <a href="' . $url . '" title="' . $rs['category'] . ' Category Link" ';
if($url == $page_url){
echo 'style="color: orange;"';
}
echo '>' . $rs['category'] . '</a> </li>';
category_tree($rs['id'], $url);
}
mysqli_free_result( $r );
echo "</ol>";
}
输出:
Arts & Humanities
Autos
Business
Computers & Technology
Creative Writing
Education
Entertainment
答案 0 :(得分:2)
在阅读完代码后,我会尝试打印$ url和$ page_url的值,看看它们是否相同。还要看看你的输出,看看style =“color:orange;”永远被输出到浏览器。如果链接没有变成橙色,我会想象你的条件“($ url == $ page_url)”永远不会返回true。
旧答案
这不是一个PHP问题,它更多地与CSS有关。如果您有CSS文件,可以添加以下内容以使其正常工作:
a:link{
color:black;
}
a:visited{
color:orange;
}
如果您需要创建一个放置CSS的位置,可以将以下代码添加到HTML中:
<style type="text/css">
/* CSS CODE HERE */
</style>