php批量修改数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php批量修改数据相关的知识,希望对你有一定的参考价值。
比如mysql查询出10条数据,
1 a
2 b
3 c
我现在要修改他们,可以修改a 也可以修改b 也可以修改c,同时修改,不是直接set这个字段等于相同的值,我是要每个字段都可以修改成不同,一次性提交
$sql = "update ".$table." set ";
$total = count($arr);
$i=1;
foreach($arr as $k=>$v)
$sql .= $k."=".$v;
if($i<$total)
$sql .= ",";
$i++;
return $sql;
echo updatecols("table1",array('col1'=>'123','col2'=>'345')); 参考技术B 查询结果是个数组
数组数值会改吧
改完后执行一次updata不就好了...追问
就是form表单提交过去不会,我的方法只能提交最后一个ID,不能都提交过去,望指点...
追答输出表单不说
表单提交只要把要修改后的字段名和数值传给处理页面
处理页面查询到结果后生成数组
接受传来的值
修改结果数组然后updata就好了
=2";
$result=mysql_query($sql);
while($row=mysql_fetch_array($result))
echo "";
?>
这是我的提交表单,处理页面应该的处理方法应该如何写,
最好传值连数据库中的id一起传 方便定位修改
追问嗯,ID我懂,我传过去看,就只看到最后的一条,前面的没有,就没有办法处理,可否帮谢谢处理页面
追答怎么可能post过去三个同名不同值的东西捏...同名要区分 不然怎么request....
PHP 批量修改多条记录的Sql语句写法
数据库是mysql;字段分别为id ,a ,b 如图1;前台显示如图2,a和b的值分别循环显示在input中,可编辑;图3是部分代码,我给input的name设定成了a或者b加id,以便于区分每个input;图4那里我应该怎么写update的sql语句,才能同时提交修改多条记录的内容;实际记录数量不止四条。求好心人帮写一个完整的update部分的demo;同时也请复制粘贴帝们手下留情,知道问题推送机会不多,有了回答就会停止推送,求原创好心人
参考技术A另一个思路你试试:
html:
<input type="text" name="A[]" /><input type="text" name="B[]" />
<input type="hidden" name="ids[]" value="$id" />
php:
$a = $_POST['A'];
$b = $_POST['B'];
$ids = $_POST['ids'];
foreach($a as $k => $v)
$sql = "update abc set a='$v', b='$b[$k]' where id='$ids[$k]'";
mysql_query($sql);
本回答被提问者采纳
以上是关于php批量修改数据的主要内容,如果未能解决你的问题,请参考以下文章