1.给多条件查询,添加条件

<h1>新闻信息查看</h1>
<?php
$tiaojian1=" 1=1";
$tiaojian2=" 1=1";
$title=""; //为了下面foreach中能够取到这个变量,所以在外边定义一下。
$author="";
if(!empty($_POST['title']))
{
$title=$_POST['title'];
$tiaojian1=" title like '%{$title}%'";
}
/*else
{
echo "<script> alert('请输入');</script>"; //如果输入的是空,可以做一个弹窗进行提示
}*/ if(!empty($_POST['author']))
{
$author=$_POST['author'];
$tiaojian2=" author like '%{$author}%'";
} ?>

2.创建表单

<div><form action="" method="post">标题:<input type="text" name="title" value="<?php echo $title; ?>">
作者:<input type="text" name="author" value="<?php echo $author; ?>"> <!--输入关键字后文本框中,需要给文本框添加一个value值,value="<?php echo $title; ?>"-->
<input type="submit" value="查询"></form><form action="fabu.php">
<input type="submit" value="添加新闻">
</form>
</div>

3.创建显示区域

<form action="piliangshanchu.php" method="post">
<table width="95%" border="1" cellpadding="0" cellspacing="0" align="center">
<tr>
<td><input type="checkbox" onclick="quanxuan(this)">标题</td> <!--在标题栏添加一个复选框-->
<td>作者</td>
<td>来源</td>
<td>内容</td>
<td>发布时间</td>
<td>删除</td>
<td>修改</td>
</tr>
<?php $db=new MySQLi("localhost","root","123","test1");
mysqli_connect_error()?"连接失败":"";
$sql="select * from news where {$tiaojian1} and {$tiaojian2}";
echo $sql; //输出语句看看结果
$result=$db->query($sql);
$attr=$result->fetch_all();
foreach($attr as $v)
{
/*$str=str_replace($title,"<mark>{$title}</mark>",$v[1]); //str_replace进行替换,添加mark标签,对关键字进行特殊显示*/
$str=str_replace($title,"<span style='color:red;'>{$title}</span>",$v[1]); //还可以通过添加<span>标签,改span的color
echo "<tr><td><input type='checkbox' value='{$v[0]}' name='sc[]' class='xuanzhong'/>{$str}</td><td>{$v[2]}</td><td>{$v[3]}</td><td>{$v[4]}</td><td>{$v[5]}</td><td><a href='shanchu.php?ids={$v[0]}' onclick=\"return confirm('确认删除嘛')\">删除</a></td><td><a href='xiugai.php?ids={$v[0]}'>修改</a></td></tr>"; //重点:进行复选框多选时候,name的值要用sc[]数组接收
} ?>
</table>
<div><input type="submit" value="批量删除"></div>
</form>

4.通过标题栏的复选框状态,对下面的复选框进行多选,用js

<script type="text/javascript">
function quanxuan(a)
{
var ck=document.getElementsByClassName("xuanzhong");
for(var i=0;i<ck.length;i++)
{
if(a.checked) //判断a的选中状态
{
ck[i].setAttribute("checked","checked");//设置添加属性
}
else
{
ck[i].removeAttribute("checked");//移除属性
}
} } </script>

5.批量删除的处理界面

<?php
if(!empty($_POST['sc'])) //通过上面复选框的选中值,进行提取,提取出来是数组的形式
{
$attr=$_POST['sc']; //放到一个数组中
$db=new MySQLi("localhost","root","123","test1");
mysqli_connect_error()?"连接失败":"";
/*foreach($attr as $v)
{
$sql="delete from news where ids='{$v}'";
if($result=$db->query($sql))
{
header("location:main.php");
}
else
{
echo "删除失败";
}
}*/
$atr=implode("','",$attr); //通过implode函数,把数组合并成一个字符串,为下面的sql语句形成条件语句 条件语句in('','','','')这样的形式
$sql="delete from news where ids in('{$atr}')";
if($result=$db->query($sql))
{
header("location:main.php");
}
else
{
echo "删除失败";
} }

