php搜索引擎详细代码

在开发php后端时,我们常常需要大量地检索许多信息。以下内容将会详细地告诉你如何去制作一个php搜索框让你更快检索信息。

本文章由 千度搜索引擎 提供支持。
千度亿下,你就知道
http://qdss.xyz/

首先,你需要写一个前端页面,命名为“index.html”,让用户输入关键词,也就是首页。在写入代码前,记得要在标签中声明编码为gb2312。

<form action="search.php">
<!--上面声明了以下内容为表单内容,向search.php发送get请求。-->
<input type="text" name="search" />
<input type="submit" value="搜索">
</form>

html代码写完了,接下来就是写搜索代码。至于搜索原理,就是使用MySQL数据库时,php连接数据库,并让数据库执行搜索指令。其实也不会很难,学会一点英语的人大概都看得懂下面这行指令:

SELECT * FROM search WHERE title LIKE ‘%千度搜索%’

直译成中文就是:

选择来自 search 的表,哪里的标题像“%千度搜索%”

怎么样?是不是懂了亿点点?

我们来慢慢讲解:

SELECT * FORM →先选择哪一张表格
search →表格的名字search
WHERE →搜索指令
title →要搜索的列title
LIKE →搜索类型,搜索类似的
% →通配符,及代表任意字符,也可以是没有
%千度搜索% →查找含有“千度搜索”的单元格

好了,这样它会在数据库中查找标题含有“千度搜索”的那一行。

这样,我们在MySQL数据库中执行下面的命令:

CREATE TABLE `你的数据库名字`.`search` ( `title` TEXT CHARACTER SET gb2312 COLLATE gb2312_chinese_ci NOT NULL , `text` TEXT CHARACTER SET gb2312 COLLATE gb2312_chinese_ci NOT NULL , `site` TEXT CHARACTER SET gb2312 COLLATE gb2312_chinese_ci NOT NULL ) ENGINE = InnoDB;

(注:把代码中的中文改为你的数据库名字,是数据库名字,不是用户名!!!)
(如何执行MySQL命令?登录数据库界面后点击界面上方的“SQL”即可执行,或点击界面下方的控制台即可执行)
(title列是用来写标题的,text列是描述,site列是写网址,点击后跳转的链接)

好了,写完了数据库,就要开始写php后端了。

在index.html的目录下,再创建一个search.php,代码如下:

 <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"/><!--先写一个自适应代码,手机电脑兼容-->
