曾经尝试以不同的方式在我的php搜索结果中显示链接为超文本。将链接显示为文本有效,但不能作为可点击链接。
我在这里找到了一个解决方案,它可以工作,但不能达到我想要的方式。 由于现在链接“在此处关注链接”有效,但是如果数据库中没有链接,它仍会为“在此处关注链接”提供内容https://mywebsite/mysearch.php?query=[MY SEARCH]。那是;它提供了指向结果的链接。
任何帮助表示赞赏!
<?php
$con=mysqli_connect("X", "Y", "Z") or die("Error connecting to database: ".mysqli_error());
mysqli_select_db($con,"X") or die(mysqli_error());
mysqli_query($con,"SET NAMES UTF8");
$query = $_GET['query'];
$min_length = 3;
if(strlen($query) >= $min_length){
$query = htmlspecialchars($query);
$raw_results = mysqli_query($con,"SELECT * FROM Library WHERE (`Tablettes` LIKE '%".$query."%' OR `Title` LIKE '%".$query."%' OR `Author` LIKE '%".$query."%' OR `Language` LIKE '%".$query."%' OR `Subject` LIKE '%".$query."%' OR `Subject2` LIKE '%".$query."%' OR `Translation` LIKE '%".$query."%' OR `About` LIKE '%".$query."%') ORDER BY Lopnr ASC") or die(mysqli_error());
if(mysqli_num_rows($raw_results) > 0){
while($results = mysqli_fetch_array($raw_results)){
echo "<p><table bgcolor='#FFFFFF' width='900' align='center' cellpadding='3' cellspacing='0' border='0'>
<thead>
<hr align='center' width='900'>
</thead>
<tbody>
<tr>
<tr><center><font color='#ffffff'>
Library: <strong>".$results['Library']."</strong></br>
<tr><center>".$results['CategoryYear']."
</tr>
</em></td></tr>
//编辑//
<tr>
<td style='border-right:none;border-left:none;border-bottom:none;border-top:none' colspan='10' valign='top'>
<em>
echo '<a href=".$results['Link'].">Follow link here</a>'
</td></tr>
</tbody>
</body>
</html>
</table>";
}
}
else{
echo "No results";
}
}
else{
echo "Minimum length is ".$min_length;
}
?>
答案 0 :(得分:0)
在while($results = mysqli_fetch_array($raw_results)){
之后立即放置以下代码:
$link = '';
if (! empty($results['Link']) ) {
$link = '<em><a href='.$results['Link'].'>Follow link here</a></em>';
}
然后在您的// EDITED //
部分,替换
<em>
echo '<a href=".$results['Link'].">Follow link here</a>'
仅带有$link
。