Php 突出显示查询中的搜索词?
我在突出显示查询中的搜索词时遇到问题。如果用户搜索“Jesus”,所有包含“Jesus”的诗句都将被列出并分页。我想在所有这些段落中突出显示搜索查询 比方说,我搜索“耶稣”,弹出大约10节诗句,我希望每一页上所有耶稣的实例都突出显示 我的PHP代码: 索引:Php 突出显示查询中的搜索词?,php,sql,highlighting,Php,Sql,Highlighting,我在突出显示查询中的搜索词时遇到问题。如果用户搜索“Jesus”,所有包含“Jesus”的诗句都将被列出并分页。我想在所有这些段落中突出显示搜索查询 比方说,我搜索“耶稣”,弹出大约10节诗句,我希望每一页上所有耶稣的实例都突出显示 我的PHP代码: 索引: 圣经数据库: 我不知道该怎么做 我的查询的select语句: $searchResult = $dbLink->prepare("SELECT bsect, bname, bnum, cnum, vnum, vtext,
圣经数据库: 我不知道该怎么做 我的查询的select语句:
$searchResult = $dbLink->prepare("SELECT bsect, bname, bnum, cnum, vnum, vtext, MATCH (bname, vtext)
AGAINST ('$searchQuery' IN BOOLEAN MODE)
AS relevance
FROM kjv
WHERE MATCH (bname, vtext)
AGAINST ('$searchQuery' IN BOOLEAN MODE)
ORDER BY relevance
DESC
$limit");
实际显示我的结果的代码(圣经名称章节编号:诗节编号,然后是诗节文本:
while ($searchResult->fetch())
{
print ("<span class=\"results title\">$bname $cnum:$vnum</span>");
print ("<p class=\"passage\">$vtext</p>");
}
while($searchResult->fetch())
{
打印($bname$cnum:$vnum);
打印(“$vtext
”;
}
我相信你已经在这里做到了:
$output = str_replace($_GET[phrase],"<font color=red>" . $_GET[phrase] . "</font>",$output);
我也喜欢echo而不是print,但这是个人偏好。当然,您希望避免使用“
,并尽可能使用”
,因为它将加快PHP的速度,因为引擎不必解析整个字符串来查找变量。但是,个人偏好请再次尝试
jQuery插件。提供了演示和实现。我没有查看您的代码,但类似的东西应该可以工作:
echo str_replace($searchWord, '<span class="highlight">' . $searchWord . '</span>', $row['verse']);
echo str_替换($searchWord、.$searchWord.'、$row['verse']);
将您的代码示例缩减为相关的子集。我们不会阅读代码墙来告诉您如何执行此操作。展示您迄今为止的尝试,我们可以帮助解决此问题。它只是一堆select语句和循环,没有什么真正相关的。它从数据库中获取一些字段并显示它们。实际上,我只是复制粘贴了这些字段t从另一个网站,不知道我在做什么lol。这看起来很棒,很快就会给它一个机会。
print ("<p class=\"passage\">$vtext</p>");
echo '<p class="passage">'.(str_replace($searchQuery, '<font color="red">'.$searchQuery.'</font>', $vtext).'</p>';
echo str_replace($searchWord, '<span class="highlight">' . $searchWord . '</span>', $row['verse']);