问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

PHP多关键字,排序搜索

发布网友 发布时间:2022-04-21 09:55

我来回答

4个回答

热心网友 时间:2023-09-25 06:50

PHP要实现关键字查搜索,需要用到like关键字来组合查询条件

like具体实现方法如下:

例一:

1    $userForm=M('user');    
1    $where['name']=array('like','phpernote%');    
2    $userForm->where($where)->select();

这里的like查询即为:name like 'phpernote%'

例二:

1$where['name']=array('like',array('%phpernote%','%.com'),'OR');

这里的like查询即为:name like '%phpernote%' or name like '%.com'

例三:

1$where['name']=array(array('like','%a%'),array('like','%b%'),array('like','%c%'),'phpernote','or');

这里的like查询即为:(`name` LIKE '%a%') OR (`name` LIKE '%b%') OR (`name` LIKE '%c%') OR (`name` = 'phpernote')

例四:

1$where['_string']='(name like "%phpernote%")  OR (title like "%phpernote")'

这里的like查询即为:name like '%phpernote%' or title like '%phpernote'

热心网友 时间:2023-09-25 06:50

当你把你输入的字 如:百度知道传到php程序里面,然后你可以通过写sql来完成查询(本身就是一个查询功能),select * from table where name like %百度知道%

热心网友 时间:2023-09-25 06:51

用LIKE
数据表:news
字段:cont对应内容
select * from `news` where `cont` like '%百度知道%'

热心网友 时间:2023-09-25 06:52

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html;charset=utf-8">
</head>
<style type="text/css">
body{
font-size: 12px;font-family: verdana;width: 100%;
}
div.page{
text-align: center;
}
div.content{
height: 300px;
}
div.page a{
border:#aaaadd 1px solid;text-decoration: none;padding: 2px 5px 2px 5px;margin: 2px;
}
div.page span.current{
border:#000099 1px solid;background-color: #000099;padding: 2px 5px 2px 5px;margin: 2px;color: #fff;font-weight: bold;
}
div.page span.disable{
border:#eee 1px solid;padding:2px 5px 2px 5px; margin: 2px;color:#ddd;
}
div.page form{
display: inline;
}
</style>
<body>
<?php
//设置级别错误,通知类除外
error_reporting('E_ALL&~E_NOTICE');
/**1---传入页码,使用GET获取**/
$page=$_GET['p'];
/**2---根据页码取出数据:php->mysql处理**/
$host="localhost";
$username="root";
$password="root";
$db="db4"; //数据库
$mysql_table="person"; //数据表
$table_guanjianzi="think"; //关键字

$pageSize=10;
$showPage=5;
//连接数据库,面向过程
$conn=mysqli_connect($host,$username,$password);
if(!$conn){
echo "数据库连接失败";
exit;
}
//选择所要操作的数据库
mysqli_select_db($conn,$db);
//设置数据库编码格式
mysqli_query($conn,"SET NAMES UTF8");
//编写sql获取分页数据 SELECT * FROM 表名 LIMIT 起始位置,显示条数
//注意:以下id,name,age,say都是字段节点名,person是表名,db4是数据库名,think是指定的关键字.
$sql = "SELECT id, name, age, say
FROM person
WHERE say LIKE '%{$table_guanjianzi}%' order by id ASC LIMIT ".($page-1)*$pageSize .",{$pageSize}"; //双引号能包单引号,反过来不行,会出错./
// $sql = 'SELECT id, name, age, say
// FROM person
// WHERE say LIKE "%'think'%" order by id ASC LIMIT '.($page-1)*$pageSize .",{$pageSize}";
// 节点名 关键字 节点名 可指定数量limit后可写一个指定的数字
//$sql="select * from $mysql_table"
//$sql='select * from data where Id='.$id.' order by '.$item.' desc';
//把sql语句传送到数据库
$result=mysqli_query($conn,$sql);
//将数据显示到table中,并未table设置格式
echo "<div class='content'>";
echo "<table border=1 cellspacing=0 width=30% align=center>";
echo "<tr><td>ID</td><td>NAME</td><td>say</td></tr>";

