php 多关键字 高亮显示实现代码


Posted in PHP onApril 23, 2012

项目结构:

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程序的方法
Mar 09 PHP
基于PHP服务端图片生成缩略图的方法详解
Jun 20 PHP
php session劫持和防范的方法
Nov 12 PHP
50个PHP程序性能优化的方法
Jun 02 PHP
php实现的农历算法实例
Aug 11 PHP
配置Nginx+PHP的正确思路与过程
May 10 PHP
PHP删除二维数组中相同元素及数组重复值的方法示例
May 05 PHP
thinkphp5.1框架模板布局与模板继承用法分析
Jul 19 PHP
PHP实现的文件浏览器功能简单示例
Sep 12 PHP
Laravel 自定命令以及生成文件的例子
Oct 23 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
Feb 27 PHP
PHP论坛实现积分系统的思路代码详解
Jun 01 PHP
php入门之连接mysql数据库的一个类
Apr 21 #PHP
洪恩在线成语词典小偷程序php版
Apr 20 #PHP
php 文件上传实例代码
Apr 19 #PHP
php开发留言板的CRUD(增,删,改,查)操作
Apr 19 #PHP
php和mysql中uft-8中文编码乱码的几种解决办法
Apr 19 #PHP
php递归创建和删除文件夹的代码小结
Apr 13 #PHP
redis 队列操作的例子(php)
Apr 12 #PHP
You might like
PHP使用flock实现文件加锁的方法
2015/07/01 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
PHP7 参数处理机制修改
2021/03/09 PHP
Js 获取HTML DOM节点元素的方法小结
2009/04/24 Javascript
Riot.js 快速的JavaScript单元测试框架
2009/11/09 Javascript
JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)
2013/12/17 Javascript
js父页面中使用子页面的方法
2016/01/09 Javascript
JS采用绝对定位实现回到顶部效果完整实例
2016/06/20 Javascript
CSS+jQuery实现简单的折叠菜单
2016/12/20 Javascript
input输入密码变黑点密文的实现方法
2017/01/09 Javascript
js实现分页功能
2017/05/24 Javascript
JS写XSS cookie stealer来窃取密码的步骤详解
2017/11/20 Javascript
vue的一个分页组件的示例代码
2017/12/25 Javascript
vue 权限认证token的实现方法
2018/07/17 Javascript
vue.js中toast用法及使用toast弹框的实例代码
2018/08/27 Javascript
layer更改皮肤的实现方法
2019/09/11 Javascript
layui-table获得当前行的上/下一行数据的例子
2019/09/24 Javascript
详细分析vue响应式原理
2020/06/22 Javascript
python多任务及返回值的处理方法
2019/01/22 Python
Pytorch 数据加载与数据预处理方式
2019/12/31 Python
Python栈的实现方法示例【列表、单链表】
2020/02/22 Python
基于virtualenv创建python虚拟环境过程图解
2020/03/30 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
2020/04/20 Python
Django调用百度AI接口实现人脸注册登录代码实例
2020/04/23 Python
CSS3 分类菜单效果
2019/05/27 HTML / CSS
理肤泉英国官网:La Roche-Posay英国
2019/01/14 全球购物
EJB需直接实现它的业务接口或Home接口吗,请简述理由
2016/11/23 面试题
this关键字的作用
2016/01/30 面试题
物流经理自我评价
2013/09/23 职场文书
节水标语大全
2014/06/11 职场文书
学习党的群众路线对照检查材料
2014/09/29 职场文书
《鲸》教学反思
2016/02/23 职场文书
七个Python必备的GUI库
2021/04/27 Python
Golang 并发下的问题定位及解决方案
2022/03/16 Golang
《游戏王:大师决斗》将推出新卡牌包4月4日上线
2022/03/31 其他游戏
python高温预警数据获取实例
2022/07/23 Python