由于某种原因,我的PHP正在将页面URL添加到我的链接中。
价值为#
的链接标记为mysite.com/url_the_page/page.php#
,并了解导致此问题的原因?
echo'<a href="#" id="bb">click me</a></span>';
echo '<a href="#" id="song_'. $row[id].'">';
echo $artist_title;
echo '</a></span>';`
完整代码:
while ($row = mysql_fetch_array($query))
{
if ($row[sourcefile] !== NULL )
{
echo '';
if ( $row[artist] !== NULL && $row[title] !== NULL)
{
$artist_title = $row[artist] . ' - ' . $row[title];
}
else
{
$artist_title = $row[originalfilename];
}
echo "<a href=http://".$row[link].' target="_blank">LINK</a> - ';
if ( $row[listened] == 0)
{
$link_class = "unlistened";
}
else
{
$link_class = "listened";
}
$size = $row[size];
$size = round(($size / 1000000),2);
if ( $size > 30 )
{
echo '<font color="red">MIX </font>';
}
echo '<span id="'.$row[id].'" class="'.$link_class.'">';
echo '<a href="#" id="song_'. $row[id].'">';
echo $artist_title;
echo '</a></span>';
echo ' - ';
//turn size into MB
$size = $row[size];
$size = round(($size / 1000000),2);
//if the song is smaller than a certain size display the size as red.
if ( $row[size] < 1500000)
{
echo '<font color="red">';
echo $size;
echo '</font>';
}
else
{
//echo $row[size];
echo $size;
}
echo 'MB<br>';
}
}
答案 0 :(得分:5)
这与PHP无关,但是是浏览器的默认行为。
#
不是有效的网址,而是所谓的Fragment Identifier.它在网址中具有特殊含义,指示浏览器在目标文档中查找该名称的锚点。指向#
的网址仅指向当前文档的开头。
我不确定您要执行的操作,但网址不得在其地址部分中包含此字符。
答案 1 :(得分:1)
据我所知,这是一种正常行为,如果您有名称类别的链接,例如:
<a name="categories"></a>
然后,您将使用以下网址
链接到该页面的该部分mysite.com/index.html#categories