关于查询,可以直接写在主页面上 来进行查询

首先,先建立一个表单

<form method="post" action="crud.php">
<table>
<tr>
<!-- <td>-->
<!-- 学号<input type="text" name="id">-->
<!-- </td>--> <td>
&nbsp;&nbsp;姓名<input type="text" name="name">
</td> <td>
&nbsp;&nbsp;性别
<select name="sex">
            <option value="">请选择</option>
<option value="1">男</option>
<option value="0">女</option>
</select>
</td> <td>
&nbsp;&nbsp;出生年月<input type="text" name="birth_start">——<input type="text" name="birth_end">
</td> <td>
&nbsp;&nbsp;班级<input type="text" name="class">
</td> <td>
<input type="submit" value="查一查">
</td>
</tr>
</table>
</form>

2、查询

if (!empty($_POST)){
// $id = $_POST['id'];
$name = $_POST['name'];
$sex = $_POST['sex'];
$birth_start= $_POST['birth_start'];
$birth_end = $_POST['birth_end'];
$class = $_POST['class'];

//1
// if (!empty($name)){
// $sql .= "and name like '%{$name}%'";
// } //2
// $sql .= !empty($id) ? "and Sno like '%{$id}%'" : ""; $sql .= !empty($name)? "and Sname like '%{$name}%' " : "";
$sql .= ($sex!="")? "and Ssex = '{$sex}' " : "";
if (!empty($birth_start)&&!empty($birth_end)){
$sql .= "and Sbirthday >'{$birth_start}' and Sbirthday <'{$birth_end}' ";
}
$sql .= !empty($class)? "and Class like '%{class}%' " : ""; }
$data = $db->query($sql)->fetch_all(); ?>

有两种写法,都可以

以上把id列隐藏了,可写可不写

测试一下:

1、打开主页

2、查一下都95033班的

3、点击查一查

4、成功,如果不放心可以多写几个条件,如下

查一下

5、成功^-^

php连接数据库增删改查----多条件查询的更多相关文章

  1. 【hbase】——Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询

    1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...

  2. (转)Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询

    1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...

  3. Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询

    1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...

  4. HBase之四--(1):Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询

    1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...

  5. SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学、字符串、日期时间)函数[转]

    SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学.字符串.日期时间)函数   --创建表格 create table aa ( UserName varchar(50 ...

  6. 【gridview增删改查】数据库查询后lodop打印

    ASP.NET中使用gridview可以很容易的把需要的数据动态显示在前台,还可以在表格里加入列进行增删改查,每次点击的时候重新加载数据,gridview也提供了分页等功能,还有一些模版让显示在前台的 ...

  7. 增删改查- 万能map- 模糊查询

    1.编写接口 2.编写对应的mapper种的sql语句 3.测试 接口 public interface UserDao { List<User> getUserList(); //根据I ...

  8. LINQ的增删改查写法&&组合查询

    .ToList();//返回一个集合,包含查到的所有值: .First();//返回查到的第一条数据,如果查不到会报错: .FirstOrDefault();返回查到的第一条数据,差不到返回一个nul ...

  9. JDBC 增删改查代码 过滤查询语句

    package test; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; i ...

随机推荐

  1. EF中 实现延迟加载 lazyload

    1.创建数据库 2.利用数据库 生成视图 生成2个实体类 和一个model1类 3.写代码 (1) 创建 上下文对象 (2) (3)查询结果 注释: 延迟加载的原因,因为我们操作数据库不会那么简单, ...

  2. Spring boot 集成 Swagger

    添加依赖包 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swa ...

  3. Python-程序模块化

    一.程序模块化 一个程序可能需要导入自己写的模块,或者需要导入.查找.修改文件等操作.当把程序移植到其他路径执行时,会因为模块或文件路径的变化而报错. 程序模块化,就是将整个程序(包含该程序需要用到的 ...

  4. Mybatis中的DataSource配置

    dataSource 的类型可以配置成其内置类型之一,如 UNPOOLED,POOLED,JNDI. 1.如果将类型设置成 UNPOOLED,MyBatis 会为每一个数据库操作创建一个新的连接,并关 ...

  5. 多重网格方法(Multigridmethod)

    原文链接 多重网格方法是解微分方程的方法.这个方法的好处是在利用迭代法收敛结果的时候速度特别快.并且,不管是否对称,是否线性都无所谓.它的值要思想是在粗糙结果和精细结果之间插值. 前面介绍了Gauss ...

  6. Java中的return this

    return this就是返回当前对象的引用(就是实际调用这个方法的实例化对象) 示例: /** * 资源url */ public HttpConfig url(String url) { urls ...

  7. 关于新项目上传远程库报错 non-fast-forward

    已有项目上传远程库会报错 non-fast-forward 首先使用命令行 git pull origin master --allow-unrelated-histories 之所以使用这个命令,是 ...

  8. 16、SpringBoot------整合MapStruct

    开发工具:STS 前言: 前端提交往后端的数据,一部分是不需要存入数据库当中的: 后端从数据库中取出的数据,一部分是不可以交给用户的: 那么,po面向的是DB,vo面向的是客户端, mapstruct ...

  9. securecrt颜色设置

    https://blog.csdn.net/zq710727244/article/details/53909801

  10. mybatis中oracle转mysql

    刚来公司实习,遇到的第一个任务就是这个,简单记录一下思路过程.人菜的很,没啥参考价值. 测试时: 将现有的oracle库转为mysql: 用的Navicat自带数据传输功能,简单粗暴 出现的问题: 1 ...