一. 将数据库数据访问封装成类

<?php
class DB
{public $host = "localhost";  //服务器地址public $uid = "root";        //用户名public $pwd = "123";         //密码//执行SQL语句,返回相应结果的方法//$sql代表要执行的SQL语句,$type代表SQL语句类型;0代表查询,1代表其他;$db代表要操作的数据库.function Query($sql,$type=0,$db="mydb")    //默认为查询语句,操作的数据库为"mydb".{//1.造连接对象$dbconnect = new MySQLi($this->host,$this->uid,$this->pwd,$db);//2.判断是否出错!mysqli_connect_error() or die("连接失败!");//3.执行SQL语句$result = $dbconnect->query($sql);//4.判断是查询语句还是其他语句,若是查询语句则返回二维数组,否则返回true or falseif($type==0){return $result->fetch_all();}else {return $result;}}
}

二. 单条件查询
<?php
include("DB.class.php");
$db=new DB();
$cx="";                     //先定义变量,方便下面使用
$value="";
if(!empty($_POST["name"])) //判断传过来的name值是否为空
{$name=$_POST["name"];$cx=" where Name like '%{$name}%'"; //查询字符串,注意where前面加空格,否则会出错$value=$name;
}
?>
<h1>汽车查询页面</h1>
<form action="" method="post"> <!--在哪个页面显示就提交到哪个页面,若为空就提交到当前页面--><div>请输入名称:     <input type="text" name="name" value="<?php echo $value; ?>" />&nbsp;<!--点击查询后,查询关键字仍显示,可将value值设为$_post["name"]--><input type="submit" value="查询" /></div>
</form>
<br />
<table width="100%" border="1" cellpadding="0" cellspacing="0"><tr><td>代号</td><td>汽车名称</td><td>价格</td><td>油耗</td><td>功率</td></tr>

<?php
$sql="select * from Car".$cx;
$attr=$db->Query($sql); //只传一个参数sql,默认$type=0,$db="mydb"
foreach($attr as $v)
{//处理Name,让关键字特殊显示,可用替换字符串//$rp="<mark>{$value}</mark>";                 //查询关键字加上Mark标签$rp="<span style='color:red'>{$value}</span>"; //查询关键字加上span标签,通过span标签更改样式$str=str_replace($value,$rp,$v[1]);            //将$v[1]中的$value用$rp替换成为新字符串存在变量$str里echo "<tr><td>{$v[0]}</td><td>{$str}</td><td>{$v[7]}</td><td>{$v[4]}</td><td>{$v[5]}</td></tr>";
}
?>
</table>

三. 多条件查询

先将多个条件设定为恒等式,再判断条件是否为空,再拼接查询语句,注意条件前面加空格

