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开发大型项目的一点经验
Oct 09 PHP
通过对服务器端特性的配置加强php的安全
Oct 09 PHP
安装apache2.2.22配置php5.4(具体操作步骤)
Jun 26 PHP
php5.3 goto函数介绍和示例
Mar 21 PHP
ThinkPHP分页实例
Oct 15 PHP
基于php的微信公众平台开发入门实例
Apr 15 PHP
PHP判断JSON对象是否存在的方法(推荐)
Jul 06 PHP
浅析Laravel5中队列的配置及使用
Aug 04 PHP
php array_merge_recursive 数组合并
Oct 26 PHP
什么是PHP文件?如何打开PHP文件?
Jun 27 PHP
浅谈Laravel核心解读之Console内核
Dec 02 PHP
laravel5.6框架操作数据curd写法(查询构建器)实例分析
Jan 26 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 连接mssql数据库 初学php笔记
2010/03/01 PHP
PHP 文本文章分页代码 按标记或长度(不涉及数据库)
2012/06/07 PHP
php GUID生成函数和类
2014/03/10 PHP
php使用curl和正则表达式抓取网页数据示例
2014/04/13 PHP
怎样搭建PHP开发环境
2015/07/28 PHP
PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图
2017/05/15 PHP
JavaScript 继承详解(一)
2009/07/13 Javascript
AlertBox 弹出层信息提示框效果实现步骤
2010/10/11 Javascript
在一个js文件里远程调用jquery.js会在ie8下的一个奇怪问题
2010/11/28 Javascript
lyhucSelect基于Jquery的Select数据联动插件
2011/03/29 Javascript
关于js拖拽上传 [一个拖拽上传修改头像的流程]
2011/07/13 Javascript
javascript实现颜色渐变的方法
2013/10/30 Javascript
在Node.js中实现文件复制的方法和实例
2014/06/05 Javascript
js判断文本框剩余可输入字数的方法
2015/02/04 Javascript
JavaScript实现Java中StringBuffer的方法
2015/02/09 Javascript
angular2+nodejs实现图片上传功能
2017/03/27 NodeJs
Vue2.0 UI框架ElementUI使用方法详解
2017/04/14 Javascript
vue init webpack myproject构建项目 ip不能访问的解决方法
2018/03/20 Javascript
解决v-for中使用v-if或者v-bind:class失效的问题
2018/09/25 Javascript
一个因@click.stop引发的bug的解决
2019/01/08 Javascript
配置一个vue3.0项目的完整步骤
2019/04/26 Javascript
vue中使用vue-pdf的方法详解
2020/09/05 Javascript
jQuery实现图片切换效果
2020/10/19 jQuery
vue keep-alive实现多组件嵌套中个别组件存活不销毁的操作
2020/10/30 Javascript
haskell实现多线程服务器实例代码
2013/11/26 Python
Pytest mark使用实例及原理解析
2020/02/22 Python
探秘TensorFlow 和 NumPy 的 Broadcasting 机制
2020/03/13 Python
pandas将list数据拆分成行或列的实现
2020/12/13 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
Booking.com荷兰:全球酒店网上预订
2017/08/22 全球购物
女性时尚在线:IVRose
2019/02/23 全球购物
static函数与普通函数有什么区别
2015/12/25 面试题
销售求职信范文
2014/05/26 职场文书
本科应届生求职信
2014/08/05 职场文书
纪检监察立案决定书
2015/06/24 职场文书
2016银行求职自荐信
2016/01/28 职场文书