欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

php模糊查询技术

程序员文章站 2022-06-07 15:54:40
...

        查询可分为精确查询【返回结果有且仅有一条】

                        模糊查询【返回结果不确定】

        在下面的讲述中我们主要讲解模糊查询

        在生活中,我们身边有很多的信息源,我们需要筛选出与自己相关的信息,例如相同的兴趣爱好,来进行与自己的信息匹配。  这是在生活中的模糊查询的一个体现。在项目模糊查询中相对来说就更多了,例如web网页中的一个站内搜索,就是模糊查询的一个体现。如果你能很好的掌握这项技术,你就能做的比他做的更好或者相对更完美的一个搜索模块。这些都能体现此项技术的实用性。

        比如根据用户输入关键词进行相关用户查询,在程序方面需考虑两个方面即客户端,程序端。

                            php模糊查询技术
在上面的搜索框中输入a,通过点击查找用户按钮,搜索出上图结果,那么我们实现此的思路如下

                    php模糊查询技术

至于数据库,数据表(基础数据)的基础网页建立我们不在此细说!

  客户端提交关键词(非空),PHP后端获取提交的值,我们通过经常用的post来获取,若表单name属性(关键词)是username则  $huozhi=$_post['username'],获取值之后,接下来我们就是连接数据库(不详细赘述),我们以SQL语句 $sql="select * from 表 where username like '%{$huozhi}%'",通过mysql_query();来进行提交,再将返回遍历的结果放在一个数组中

  
<?php
$sql="select * from 表 where username like '%{$username}%'";
$result=mysql_query($sql);//提交
$users=array();
while($row=mysql_fetch_assoc($result)){//保持索引输出
	$row['username']=str_replace($huozhi, '<font color="red">'.$huozhi.'</font>',$row['username']);//高亮显示
	$users[]=$row; 
}
?>
<?php
if ($username) {
	echo '<h3>查询关键词<font color="red">.$username.</font>的结果</h3>';
	# code...
}
 if ($users) {
 	echo '<table width="500" border="1" cellpadding="5">';
 	echo '<tr bgcolor="orange"><th>用户名</th><th>邮箱</th><th>性别</th><th>爱好</th></tr>';
 	foreach ($users as $key => $value) {
 		echo '<tr>';
 		echo '<td>'.$value['username'].'</td>';
 		echo '<td>'.$value['email'].'</td>';
 		echo '<td>'.$value['sex'].'</td>';
 		echo '<td>'.$value['hobby'].'</td>'; 
 		echo '</tr>'; 
 	}

 	echo '</table>'; 
 }else{
 	echo "没有查询到相关用户";
 }
?>
到这里用户模糊查询就结束了,核心就是select语句。若有框架已有封装好的方法可以直接调用,这种方法是最原始的,可以尝试TP更方便!

  


相关标签: 模糊查询