您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
这篇文章将为大家详细讲解有关php中查询及多条件查询的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
单条件查询:
1.先要有一张表,显示出表中的数据:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <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"> <div> 输入名字:<input type="text" name="name"/> <input type="submit" value="查询"/> </div> </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中查询及多条件查询的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。