<h1>汽车查询页面</h1>
<?phpinclude("DB.class.php");$db=new DB();    $vn="";       //花括号里面的变量必须在外面先定义才能在下面继续引用,否则会报错:未定义变量$vb="";$tj1= "1=1";  //条件1的判断$tj2 = "1=1"; //条件2的判断if(!empty($_POST["name"]))  //判断: 若传过来的name不为空
    {$tj1=" Name like '%{$_POST['name']}%'";  //注意Name前面的空格$vn=$_POST["name"];}if(!empty($_POST["brand"]))   //有几个条件就判断几次
    {$tj2=" Brand ='{$_POST['brand']}'";  $vb=$_POST["brand"];}$cx=" where {$tj1} and {$tj2}";
?>
<form action="" method="post"><div>请输入名称:<input type="text" name="name" value="<?php echo $vn; ?>" /> &nbsp;系列: <input type="text" name="brand" value="<?php echo $vb ?>" /> &nbsp;<input type="submit" value="查询" /></div>
</form>
<br />
<table width="800"  border="1" cellpadding="0" cellspacing="0"><tr><td>代号</td><td>汽车名称</td><td>系列</td><td>价格</td><td>油耗</td><td>功率</td></tr>

    <?php$sql="select * from Car".$cx;$attr=$db->Query($sql);     //只传一个参数sql,默认$type=0,$db="mydb"foreach($attr as $v){//处理Name//$rp="<mark>{$value}</mark>";   //查询关键字加上Mark标签,突出关键字$rp1="<span style='color:red'>{$vn}</span>";   //查询关键字加上span标签,通过span标签更改样式$rp2="<span style='color:green'>{$vb}</span>";$str1=str_replace($vn,$rp1,$v[1]);$str2=str_replace($vb,$rp2,$v[2]);echo "<tr><td>{$v[0]}</td><td>{$str1}</td><td>{$str2}</td><td>{$v[7]}</td><td>{$v[4]}</td><td>{$v[5]}</td></tr>";    }?>
</table>   

 

转载于:https://www.cnblogs.com/xinghun/p/5483279.html

数据访问......单条件查询与多条件查询相关推荐

  1. MyBatis关联查询、多条件查询

    MyBatis关联查询.多条件查询 1.一对一查询 任务需求; 根据班级的信息查询出教师的相关信息 1.数据库表的设计 班级表: 教师表: 2.实体类的设计 班级表: public class Cla ...

  2. Mybatis基础:增删改查、模糊查询、多条件查询

    Mybatis基础:增删改查.模糊查询.多条件查询http://www.bieryun.com/3132.html 1.新建测试数据库,根据实体类属性创建 2.实体类 [java] view plai ...

  3. 众筹网站项目第四天之异步请求的分页查询和模糊条件查询(2)

    打开原教程视频 注:本人是渣渣,有错请谅解. 异步请求的分页查询和模糊条件查询 同步请求和异步请求的区别在实现登录功能时已经介绍过了,下图便是实现异步请求分页查询的时序图. 可以看出我们首先进行用户列 ...

  4. alin的学习之路(数据库篇:二)(select查询,where条件查询,order by排序,单行函数,多行函数,group by分组)

    alin的学习之路(数据库篇:二)(select查询,where条件查询,order by排序,单行函数,多行函数,group by分组) 1. SQL语句 1.1 sql语言类型 sql是一门独立的 ...

  5. java mongodb 多表关联查询,多条件查询,分页,排序

    前言: 由于最近项目赶,版本迭代快,不知道大BOSS从哪里听别人说MongoDB用来做关系型数据库好,而且速度快,性能高:听到这话的我,立马就反驳了回去:"MongoDB不支持事物" ...

  6. ssm框架中利用pagehelper分页,完成模糊查询与select条件查询

    ssm框架中利用pagehelper分页,完成模糊查询与select条件查询 一.问题分析 1.1 往期回顾 pagehelper分页 https://blog.csdn.net/Jia_Peng_T ...

  7. SQL之EXISTS子查询和IF条件查询

    不积跬步,无以至千里. " 今天给大家分享的是SQL的EXISTS子查询和IF条件查询语句. EXISTS EXISTS子查询 EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际 ...

  8. mongoTemplate的GroupOperation分组查询及Criteria条件查询的使用

    mongoTemplate的GroupOperation分组查询及Criteria条件查询的使用 GroupOperation: //此处类似于SQL中的groupBy,group("&qu ...

  9. 单条件求和和多条件求和以及条件求平均

    单条件求和 计算经管学院数学成绩之和 可以输入=sumif(学院列,"经管学院",数学成绩列) 求环境学院英语成绩之和 可以输入=sumif(学院列,随机点一个环境学院,英语列) ...

最新文章

  1. php动态语言静态化
  2. 38 JavaScript中的this指向问题
  3. php中RGB转十六进制、十六进制转RGB
  4. VUE iscroll(银联二维码,浩哥页面用过)
  5. Concert Tour(Uvalive 6853)
  6. mysql php 乱码问题_解决php与mysql中文乱码问题
  7. 微信运营:必须收藏的101条万能微信标题公式
  8. iBase4J项目笔记
  9. 移动端前端开发技术概况
  10. 对比修改过的两个BOM表
  11. W10虚拟机一开机电脑蓝屏重启
  12. 如何将域名和网站转入香港主机
  13. Android烂笔头
  14. 微信公众号开发工具汇总
  15. RS485学习(一)
  16. mysql 中手动设置事务提交
  17. Python OS模块和文件处理
  18. 转载:[5GC]5G LAN标准解读
  19. scala的子类调用父类的构造器的使用
  20. Aptana插件ZIP包下载方法

热门文章

  1. kali字典_kali黑客系统wpscan工具扫描wordpress漏洞入侵攻击测试教程
  2. 《JAVA核心技术》
  3. django 模型类的常见字段约束,以及filter 过滤和查询
  4. HDU 4487 Maximum Random Walk
  5. android深度探索 HAL及驱动开发 第八章
  6. EM Algorithm
  7. windows下使用MinGW+msys编译ffmpeg
  8. SendMessage函数的常用消息及其应用
  9. python向dict里添加_Python有条件地向Dict添加键
  10. 关于redis实现单点登录的一点思路