PHP实现关键字搜索后描红功能示例


Posted in PHP onJuly 03, 2019

本文实例讲述了PHP实现关键字搜索后描红功能。分享给大家供大家参考,具体如下:

在刚开始学习php的时候,就对搜索过后的关键字描红感到好奇,但是这几天在巩固php基础的时候,就发现原来这样的效果实现并不难。按照惯例,首先给大家看看效果图吧。

运行效果图

PHP实现关键字搜索后描红功能示例

数据库相关

  • 数据库名是book,只有一个数据库表,也是book,模拟了5条数据。
  • name字段是书名,description字段是书的描述

PHP实现关键字搜索后描红功能示例

代码

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title></title>
  <link rel="stylesheet" href="">
</head>
<body>
<form action="14.php" method="post">
  请输入关键字:<input type="text" name="keyword">
  <input type="submit" value="提交" />
</form>
<?php
  if(!empty($_POST['keyword'])){
    $keyword = $_POST['keyword'];//获取输入的关键字
    //进行数据库连接
    $conn = mysql_connect("localhost","root","1234");
    if(!$conn){
      die("数据库连接失败");
    }
    $flag = mysql_select_db("book",$conn);
    if(!$flag){
      die("数据库打开失败");
    }
    mysql_query("set names utf8");
    $sql = "select * from book where name like '%$keyword%' or description like '%$keyword%'";
    $result = mysql_query($sql,$conn);
    while($row = mysql_fetch_assoc($result)){
?>
<div style="width:300px;height:100px;background-color: #ccc;margin-bottom: 10px">
  <p>书名:<?php echo str_ireplace($keyword, "<font color='#f00'>$keyword</font>",$row['name'])?></p>
  <p>描述:<?php echo str_ireplace($keyword, "<font color='#f00'>$keyword</font>",$row['description'])?></p>
</div>
<?php
  }
}else{
  echo "很遗憾,没有找到书籍";
}
?>
</body>
</html>

最后说一下实现的原理,首先先获取从文本框输入的关键字文字,然后就是连接数据库进行查询,将书名中或者描述中包含关键字文字的记录查询出来,把查询到的结果循环显示出来,在显示书名和描述的时候,用str_ireplace()函数将其中的关键字文字替换成带有红色的文字,就实现了关键字描红的效果。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
?算你??的 PHP 程式大小
Dec 06 PHP
POSIX 风格和兼容 Perl 风格两种正则表达式主要函数的类比(preg_match, preg_replace, ereg, ereg_replace)
Oct 12 PHP
php中将时间差转换为字符串提示的实现代码
Aug 08 PHP
浅析HTTP消息头网页缓存控制以及header常用指令介绍
Jun 28 PHP
PHP把小数转成整数3种方法
Jun 30 PHP
php使用curl打开https网站的方法
Jun 17 PHP
PHP实现多文件上传的方法
Jul 08 PHP
PHP计算加权平均数的方法
Jul 16 PHP
PHP云打印类完整示例
Oct 15 PHP
php如何修改SESSION的生存存储时间的实例代码
Jul 05 PHP
php中文乱码问题的终极解决方案汇总
Aug 01 PHP
PHP迭代器接口Iterator用法分析
Dec 28 PHP
Smarty模板类内部原理实例分析
Jul 03 #PHP
Referer原理与图片防盗链实现方法详解
Jul 03 #PHP
thinkphp5框架调用其它控制器方法 实现自定义跳转界面功能示例
Jul 03 #PHP
Centos7 Yum安装PHP7.2流程教程详解
Jul 02 #PHP
thinkphp5修改view到根目录实例方法
Jul 02 #PHP
PHP rmdir()函数的用法总结
Jul 02 #PHP
PHP+iframe模拟Ajax上传文件功能示例
Jul 02 #PHP
You might like
php addslashes 函数详细分析说明
2009/06/23 PHP
PDO防注入原理分析以及注意事项
2015/02/25 PHP
JQuery 操作Javascript对象和数组的工具函数小结
2010/01/22 Javascript
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析
2010/03/12 Javascript
让浏览器非阻塞加载javascript的几种方法小结
2011/04/25 Javascript
JavaScript高级程序设计(第3版)学习笔记4 js运算符和操作符
2012/10/11 Javascript
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
js中单引号与双引号冲突问题解决方法
2013/10/04 Javascript
jquery live()重复绑定的解决方法介绍
2014/01/03 Javascript
jquery复选框多选赋值给文本框的方法
2015/01/27 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
全面解析Bootstrap手风琴效果
2020/04/17 Javascript
jqueryMobile使用示例分享
2016/01/12 Javascript
高性能JavaScript循环语句和条件语句
2016/01/20 Javascript
jQuery Chosen通用初始化
2017/03/07 Javascript
详解Vue快速零配置的打包工具——parcel
2018/01/16 Javascript
webpack 单独打包指定JS文件的方法
2018/02/22 Javascript
详解Vue打包优化之code spliting
2018/04/09 Javascript
jQuery基于闭包实现的显示与隐藏div功能示例
2018/06/09 jQuery
使用vue-router完成简单导航功能【推荐】
2018/06/28 Javascript
如何通过setTimeout理解JS运行机制详解
2019/03/23 Javascript
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
2019/04/22 Javascript
Vue关于组件化开发知识点详解
2020/05/13 Javascript
jquery实现异步文件上传ajaxfileupload.js
2020/10/23 jQuery
[54:51]Ti4 冒泡赛第二轮LGD vs C9 3
2014/07/14 DOTA
Python Web框架Flask中使用百度云存储BCS实例
2015/02/08 Python
Python中在脚本中引用其他文件函数的实现方法
2016/06/23 Python
Python logging模块异步线程写日志实现过程解析
2020/06/30 Python
以下为Windows NT 下的32 位C++程序,请计算sizeof 的值
2016/12/07 面试题
汽车运用工程系毕业生自荐信
2013/12/27 职场文书
文明餐桌行动实施方案
2014/02/19 职场文书
大龄毕业生求职别忘职业规划
2014/03/11 职场文书
小学班主任评语大全
2014/04/23 职场文书
酒店员工培训方案
2014/06/02 职场文书
商业用房租赁协议书
2014/10/13 职场文书