加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-06-29 13:48:22 所属栏目:PHP教程 来源:互联网
导读:这篇文章主要介绍了PHP实现关键字搜索后描红功能,结合实例形式分析了php数据库连接、查询、字符串转换等相关操作技巧,需要的朋友可以参考下。 本文实例讲述了PHP实现关键字搜索后描红功能,分享给大家供大家参考,具体如下: 在刚开始学习php的时候,就对
  这篇文章主要介绍了PHP实现关键字搜索后描红功能,结合实例形式分析了php数据库连接、查询、字符串转换等相关操作技巧,需要的朋友可以参考下。
 
  本文实例讲述了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(!emptyempty($_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()函数将其中的关键字文字替换成带有红色的文字,就实现了关键字描红的效果。

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读