php+mysql开发站内搜索+最近搜索+最近热搜
2021/5/23 19:28:27
本文主要是介绍php+mysql开发站内搜索+最近搜索+最近热搜,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
实际应用项目:http://github.crmeb.net/u/long
1、通过php查询mysql数据库的关键词,用%$_POST[keyword]%实现关键词搜索
2、每次搜索关键词,都把该关键词插入数据库的keywords字段做记录,然后查询keywords所有记录并输出,即可实现最近搜索的关键词功能
3、计算keywords里所有重复字段并排序,输出前5个最多人搜索的关键词,即可实现最近热搜
sou.php ,这是表单提交页面+最近搜索,最近热搜关键词输出页面。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("p").toggle(); }); }); </script> <style type="text/css"> button{ background: none; border:none; } </style> </head> <body> <button type="button"> <form action="do.php" method="post"> <input type="text" name="keyword" > <input type="submit" name="btn" VALUE="搜索"> </form> </button> <h2 style="color:#f00;">最近搜索</h2> <?php header("Content-type:text/html;charset=utf-8"); //连接数据库 $con = mysql_connect("localhost","root","root"); if (!$con) { die('连接数据库失败,失败原因:' . mysql_error()); } //设置数据库字符集 mysql_query("SET NAMES UTF8"); //查询数据库 mysql_select_db("test", $con); //查询最新10条数据 $result = mysql_query("SELECT * FROM sou ORDER BY id DESC LIMIT 0,10"); //输出 while($row = mysql_fetch_array($result)) { echo "<p>" . $row['keywords'] . "</p>"; } echo "<h2 style='color:#f00;'>最近热搜</h2>"; //查询搜索次数最多的5条数据 $result = mysql_query("SELECT keywords, count(*) as sum FROM sou group by keywords Order By sum DESC LIMIT 0,6"); //输出 while($row = mysql_fetch_array($result)) { echo "<p>" . $row['keywords'] . "</p>"; } //关闭连接 mysql_close($con); ?> </body> </html>
do.php 为表单接收,处理,验证页面。
<?php header("Content-type:text/html;charset=utf-8"); $keyword = $_POST["keyword"]; if($keyword == "") { echo "<script>alert('请不要留空!'); history.go(-1);</script>"; } else{ //连接数据库 $con = mysql_connect("localhost","root","root"); if (!$con) { die('连接数据库失败,失败原因:' . mysql_error()); } //设置数据库字符集 mysql_query("SET NAMES UTF8"); //查询数据库 mysql_select_db("test", $con); //查询数据 $result = mysql_query("SELECT * FROM sou where title like '%$_POST[keyword]%'"); $num = mysql_num_rows($result); if($num) //如果已经存在 { //输出 while($row = mysql_fetch_array($result)) { echo "<p>" . $row['title'] . "</p>"; } } else{ echo "暂无资源!"; } //插入数据 $conn = mysql_query("INSERT INTO sou (keywords) VALUES ('$_POST[keyword]')"); //关闭连接 mysql_close($con); } ?>
数据库已有字段,也就是搜索这些字段是有结果的,如果搜索其它不存在的字段,就会echo "暂无资源!"
这篇关于php+mysql开发站内搜索+最近搜索+最近热搜的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享
- 2024-11-01开源 PHP 商城项目 CRMEB 安装和使用教程
- 2024-11-01用php和mysql写无限分类,有哪几种方法-icode9专业技术文章分享
- 2024-10-31php数据分表导出时部分数据无法导出什么原因-icode9专业技术文章分享
- 2024-10-30有经验的 PHP 开发者学习一门新的编程语言,有哪些推荐的有前景的语言-icode9专业技术文章分享
- 2024-10-21php 检测图片是否篡改过-icode9专业技术文章分享