php部分---对数据的多条件查询,批量删除的更多相关文章

  1. mysql常用基础操作语法(五)--对数据的简单条件查询【命令行模式】

    1.单条件查询:select 字段名 from tablename where 条件: 2.简单多条件查询,使用&&或者between and等: 3.is null和is not n ...

  2. 根据子查询批量删除的sql语句

    delete  zi_provider_sa a where a.scheme_id in (select t.Id from zi_provider_scheme t where t.prov_id ...

  3. 第六部分 数据搜索之使用HBASE的API实现条件查询

    题目 使用HADOOP的MAPReduce,实现以下功能: (1)基于大数据计算技术的条件查询:使用mapreduce框架,实现类似Hbase六个字段查询的功能 (2)时段流量统计:以hh:mm:ss ...

  4. 基于Solr的HBase多条件查询测试

    背景: 某电信项目中采用HBase来存储用户终端明细数据,供前台页面即时查询.HBase无可置疑拥有其优势,但其本身只对rowkey支持毫秒级 的快 速检索,对于多字段的组合查询却无能为力.针对HBa ...

  5. sql server中的大数据的批量操作(批量插入,批量删除)

    首先我们建立一个测试用员工表 ---创建一个测试的员工表--- create table Employee( EmployeeNo int primary key, --员工编号 EmployeeNa ...

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

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

  7. C# winform窗体设计-通过条件查询数据

    在winform 数据库设计中,有时候需要通过条件查询对应的数据,并且将数据显示在文本框(or 富文本框)中,下面,小编将讲述通过一个条件: 首先,我们需要对数据库建立连接,并且执行数据库命令,在此之 ...

  8. Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据

    Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据 1. 1. 配置条件字段@Conditional 1 1 2. 2. 配置条件字段 ...

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

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

随机推荐

  1. 微信支付调用JSAPI缺少参数:timeStamp

    一般是安卓没问题,苹果会出现这样的问题,弹出下面这样的提示,如果你也是这样,那就恭喜你,现在,你找到解决的方法了 请看红色框框的timeStamp(图片有点小,可以鼠标右键打开图片 查看) 请注意,这 ...

  2. 从QQ网站中提取的纯JS省市区三级联动

    在 http://ip.qq.com/ 的网站中有QQ自己的JS省市区三级联动 QQ是使用引用外部JS来实现三级联动的.JS如下:http://ip.qq.com/js/geo.js <!DOC ...

  3. Delphi的TListView控件拖放选定行操作

    http://www.tansoo.cn/?p=401 Delphi的TListView控件拖放选定行操作的例子,效果图如下:TListView控件拖动选定行到指定位置 具体实现步骤: 一.新建一个D ...

  4. C++-高效的swap

    原始版本: template<typename T> void swap(T& a, T& b) { T tmp(a); a = b; b = tmp; } 此版本不重视效 ...

  5. 常见的Web负载均衡方法

    用户手动选择 通过在主站首页入口提供不同线路,不同服务器链接的方式,来实现负载均衡.在一些提供下载业务的网站中比较常见,如:华军软件园. DNS轮询 大多域名注册商都支持对同一主机名添加多条A记录,这 ...

  6. iOS 下如果存在UIScrollerView 使用UIScreenEdgePanGestureRecognizer实现侧滑效果失效的问题

    当你在使用UIScreenEdgePanGestureRecognizer手势实现侧滑的时候,如果后期你导航控制器push出的界面中包含UIScrollerView,这个时候你会发现,侧滑效果无法实现 ...

  7. C++质因式分解

    分解质因数是将一个数差分成为几个质数相乘,本函数n初始取2 void prim(int m, int n) { if (m > n) { while (m%n) n++; m/=n; prim( ...

  8. c# access插入null值

    c# 插入access数据库 提示错误: Parameter @DeviceLocation has no default value. 参数@DeviceLocation 的有没有默认值. Stri ...

  9. 知道创宇CTO杨冀龙:网络安全人才决定行业格局

    去年的时候,我曾经在团队内部分享了一个“网络安全人才迁徙图”,被圈子里的同行广为传播.几乎所有行业的安全人士都表示:国内网络安全行业人才资源情况并不乐观——有着10年以上网络安全行业经验的核心安全人才 ...

  10. Ubuntu 14.10 下awk命令详解

    简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再 ...