while ($row = mysqli_fetch_assoc($result)) {
echo "<tr>";
echo "<td>{$row['id']}</td>";
echo "<td>{$row['name']}</td>";
echo "<td>{$row['say']}</td>";
echo "<tr>";
}
echo "</table>";
echo "</div>";
//释放结果
mysqli_free_result($result);
//获取数据总条数
$total_sql="SELECT COUNT(*)FROM $mysql_table";
$total_result=mysqli_fetch_array(mysqli_query($conn,$total_sql));
$total=$total_result[0];
$total_pages=ceil($total/$pageSize);
//关闭数据库
mysqli_close($conn);
/**3---显示数据+显示分页条**/
$page_banner="<div class='page'>";
//计算偏移量
$pageoffset=($showPage-1)/2;
//两种情况下 首页、上一页 的显示效果
if($page>1){
$page_banner .= "<a href='".$_SERVER['PHP_SELF']."?p=1'>首页</a>";
$page_banner .= "<a href='".$_SERVER['PHP_SELF']."?p=" .($page-1) . "'><上一页</a>";
}else{
$page_banner .="<span class='disable'>首页</span>";
$page_banner .="<span class='disable'><上一页</span>";
}
//显示
$start=1;
$end=$total_pages;
//当总条数大于分页数时
if($total_pages>$showPage){
if($page>$pageoffset+1){
$page_banner .="...";
}
if($page>$pageoffset){
$start=$page-$pageoffset;
$end=$total_pages>$page+$pageoffset?$page+$pageoffset:$total_pages;//三段式
}
//最前面几个特殊页号的显示。当前指的是页号1或者2时
else{
$start=1;
$end=$showPage;
}
//最后面几个特殊页号的显示,当前显示的是页号7和8
if($page+$pageoffset>$total_pages){
$start=$start-($page+$pageoffset-$end);//注意理解这一句
}
}
//显示页码
for($i=$start;$i<=$end;$i++){
//当前页页码上显示背景色
if($page==$i){
$page_banner .="<span class='current'>{$i}</span>";
}
//非当前页码显示
else{
$page_banner .= "<a href='".$_SERVER['PHP_SELF']."?p=" .$i . "'>{$i}</a>";
}
}
if($total_pages>$showPage&&$total_pages>$page+$pageoffset){
$page_banner .="...";
}
//两种情况下的尾页、下一页 的显示效果
if($page<$total_pages){
$page_banner .= "<a href='".$_SERVER['PHP_SELF']."?p=" .($page+1) . "'>下一页></a>";
$page_banner .= "<a href='".$_SERVER['PHP_SELF']."?p=$total_pages'>尾页</a>";
}else{
$page_banner .="<span class='disable'>尾页</span>";
$page_banner .="<span class='disable'>下一页></span>";
}
$page_banner .= "共{$total_pages}页,";
$page_banner .= "<form action='mypage.php' method='get'>";
$page_banner .= " 到第<input type='text' size=2 value='1' name='p'>页";
$page_banner .= "<input type='submit' value='确定'>";
$page_banner .= "</form>";
$page_banner .= "</div>";
echo $page_banner;
?>
</body>
</html>   
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 PHP怎么实现检索文件内容中存在关键字的文件? php 指定关键字对应数据条件显示 php 取出关键字 zblogphp关键词怎么添加 PHP在文中查找包含关键词的方法?? PHP 字符串关键字匹配 PHP 数组 怎么实现关键词查找 在PHP中创建数组的关键词是 PHP搜索关键字怎么写? php中的关键字是什么意思? PHp查找关键词 php关键字是什么意思?如数组中的key php动态网页构成的元素有哪些 PHP中怎么实现关键字搜索? PHP哪些是关键字,哪些是内置函数 PHP中所有的关键字有哪些? oppor11怎么进入系统模式 你好,R11怎么解锁 OPPO R11怎么正确充电方法 oppo r11怎么用的最新相关信息 php数组,关键字 404 Not Found PHP输入关键词后在数据库搜索并显示记录 LED汽车灯泡装上显码是怎么回事求解 LED灯解码是什么意思 Led[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}LED灯段码对应0-9,怎么对应啊,转换公式? 单片机点亮一盏led灯代码 怎样对led灯具地址码进行手动编号 led车灯解码器原理及作用 led帕灯地址码有A和D LED灯具DMX控制系统是对灯具是如何编码(地址)的... LED灯解码是什么意思? LED灯的HS编码是多少 LED投光灯遥控器码值是多少? 怎样知道led灯瓦数码 如何区别LED灯珠或芯片代码,有什么区别? LED汽车灯的解码是什么意思 LED灯具DMX控制器怎么给灯具写址编码 请问下LED灯的HS编码是多少? led灯具的编码规则 如何?