php批量POST修改
这是一个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修改的更多相关文章
- SQL批量增加修改数据
insert into A表(字段1,字段2) select 字段1,字段2 From B表 [注:字段类型.字段数应相同] --批量进行修改ID值 declare @i int begin )) F ...
- ASP.NET MVC用存储过程批量添加修改数据
用Entity Framework 进行数据库交互,在代码里直接用lamda表达式和linq对数据库操作,中间为程序员省去了数据库访问的代码时间,程序员直接可以专注业务逻辑层的编写.但是对于比较复杂的 ...
- SQL批量提交修改业务
把你需要批量提交修改的东西在内存中修改完毕 然后执行以下代码 SqlConnection conn = new SqlConnection(ConnectionString);SqlDataAdapt ...
- hibernate 批量增加 修改 删除
4.2 Hibernate的批量处理 Hibernate完全以面向对象的方式来操作数据库,当程序里以面向对象的方式操作持久化对象时,将被自动转换为对数据库的操作.例如调用Session的delete ...
- mysql批量生成修改表和列注释语句
当我们在一个数据库修改完备注后,需要将其导致另一个服务器上的数据库中,需要生成批量执行语句,方便操作,注意用change 或modified 进行列的属性修改时,没有写全的话会造成其它属性的丢失,如 ...
- EF 批量 添加 修改 删除
1批量添加 db.T_Investigator.AddRange(list) 2批量删除 db.T_Investigator.RemoveRange(list) 3批量修改 for 循 ...
- ElasticSearch.net NEST批量创建修改删除索引完整示例
本示例采用Elasticsearch+Nest 网上查了很多资料,发现用C#调用Elasticsearch搜索引擎的功能代码很分散,功能不完整,多半是非常简单的操作,没有成型的应用示例.比如新增或修改 ...
- DOS和BAT批量提取修改文件名
DOS命令窗口:开始-cmd-回车,进入DOS命令窗口 案例一.获取文件名 dir 1.输入"文件所在盘",回车,如: d: 2.输入"cd 文件夹位置",回车 ...
- 基于JQuery easyui,gson的批量新增/修改和删除-servlet版
最近项目需要用到在页面进行批量操作,做了一些这方面的学习,参照网上的资料写了个小例子,记录一下: 准备 引入gson-2.6.2.jar,这里使用gson而不使用json-lib,原因是json-li ...
- 项目element-ui checkbox里面获取选中项 实现批量删除 修改
<el-table :data="tableData" stripe border style="width: 100%" @selection-chan ...
随机推荐
- 【leetcode】LCP 1. Guess Numbers
题目如下: 小A 和 小B 在玩猜数字.小B 每次从 1, 2, 3 中随机选择一个,小A 每次也从 1, 2, 3 中选择一个猜.他们一共进行三次这个游戏,请返回 小A 猜对了几次? 输入的gues ...
- node.js入门学习(三)--npm
一.npm介绍 1)npm:node package manager是node.js默认的以js编写的软件包管理系统 官网:www.npmjs.com 文档:docs.npmjs.com 2)提到np ...
- consul windows下搭建
起源 由于项目在linux部署,但是开发和测试是在windows下的,所以,暂时接触到consul,暂时也不会远程连接,只好在windows下安装consul 过程 去官网下载:https://www ...
- CSS 手动画热销小图标
效果图 HTML 标签 <div class="main"> <div class="small"> <div class=&qu ...
- CentOS查看进程端口号以及kill操作
查看端口: 使用 netstat -anp | grep 8090即:netstat –apn | grep 8090 查看进程:1.ps 命令用于查看当前正在运行的进程,grep 是 ...
- Java数据结构之排序---快速排序
快速排序是对冒泡排序的一种改进. 快速排序的基本思想: 假设我们以升序为例,它的执行流程可以概括为,每一趟选择当前所有子序列中的一个关键字(通常我们选择第一个,下述代码实现选择的也是第一个数)作为枢纽 ...
- 测试常用shell语句——数值,数组类型;函数创建
一.特殊类型的变量 shell下默认的变量类型为字符串类型 1,数值类型 如果进行数值运算,有这么几种方法 方法一: declare -i sum sum=+ echo $sum 方法二: sum=$ ...
- 简单地使用webpack进行打包
之前写的有些零散,现在一步步再重新写.记住: 如果你步骤对,但是始终没成功, 那么请不要烦心, 因为webpack版本4以上, 语义更加严格,命令有一些已经发生改变了,所以并不是你的问题! 一.确保已 ...
- 译-使用Scroll Snapping实现CSS控制页面滚动
特别声明,本文翻译自@alligatorio的Control Page Scroll in CSS Using Scroll Snapping一文,受限于译者能力,译文或存在不足,欢迎大家指出.如需转 ...
- ide破解
https://blog.csdn.net/yangying496875002/article/details/73603303