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 minixml详解
Jul 19 PHP
PHP中10个不常见却非常有用的函数
Mar 21 PHP
php编写一个简单的路由类
Apr 13 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
Jun 07 PHP
注册页面之前先验证用户名是否存在的php代码
Jul 14 PHP
zf框架的zend_cache缓存使用方法(zend框架)
Mar 14 PHP
PHP中变量引用与变量销毁机制分析
Nov 15 PHP
PHP编译安装时常见错误解决办法
May 28 PHP
一个PHP实现的轻量级简单爬虫
Jul 08 PHP
php cli配置文件问题分析
Oct 15 PHP
PHP curl模拟登录带验证码的网站
Nov 30 PHP
Laravel5.5以下版本中如何自定义日志行为详解
Aug 01 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实现的分页类定义与用法示例
2017/07/05 PHP
php二维码生成以及下载实现
2017/09/28 PHP
php解决crontab定时任务不能写入文件问题的方法分析
2019/09/16 PHP
jquery实现动态菜单的实例代码
2013/11/28 Javascript
js匿名函数的调用示例(形式多种多样)
2014/08/20 Javascript
js和jquery中循环的退出和继续下一个循环
2014/09/03 Javascript
jQuery基于ajax实现带动画效果无刷新柱状图投票代码
2015/08/10 Javascript
基于jquery实现智能提示控件intellSeach.js
2016/03/17 Javascript
微信小程序 radio单选框组件详解及实例代码
2017/01/10 Javascript
angularjs的select使用及默认选中设置
2017/04/08 Javascript
使用node.js对音视频文件加密的实例代码
2017/08/30 Javascript
初识 Vue.js 中的 *.Vue文件
2017/11/22 Javascript
vue遍历对象中的数组取值示例
2019/11/07 Javascript
viewer.js一个强大的基于jQuery的图像查看插件(支持旋转、缩放)
2020/04/01 jQuery
nodejs中内置模块fs,path常见的用法说明
2020/11/07 NodeJs
深入讲解Python中面向对象编程的相关知识
2015/05/25 Python
Python2和Python3.6环境解决共存问题
2018/11/09 Python
pycharm中使用anaconda部署python环境的方法步骤
2018/12/19 Python
对python 多线程中的守护线程与join的用法详解
2019/02/18 Python
Django中提示消息messages的设置方式
2019/11/15 Python
Python函数的默认参数设计示例详解
2019/12/01 Python
用python介绍4种常用的单链表翻转的方法小结
2020/02/24 Python
python中什么是面向对象
2020/06/11 Python
Python 多进程、多线程效率对比
2020/11/19 Python
Hotels.com加拿大:领先的在线住宿网站
2018/10/05 全球购物
台湾旅游网站:灿星旅游
2018/10/11 全球购物
be2台湾单身男女交友:全球网路婚姻介绍的领导品牌
2019/10/11 全球购物
大学军训自我鉴定
2013/12/15 职场文书
自我评价的写作规则
2014/01/06 职场文书
中学教师师德承诺书
2014/05/23 职场文书
财务负责人任命书
2014/06/06 职场文书
联片教研活动总结
2014/07/01 职场文书
初三英语教学计划
2015/01/23 职场文书
工作会议通知
2015/04/15 职场文书
领导干部学习心得体会
2016/01/23 职场文书
MySQL EXPLAIN输出列的详细解释
2021/05/12 MySQL