PHP实现关键字搜索后描红功能示例
发布:smiling 来源: PHP粉丝网 添加日期:2021-12-01 11:25:25 浏览: 评论:0
这篇文章主要介绍了PHP实现关键字搜索后描红功能,结合实例形式分析了php数据库连接、查询、字符串转换等相关操作技巧,需要的朋友可以参考下。
本文实例讲述了PHP实现关键字搜索后描红功能,分享给大家供大家参考,具体如下:
在刚开始学习php的时候,就对搜索过后的关键字描红感到好奇,但是这几天在巩固php基础的时候,就发现原来这样的效果实现并不难。按照惯例,首先给大家看看效果图吧。
运行效果图
数据库相关
数据库名是book,只有一个数据库表,也是book,模拟了5条数据。
name字段是书名,description字段是书的描述
代码
- <!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()函数将其中的关键字文字替换成带有红色的文字,就实现了关键字描红的效果。
Tags: PHP关键字搜索后描红
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)