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 相关文章推荐
WINDOWS服务器安装多套PHP的另类解决方案
Oct 09 PHP
php目录管理函数小结
Sep 10 PHP
php 生成饼图 三维饼图
Sep 28 PHP
php 数学运算验证码实现代码
Oct 11 PHP
php学习笔记之 函数声明
Jun 09 PHP
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
Jun 09 PHP
ecshop实现smtp发送邮件
Feb 03 PHP
PHP下的浮点运算不准的解决方法
Oct 27 PHP
PHP实现网页内容html标签补全和过滤的方法小结【2种方法】
Apr 27 PHP
php获取ajax的headers方法与内容实例
Dec 27 PHP
laravel-admin的多级联动方法
Sep 30 PHP
PHP 技巧 * SVG 保存为图片(分享图生成)
Apr 02 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跨域cookie共享使用方法
2014/02/20 PHP
php开启与关闭错误提示适用于没有修改php.ini的权限
2014/10/16 PHP
ThinkPHP水印功能实现修复PNG透明水印并增加JPEG图片质量可调整
2014/11/05 PHP
php读取torrent种子文件内容的方法(测试可用)
2016/05/03 PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
2017/08/03 PHP
JS+XML 省份和城市之间的联动实现代码
2009/10/14 Javascript
第一个JavaScript入门基础 document.write输出
2010/02/22 Javascript
深入理解JavaScript作用域和作用域链
2011/10/21 Javascript
AngularJS使用自定义指令替代ng-repeat的方法
2016/09/17 Javascript
仿iframe效果Aajx文件上传实例
2016/11/18 Javascript
详解jQuery uploadify文件上传插件的使用方法
2016/12/16 Javascript
Bootstrap CSS布局之表单
2016/12/17 Javascript
简单实现jQuery弹幕效果
2017/05/06 jQuery
使用Node搭建reactSSR服务端渲染架构
2018/08/30 Javascript
vscode vue 文件模板的配置方法
2019/07/23 Javascript
python smtplib模块发送SSL/TLS安全邮件实例
2015/04/08 Python
浅析Python中else语句块的使用技巧
2016/06/16 Python
VSCode下配置python调试运行环境的方法
2018/04/06 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
Python初学者需要注意的事项小结(python2与python3)
2018/09/26 Python
Python Matplotlib库安装与基本作图示例
2019/01/09 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
2019/01/23 Python
Python使用ctypes调用C/C++的方法
2019/01/29 Python
python定时检测无响应进程并重启的实例代码
2019/04/22 Python
详解pandas数据合并与重塑(pd.concat篇)
2019/07/09 Python
Python函数中的可变长参数详解
2019/09/12 Python
jupyter notebook 增加kernel教程
2020/04/10 Python
Python+Dlib+Opencv实现人脸采集并表情判别功能的代码
2020/07/01 Python
马来西亚太阳镜、眼镜和隐形眼镜网上商店:Focus Point
2018/12/13 全球购物
在数据文件自动增长时,自动增长是否会阻塞对文件的更新
2014/05/01 面试题
会计实习自我鉴定
2013/12/04 职场文书
安全保卫工作竞聘材料
2014/08/25 职场文书
学校运动会报道稿
2014/09/23 职场文书
i7 6700处理器相当于i5几代
2022/04/19 数码科技
MySql如何将查询的出来的字段进行转换
2022/06/14 MySQL
Win10玩csgo闪退如何解决?Win10玩csgo闪退的解决方法
2022/07/23 数码科技