<title><?php echo $_GET['search']; ?> - 千度搜索</title>
<!--标题随着用户输入的关键词的变化而变化-->
<?php
header("Content-Type:text/html;charset=gb2312");
//先确定该页面的编码为gb2312
$con = mysql_connect("数据库地址","数据库用户名","数据库密码");
//当然,你并不需要担心密码泄露,因为前端代码不会显示密码
if (!$con){die('数据库出错,错误原因:' . mysql_error());//万一数据库出错,它还能告诉你怎么回事}
mysql_query("set names 'gb2312'",$con);
//这里填写的是php与数据库传输数据的编码,就像发电报时的电报编码表,不用管它
mysql_select_db("你的数据库名称", $con);
//确定sql命令执行的表
//好了,MySQL那边设定好了,轮到php传输过程了$searchs = $_GET['search'];  //传递搜索框过来的值
$searchs= trim($searchs);
//除去字符串两端空格
if (!$searchs){echo '输入为空';
exit;
}
//这个设定了当用户没有输入或输入空格时的事件$result = mysql_query("SELECT * FROM search where keyword like '%$searchs%' AND enter LIKE '%".$enter."%'");
//开始搜索并获取结果
echo "网页搜索结果<hr>";
//开始输出标题
if (mysql_num_rows($result) < 1) echo "无结果,去<a href='//baidu.com/s?word=".$searchs."'>百度</a>看看";
//当结果数量为0时的事件
//以下开始输出结果
while($row = mysql_fetch_array($result)){echo "<a href=".$row['enter'].">".$row['name']."</a>" ;echo "<br />";echo $row['text'] ;echo "<hr />";}//与数据库断开连接
mysql_close($con);
//程序结束
?>

好了,所有的代码已经展现出来了,大家可以去千度搜索看看真实效果(注:部分地方可能进过改动)

声明:本文章所有内容均为手打,如有错误,欢迎到下方批评指正。本文章代码部分由千度提供,网址: http://qdss.xyz 。

php搜索引擎详细代码相关推荐

  1. 360搜索引擎html代码,360搜索引擎结果中智能摘要,搜索结果出图HTML修改详细说明...

    说明是智能摘要? 其实就是告诉搜索引擎,这个页面是属于什么类型有对应的什么数据! 如上图片这一块就是智能摘要说明. 告诉了搜索页面是文章,发布时间,图片地址,作者等等 如下介绍各个不同摘要: 1.短视 ...

  2. 用html实现抽奖大转盘,【项目实战】用CSS实现一个抽奖转盘(附详细代码+思路)...

    原标题:[项目实战]用CSS实现一个抽奖转盘(附详细代码+思路) 效果 基本是用CSS实现的,没有用图片,加一丢丢JS. 完全没有考虑兼容性. 首先画一个转盘 < htmllang= " ...

  3. 教你C语言实现通讯录的详细代码

    本文详细讲解了C语言实现通讯录的方法,文中通过示例代码介绍的非常详细.对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 (一)实现思路 1.通讯录功能 添加好友,删除好友,查找好友,修改 ...

  4. 折叠式菜单 html,JQuery实现折叠式菜单的详细代码

    两种风格: 1:点菜单项,每个子菜单项都可显示 30秦甜甜_实训13-2_2_180701802230_18计算机2班 * { padding: 0; margin: 0; list-style: n ...

  5. ajax发送异步请求四个步骤,深入理解ajax异步请求的五个步骤(详细代码)

    在前端工作中,经常会用到ajax,其实很多人只知道ajax是异步请求,不知道应该如何用它,它的基本步骤有哪些,ajax请求过程是怎样的?接下来这篇文章就给大家介绍Ajax的请求步骤,以及ajax请求步 ...

  6. 开放下载!《15分钟打造你自己的小程序》(内附详细代码)

    简介: 零基础开发你自己的支付宝小程序,教程在手不迷路,从入门到精通,还有详细代码在里面哦~ <15分钟打造你自己的小程序>独家电子书上线啦!零基础开发你自己的支付宝小程序,手把手教你从入 ...

  7. java中nio怎么实现聊天,JAVA-NIO实现聊天室详细代码说明

    JAVA-NIO实现聊天室详细代码说明 JAVA-NIO实现聊天室详细代码说明 github源码:https://github.com/JolyouLu/JAVAIO.git src\main\jav ...

  8. python random函数_详细代码实战讲解:如何用 Python让自己变成天选之子

    今天为大家带来的内容是:详细代码讲解:如何用 Python让自己变成天选之子 话不多说直接上代码: 请大家猜一猜下面这段代码的运行效果: 你是不是以为这段代码运行以后,结果如下图所示? 但实际上,我可 ...

  9. php实现飘窗,JS实现网站图片飘窗效果,JavaScript悬浮广告(附详细代码)

    原标题:JS实现网站图片飘窗效果,JavaScript悬浮广告(附详细代码) JS实现网站图片飘窗效果,Java悬浮广告,郑州SEO提供以下代码,仅供参考: 飘窗效果-丁光辉博客(www.dinggu ...

最新文章

  1. 计算机应用教程 中级 平装,计算机应用中级教程
  2. 殇-至吾爱 ---经典
  3. canvas手机端绘图解决方案
  4. 【五校联考3day2】B
  5. linux cp 命令使用一角
  6. 来自百度的一篇如何关闭Centos7的防火墙以及如何永久关闭防火墙的指令教学【转载】
  7. [11] ADB 实用功能
  8. 图解Http学习第一章
  9. How to Prevent the next Heartbleed
  10. asp.net状态服务文章阅读
  11. web数字可视化有哪些实现的方法?
  12. IOS开发入门(6)-自动布局(1)
  13. laragon mysql版本_laragon mysql8 安装
  14. Common Data Model (CDM)通用数据模型1
  15. 巴别塔合约作战终端开发日记3——服务器负载优化
  16. python爬虫之壁纸的下载
  17. Java实现MD5加密及验证(两种方式,加盐md5与未加盐md5)
  18. 算法题解 —— 链表(6-10)
  19. 【洛谷P6199 [EER1]河童重工】【点分治+虚树】
  20. 大文件上传Jquery 插件Uploadify-v2.1.4使用图解

热门文章

  1. CRM及协同办公高保真原型、审批管理、办公申请、工单管理、任务管理、日程管理、工作报告、签到考勤、客户管理、销售线索、商机管理、订单管理、账务管理、统计报表、回款管理、发票管理、报销管理、客户关系管理
  2. 【mybatis代码生成器】mybatis-generator的xml方式使用
  3. 公众号我也快看不下去了
  4. office Excel 加载加载项时出错 解决办法
  5. 11月最新编程排行榜出炉,这个语言超过了C蝉联榜首~
  6. 2020年4月TIOBE语言排行榜-你知道少儿编程语言Scratch吗
  7. 微信小程序轮播图设计
  8. ios识别人脸自动拍照_真的逆天?iOS 10相册识别人脸的秘密
  9. catia 圆显示不圆,设置显示
  10. SpringBoot集成WebSocket实现及时通讯聊天功能!!!