我有PHP和链接的问题,我的意思是,我正在尝试使用<a href
来链接票证的ID然后将其显示给用户,但问题是我获得的链接是像
它应该只是像
http://localhost/ucp/viewticket.php?ticketid=8
这是代码:
if ($result = $con->query($query))
{
echo '
<table id="tfhover" class="tftable" border="1">
<th>ID Tiketa</th>
<th>Autor</th>
<th>Naslov</th>
<th>Kategorija</th>
<th>Datum</th>
';
while ($row = $result->fetch_assoc())
{
echo "<tr>";
echo "<td>" . $row['ID'] . "</td>";
echo "<td>" . $row['Autor'] . "</td>";
echo "<td><a href=\"viewticket.php?ticketid=". $row['ID'] .">". $row['Naslov'] ."</a></td>";
echo "<td>" . $row['Kategorija'] . "</td>";
echo "<td>" . $row['Datum'] . "</td>";
echo "</tr>";
}
$result->free();
}
答案 0 :(得分:5)
您在href链接的末尾缺少双引号,因此它包括随后作为链接的所有HTML。我通过添加\&#34;来修复它。在&#34; a&#34;结束之前标签
echo "<td><a href=\"viewticket.php?ticketid=". $row['ID'] ."\">". $row['Naslov'] ."</a></td>";
答案 1 :(得分:0)
当你改变你的标记时,一切都应该没问题:
while ($row = $result->fetch_assoc())
{
echo '<tr>';
echo '<td>' . $row['ID'] . '</td>';
echo '<td>' . $row['Autor'] . '</td>';
echo '<td><a href="viewticket.php?ticketid='. $row['ID'] .'">'. $row['Naslov'] .'</a></td>';
echo '<td>' . $row['Kategorija'] . '</td>';
echo '<td>' . $row['Datum'] . '</td>';
echo '</tr>';
}
原因是,单引号和双引号之间存在很大差异。
PHP不会解析单引号,所以
$variable = 'hello';
echo '$variable'
仍会返回:$ variable
虽然
echo "$variable"
将字符串解析为:Hello
这样你会看到,你错过了双重报价。