PHP实现多关键字加亮功能


Posted in PHP onOctober 21, 2016

本文主要介绍的是PHP实现多关键字加亮功能,可以实现在搜索的时候进行高亮提醒,具体实现代码如下:

项目结构:

PHP实现多关键字加亮功能

搜索结果:  高亮显示

PHP实现多关键字加亮功能

项目所需数据库结构:

PHP实现多关键字加亮功能

实现代码:

conn.php

<?php 
$conn = @ mysql_connect("localhost", "root", "") or die("数据库链接错误"); 
mysql_select_db("form", $conn); 
mysql_query("set names 'gbk'"); 
?>

searchAndDisplayWithColor.php

<?php 
include 'conn.php'; 
?> 
<table width=500 align="center"> 
  <form action="" method="get"> 
  <tr> 
   <td>关键字:<input type="text" name="keyWord" /> 
   <input type="submit" value="搜索" /></td> 
  </tr> 
  </form> 
 </table> 
 
 <table width=500 border="0" align="center" cellpadding="5" 
  cellspacing="1" bgcolor="#add3ef"> 
  <?php 
  //关键字不为空的时候才执行相关搜索 
  if($_GET['keyWord']){ 
  //用空格符把关键字分割开 
  $key=explode(' ', $_GET[keyWord]); 
  $sql="select * from message where title like '$key[0]' or title like '$key[1]' or content like '$key[0]' or content like '%$key[1]%'"; 
  $query=mysql_query($sql); 
  while ($row=mysql_fetch_array($query)){ 
   //替换关键字,并且把关键字高亮显示 
   $row[title]=preg_replace("/$key[0]/i", "<font color=red><b>$key[0]</b></font>", $row[title]); 
   $row[title]=preg_replace("/$key[0]/i", "<font color=red><b>$key[1]</b></font>", $row[title]); 
   $row[content]=preg_replace("/$key[0]/i", "<font color=red><b>$key[0]</b></font>", $row[content]); 
   $row[content]=preg_replace("/$key[1]/i", "<font color=red><b>$key[1]</b></font>", $row[content]); 
   ?> 
 
  <tr bgcolor="#eff3ff"> 
   <td>标题:<font color="black"><?=$row[title]?></font> 用户:<font color="black"><?=$row[user] ?></font> 
   <div align="right"><a href="preEdit.php?id=<?=$row[id]?>">编辑</a>  |  <a 
    href="delete.php?id=<?=$row[id]?>">删除</a></div> 
   </td> 
  </tr> 
  <tr bgColor="#ffffff"> 
   <td>内容:<?=$row[content]?></td> 
  </tr> 
  <tr bgColor="#ffffff"> 
   <td> 
   <div align="right">发表日期:<?=$row[lastdate]?></div> 
   </td> 
  </tr> 
  <?php } 
  } 
  ?> 
 </table>

说明:在这个小程序中,有一点不足之处在于,只能同时搜索两个关键字,并且中间用空格" "隔开,如果只是搜索一个关键字,如:"大"

显示的时候会出现乱码 ……^|_|^,这是由于下面代码的结果:

//用空格符把关键字分割开 
 $key=explode(' ', $_GET[keyWord]);

希望本文所述对你有所帮助,PHP实现多关键字加亮功能内容就给大家介绍到这里了。希望大家继续关注我们的网站!想要学习php可以继续关注本站。

PHP 相关文章推荐
PHP 和 COM
Oct 09 PHP
phpmyadmin操作流程
Oct 09 PHP
在任意字符集下正常显示网页的方法二(续)
Apr 01 PHP
探讨php define()函数及defined()函数使用详解
Jun 09 PHP
基于PHP magic_quotes_gpc的使用方法详解
Jun 24 PHP
PHP输出九九乘法表代码实例
Mar 27 PHP
php实现留言板功能
Mar 05 PHP
php实现的双色球算法示例
Jun 20 PHP
PHP chop()函数讲解
Feb 11 PHP
PHP设计模式之适配器模式(Adapter)原理与用法详解
Dec 12 PHP
Laravel + Elasticsearch 实现中文搜索的方法
Feb 02 PHP
PHP使用PDO 连接与连接管理操作实例分析
Apr 21 PHP
PHP实现Google plus的好友拖拽分组效果
Oct 21 #PHP
PHP与服务器文件系统的简单交互
Oct 21 #PHP
微信公众号开发客服接口实例代码
Oct 21 #PHP
PHP抓取远程图片(含不带后缀的)教程详解
Oct 21 #PHP
PHP Header用于页面跳转时的几个注意事项
Oct 21 #PHP
phpcms中的评论样式修改方法
Oct 21 #PHP
PHP+jquery+CSS制作头像登录窗(仿QQ登陆)
Oct 20 #PHP
You might like
打造超酷的PHP数据饼图效果实现代码
2011/11/23 PHP
基于php iconv函数的使用详解
2013/06/09 PHP
php定界符
2014/06/19 PHP
thinkphp3.2.2前后台公用类架构问题分析
2014/11/25 PHP
PHP文件缓存smarty模板应用实例分析
2016/02/26 PHP
js 利用image对象实现图片的预加载提高访问速度
2013/03/29 Javascript
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
2014/05/11 Javascript
前端必备神器 Snap.svg 弹动效果
2014/11/10 Javascript
JavaScript事件委托技术实例分析
2015/02/06 Javascript
Bootstrap弹出框modal上层的输入框不能获得焦点问题的解决方法
2016/12/13 Javascript
div中文字内容溢出常见的解决方法
2017/03/16 Javascript
react配合antd组件实现的管理系统示例代码
2018/04/24 Javascript
微信小程序和百度的语音识别接口详解
2019/05/06 Javascript
发布订阅模式在vue中的实际运用实例详解
2019/06/09 Javascript
vue实现购物车的监听
2020/04/20 Javascript
分析Python的Django框架的运行方式及处理流程
2015/04/08 Python
在Python程序中实现分布式进程的教程
2015/04/28 Python
python开发之基于thread线程搜索本地文件的方法
2015/11/11 Python
Windows中安装使用Virtualenv来创建独立Python环境
2016/05/31 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
2018/01/30 Python
Python下载网络小说实例代码
2018/02/03 Python
PyQt5每天必学之组合框
2018/04/20 Python
pyspark 读取csv文件创建DataFrame的两种方法
2018/06/07 Python
Python 读写文件的操作代码
2018/09/20 Python
在python中只选取列表中某一纵列的方法
2018/11/28 Python
Django 对象关系映射(ORM)源码详解
2019/08/06 Python
使用豆瓣源来安装python中的第三方库方法
2021/01/26 Python
Nike西班牙官方网站:Nike.com (ES)
2017/10/30 全球购物
比利时家具购买网站:Home24
2019/01/03 全球购物
英文自我鉴定
2013/12/10 职场文书
网络研修随笔感言
2014/02/17 职场文书
初中生操行评语大全
2014/04/24 职场文书
考试没考好检讨书
2015/05/06 职场文书
大一新生军训新闻稿
2015/07/17 职场文书
2015年终个人政治思想工作总结
2015/11/24 职场文书
关于vue中如何监听数组变化
2021/04/28 Vue.js