php查询及多条件查询


Posted in PHP onFebruary 26, 2017

单条件查询:

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>

上图:

php查询及多条件查询

啥都没改的一张表

2.再来个from表单,让用户输入,点击查询:

<form action="shouye.php" method="post">
  <div>
    输入名字:<input type="text" name="name"/>
    <input type="submit" value="查询"/>

  </div>

</form>

如图:

php查询及多条件查询

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的语句:

<?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读取目录下所有文件的代码
Jan 07 PHP
一个php导出oracle库的php代码
Apr 20 PHP
PHP乱码问题,UTF-8乱码常见问题小结
Apr 09 PHP
php中hashtable实现示例分享
Feb 13 PHP
Yii数据模型中rules类验证器用法分析
Jul 15 PHP
Thinkphp3.2.3分页使用实例解析
Jul 28 PHP
PHP实现原生态图片上传封装类方法
Nov 08 PHP
PHPMailer使用QQ邮箱实现邮件发送功能
Aug 18 PHP
laravel批量生成假数据的方法
Oct 09 PHP
laravel 修改.htaccess文件 重定向public的解决方法
Oct 12 PHP
解决laravel中日志权限莫名变成了root的问题
Oct 17 PHP
设定php简写功能的方法
Nov 28 PHP
php批量删除操作代码分享
Feb 26 #PHP
浅谈PHP的反射API
Feb 26 #PHP
CentOS 上搭建 PHP7 开发测试环境
Feb 26 #PHP
php封装的验证码类分享
Feb 26 #PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
Feb 25 #PHP
简单谈谈PHP中的trait
Feb 25 #PHP
laravel中命名路由的使用方法
Feb 24 #PHP
You might like
PHP无刷新上传文件实现代码
2011/09/19 PHP
浅谈PHP值mysql操作类
2016/06/29 PHP
javascript下4个跨浏览器必备的函数
2010/03/07 Javascript
JQuery select标签操作代码段
2010/05/16 Javascript
博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)
2013/03/24 Javascript
兼容主流浏览器的iframe自适应高度js脚本
2014/01/10 Javascript
JS获取字符串实际长度(包含汉字)的简单方法
2016/08/11 Javascript
jQuery EasyUI datagrid在翻页以后仍能记录被选中行的实现代码
2016/08/15 Javascript
js字符串引用的两种方式(必看)
2016/09/18 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
提高JavaScript执行效率的23个实用技巧
2017/03/01 Javascript
Vue.directive自定义指令的使用详解
2017/03/10 Javascript
详解react使用react-bootstrap当轮子造车
2017/08/15 Javascript
Node.js 使用流实现读写同步边读边写功能
2017/09/11 Javascript
浅谈node的事件机制
2017/10/09 Javascript
vue-cli常用设置总结
2018/02/24 Javascript
jQuery中复合选择器简单用法示例
2018/03/31 jQuery
Less 安装及基本用法
2018/05/05 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
itchat和matplotlib的结合使用爬取微信信息的实例
2017/08/25 Python
Python中的 sort 和 sorted的用法与区别
2019/08/10 Python
python通过txt文件批量安装依赖包的实现步骤
2019/08/13 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
使用python实现名片管理系统
2020/06/18 Python
python使用建议与技巧分享(二)
2020/08/17 Python
CSS3系列之3D制作方法案例
2017/08/14 HTML / CSS
日本著名的平价时尚女性购物网站:Fifth
2016/08/24 全球购物
酒店大堂副理的职责范文
2014/02/13 职场文书
信息技术毕业生自荐信范文
2014/03/13 职场文书
《新型玻璃》教学反思
2014/04/13 职场文书
信息管理与信息系统专业求职信
2014/06/21 职场文书
资源环境与城乡规划管理专业自荐书
2014/09/26 职场文书
CSS极坐标的实例代码
2021/06/03 HTML / CSS
深入理解Pytorch微调torchvision模型
2021/11/11 Python
Python接口自动化之文件上传/下载接口详解
2022/04/05 Python