这是一个thinkphp中的批量修改的案例:

如需要删除多项,或者同时修改多项记录

要点:

前端表单中name要加[],如:<input type="hidden" name="id[]" value="{$vo.id}">

后端接受如:$id = $_POST [id] [$i];     $i为for中的循环变量,当$i相同时可以使得$_POST [id] [$i]和$_POST [name] [$i]为一一对应;

前端表单:

<form name="form1" method="post" action="__GROUP__/Repair/updateList">
对所选操作:<input type="submit" value="保 存" class="btn btn-primary"> <br>
<table id="checkList" class="list table table-hover">
<tr>
<th scope="col"><input id="check" type="checkbox"
onclick="checkAll()" /> 全选</th>
<th scope="col">主题</th>
<th scope="col">校区</th>
<th scope="col">房间</th>
<th scope="col">报修人</th>
<th scope="col">联系电话</th>
<th scope="col">报修时间</th>
<th scope="col">审核</th>
<th scope="col">报修状态</th>
</tr>
<volist name="list" id="vo">
<tr>
<td><input type="checkbox" name="key" value="{$vo.id}">{$vo.id}<input type="hidden" name="id[]" value="{$vo.id}"></td>
<td>{$vo.topic}</td>
<td>{$vo.xiaoqu}</td>
<td>{$vo.room}</td>
<td>{$vo.pname}</td>
<td>{$vo.phone}</td>
<td>{$vo.create_time|date='Y-m-d H:i:s',###}</td>
<td><select name="check[]"><switch name="vo.check">
<case value="0">
<option value="0" selected="selected">未审核</option>
<option value="1">审核</option>
</case> <default />
<option value="0">未审核</option>
<option value="1" selected="selected">审核</option>
</switch></select></td>
<td><select name="status[]"><switch name="vo.status">
<case value="已修">
<option value="未修">未修</option>
<option value="任务已下">任务已下</option>
<option value="已修" selected="selected">已修</option>
</case> <case value="任务已下">
<option value="未修">未修</option>
<option value="任务已下" selected="selected">任务已下</option>
<option value="已修">已修</option>
</case> <default />
<option value="未修" selected="selected">未修</option>
<option value="任务已下">任务已下</option>
<option value="已修">已修</option>
</switch></select></td>
</tr>
</volist>
</table>
</form>

服务端处理:

    /**
* 批量修改状态
*/
public function updateList() {
$result = false;
for($i = 0; $i < count ( $_POST [id] ); $i ++) { $id = $_POST [id] [$i];
$check = $_POST [check] [$i];
$status = $_POST [status] [$i]; // 保存登录信息
$Repair = M ( 'Repair' );
$data ['id'] = $id;
$data ['check'] = $check;
$data ['status'] = $status;
$result = $Repair->save ( $data );
} if (false !== $result) {
$this->success ( '修改成功!' );
} else {
$this->error ( '修改失败!' );
}
}

php批量POST修改的更多相关文章

  1. SQL批量增加修改数据

    insert into A表(字段1,字段2) select 字段1,字段2 From B表 [注:字段类型.字段数应相同] --批量进行修改ID值 declare @i int begin )) F ...

  2. ASP.NET MVC用存储过程批量添加修改数据

    用Entity Framework 进行数据库交互,在代码里直接用lamda表达式和linq对数据库操作,中间为程序员省去了数据库访问的代码时间,程序员直接可以专注业务逻辑层的编写.但是对于比较复杂的 ...

  3. SQL批量提交修改业务

    把你需要批量提交修改的东西在内存中修改完毕 然后执行以下代码 SqlConnection conn = new SqlConnection(ConnectionString);SqlDataAdapt ...

  4. hibernate 批量增加 修改 删除

    4.2  Hibernate的批量处理 Hibernate完全以面向对象的方式来操作数据库,当程序里以面向对象的方式操作持久化对象时,将被自动转换为对数据库的操作.例如调用Session的delete ...

  5. mysql批量生成修改表和列注释语句

    当我们在一个数据库修改完备注后,需要将其导致另一个服务器上的数据库中,需要生成批量执行语句,方便操作,注意用change 或modified 进行列的属性修改时,没有写全的话会造成其它属性的丢失,如 ...

  6. EF 批量 添加 修改 删除

    1批量添加    db.T_Investigator.AddRange(list) 2批量删除    db.T_Investigator.RemoveRange(list) 3批量修改   for 循 ...

  7. ElasticSearch.net NEST批量创建修改删除索引完整示例

    本示例采用Elasticsearch+Nest 网上查了很多资料,发现用C#调用Elasticsearch搜索引擎的功能代码很分散,功能不完整,多半是非常简单的操作,没有成型的应用示例.比如新增或修改 ...

  8. DOS和BAT批量提取修改文件名

    DOS命令窗口:开始-cmd-回车,进入DOS命令窗口 案例一.获取文件名 dir 1.输入"文件所在盘",回车,如: d: 2.输入"cd 文件夹位置",回车 ...

  9. 基于JQuery easyui,gson的批量新增/修改和删除-servlet版

    最近项目需要用到在页面进行批量操作,做了一些这方面的学习,参照网上的资料写了个小例子,记录一下: 准备 引入gson-2.6.2.jar,这里使用gson而不使用json-lib,原因是json-li ...

  10. 项目element-ui checkbox里面获取选中项 实现批量删除 修改

    <el-table :data="tableData" stripe border style="width: 100%" @selection-chan ...

