本文给大家分享的是使用php实现单条件以及多条件查询的代码及示例,非常实用,有需要的小伙伴可以参考下
单条件查询:
1.先要有一张表,显示出表中的数据:
<!doctype html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<table border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="200">编号</td>
<td width="200">姓名</td>
<td width="200">电话</td>
<td width="200" >分组</td>
</tr>
<?php
$db = new mysqli("localhost","root","12345678","heiheihei");
$sql = "select * from contacts";
$r = $db->query($sql);
//传值
while ($attr = $r->fetch_row())
{
echo " <tr>
<td>{$attr[0]}</td>
<td>{$attr[1]}</td>
<td>{$attr[2]}</td>
<td>{$attr[3]}</td>
</tr>";
}
?>
</table>
</body>
</html>
上图:
啥都没改的一张表
2.再来个from表单,让用户输入,点击查询:
<form action="shouye.php" method="post">
<p>
输入名字:<input type="text" name="name"/>
<input type="submit" value="查询"/>
</p>
</form>
如图:
3.建立关键字查询:
<?php
//实现两个逻辑
//1.如果没有post数据.查所有的
//2.如果有post数据.根据条件查
$db = new mysqli("localhost","root","12345678","heiheihei");
//连接数据库
$tj = " 1 = 1 ";
$name="";
//恒成立,如果没有写数据,那就让条件等于1=1,这个条件是查找所有的数据
//如果你写入数据,按照数据查
if(!empty($_post))
{
$name = $_post['name'];
$tj = " name like '%{$name}%'";
}
//将条件拼接到sql语句
$sql = "select * from contacts where {$tj}";
echo $sql;
//查出来
$r = $db->query($sql);
//传值
if($r)
//开始判断
{
//$attr已经接收到了值,现在只需要获取他的索引就行了
while ($attr = $r->fetch_row())
{
//关键字特殊查询
$str = str_replace($name,"<mark>{$name}</mark>",$attr[1]); //查找替换如ctrl+f
//substr_replace(); 在指定位置替换
//substr(); 截取字符串
$gname = "select gname from groups where gid='{$attr[3]}'";
//分组表中的gid,和我点击的
$nresult = $db->query($gname);
$gname = $nresult->fetch_row();
$nation = $gname[0];
echo " <tr>
<td>{$attr[0]}</td>
<td>{$str}</td>
<td>{$attr[2]}</td>
<td>{$nation}</td>
?>
图:
多条件查询:
前面照旧;
出了php的语句:
<?php
//实现两个逻辑
//1.如果没有post数据.查所有的
//2.如果有post数据.根据条件查
$db = new mysqli("localhost","root","12345678","heiheihei");
//连接数据库
$tj1 = " 1 = 1 ";
$tj2 = " 1 = 1 ";//两个条件的恒等
$name="";
//恒成立,如果没有写数据,那就让条件等于1=1,这个条件是查找所有的数据
//如果你写入数据,按照数据查
if(!empty($_post["name"])) //第一个条件的判断(用到了模糊查询)
{
$name = $_post['name'];
$tj1 = " name like '%{$name}%'";
}
if(!empty($_post["tel"]))
{
$tel = $_post["tel"];
$tj2 = "tel = '$tel'";
}
//将条件拼接到sql语句
$sql = "select * from contacts where {$tj1} and {$tj2}";
效果图:
这样:有几个条件就做几个条件变量,第一个条件不为空就执行的第一个条件,第二个条件不为空执行的第二个条件,两个都为空就是查寻所有的数据
以上就是本文的全部内容,希望对大家的学习有所帮助。
相关推荐:
php简单实现分页查询的方法
php实现分页查询的方法
php使用pdo下exec()函数实现查询执行后受影响行数的方法
以上就是php实现查询及多条件查询的详细内容。