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 Undefined index和Undefined variable的解决方法
Mar 27 PHP
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
Jun 11 PHP
PHP中SESSION使用中的一点经验总结
Mar 30 PHP
php动态实现表格跨行跨列实现代码
Nov 06 PHP
zend framework配置操作数据库实例分析
Dec 06 PHP
PHP中shuffle数组值随便排序函数用法
Nov 21 PHP
php jsonp单引号转义
Nov 23 PHP
PHP制作百度词典查词采集器
Jan 29 PHP
PHP编写RESTful接口
Feb 23 PHP
php curl 模拟登录并获取数据实例详解
Dec 22 PHP
PHP实现RSA签名生成订单功能【支付宝示例】
Jun 06 PHP
PHP实现简单的模板引擎功能示例
Sep 02 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
用Zend Encode编写开发PHP程序
2006/10/09 PHP
为PHP初学者的8点有效建议
2010/11/20 PHP
php的list()的一步操作给一组变量进行赋值的使用
2011/05/18 PHP
浅谈php serialize()与unserialize()的用法
2013/06/05 PHP
PHP实现电商订单自动确认收货redis队列
2017/05/17 PHP
全面解析PHP面向对象的三大特征
2017/06/10 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
2018/02/06 PHP
javascript入门·图片对象(无刷新变换图片)\滚动图像
2007/10/01 Javascript
jQuery学习笔记之基础中的基础
2015/01/19 Javascript
javascript实现日期按月份加减
2015/05/15 Javascript
jquery实现隐藏在左侧的弹性弹出菜单效果
2015/09/18 Javascript
Bootstrap中的表单验证插件bootstrapValidator使用方法整理(推荐)
2016/06/21 Javascript
基于vue监听滚动事件实现锚点链接平滑滚动的方法
2018/01/17 Javascript
webgl实现物体描边效果的方法介绍
2019/11/27 Javascript
详解vue或uni-app的跨域问题解决方案
2020/02/21 Javascript
详解Vue串联过滤器的使用场景
2020/04/30 Javascript
[02:51]DOTA2 2015国际邀请赛中国区预选赛第一日战报
2015/05/27 DOTA
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
python实现类的静态变量用法实例
2015/05/08 Python
Python中定时任务框架APScheduler的快速入门指南
2017/07/06 Python
python抓取网页内容并进行语音播报的方法
2018/12/24 Python
Python中extend和append的区别讲解
2019/01/24 Python
Python eval的常见错误封装及利用原理详解
2019/03/26 Python
python字典和json.dumps()的遇到的坑分析
2020/03/11 Python
使用Python项目生成所有依赖包的清单方式
2020/07/13 Python
matplotlib基础绘图命令之bar的使用方法
2020/08/13 Python
Clarks鞋法国官方网站:英国其乐鞋品牌
2018/02/11 全球购物
垃圾分类的活动方案
2014/08/15 职场文书
民间借贷协议书范本
2014/10/01 职场文书
加强作风建设工作总结
2014/10/23 职场文书
审计局2014法制宣传日活动总结
2014/11/01 职场文书
委托公证书样本
2015/01/23 职场文书
运动会宣传稿50字
2015/07/23 职场文书
文艺部部长竞选稿
2015/11/21 职场文书
2016年教师师德师风心得体会
2016/01/12 职场文书
go 原生http web 服务跨域restful api的写法介绍
2021/04/27 Golang