随机推荐

  1. CDOJ 1146 A - 秋实大哥与连锁快餐店 最小生成树 Prim算法 稠密图

    题目链接 A - 秋实大哥与连锁快餐店 Time Limit:3000MS     Memory Limit:65535KB     64bit IO Format:%lld & %llu S ...

  2. 模板_SPLAY

    #include<bits/stdc++.h> #define maxn 500005 //#define int long long using namespace std; inlin ...

  3. 搜狗微信采集 —— python爬虫系列一

    前言:一觉睡醒,发现原有的搜狗微信爬虫失效了,网上查找一翻发现10月29日搜狗微信改版了,无法通过搜索公众号名字获取对应文章了,不过通过搜索主题获取对应文章还是可以的,问题不大,开搞! 目的:获取搜狗 ...

  4. 今天跟outlook顶上牛了

    之前使用的是2007,然后之前弄东西的时候给升到2010了,之前就是把所有的邮件都保存到本地的文件中,我还想使用之前的文件,然后2010就是不好使,后来查了半天发现原来是需要手动创建账户,参考http ...

  5. linq/EF 使用技巧笔记

    先上图 1.linq列转行(如图从上到下,action_type即power字段),其实严格意义上来说,并不是linq,只是用了循环 List<NavigationDto> leaf = ...

  6. 我的docker笔记

    下面的链接全部是我在CSDN的关于docker的博文,我认为已经很是详细了,没有再次总结的必要性,特给出链接地址 docker容器技术基础 https://blog.csdn.net/zisefeiz ...

  7. Min_25筛初级应用:求$[1,n]$内质数个数

    代码 #include <bits/stdc++.h> #define rin(i,a,b) for(int i=(a);i<=(b);++i) #define irin(i,a,b ...

  8. Linux安装配置redis 、启动redis、redis设置密码

    由于间隔时间较长.机器的环境不同等等原因,所以每次安装redis的时候总是不那么顺利,所以这次我要做个笔记 文章大部分内容源于https://blog.csdn.net/gisredevelopmen ...

  9. 第一次试验报告&学习总结

    打印输出所有的"水仙花数",所谓"水仙花数"是指一个3位数,其中各位数字立方和等于该数本身.例如,153是一个"水仙花数". 试验代码: p ...

  10. 64位 Qt5.12 MySql 连接问题

    关于怎么检查Qt是否带MySql驱动 ,到Qt安装目录下 plugins\sqldrivers下寻找是否有qsqlmysql.dll文件      例如:F:\Qt\Qt5.9.6\5.9.6\msv ...