PHP 批量修改多条记录的Sql语句写法

PHP 批量修改多条记录的Sql语句写法,第1张

另一个思路你试试:

html:

<input type="text" name="A[]" />

<input type="text" name="B[]" />

<input type="hidden" name="ids[]" value="{$id}" />

php:

<?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)

    }

1)首先你会不会修改一个数据,是真正明白 *** 作的修改?

2)针对两个数据库各建一个连接,$link1和$link2,然后对后面 *** 作数据库的 *** 作复制一份,采用不同的连接做输入参数,这样就能同时修改两个数据库了。

楼主贴出的代码是主要代码不是完整代码,以下是对你贴出代码的修改,接收数组并批量更新

接收数据格式形如:

array(

0=>array(

'id' =>1,

'title'=>'标题1'

'url'=>'...'

),

1=>array(

'id' =>1,

'title'=>'标题1'

'url'=>'...'

),

)

注意在原来的基础上加了更新条件id,不加的话是会更新全部的。

A页面代码:

<?php

$exec="select * from focusimg"

$result = mysql_query($exec,$link)

$i=0

while($pt=mysql_fetch_array($result)){

?>

<tr onmouseover="this.className='admTr'" onmouseout="this.className=''">

<td width="17%" align="right">标题<?php echo $pt['id']?>:<input name="<?php echo "focusimg[$i][id]"?>" value="<?php echo $pt['id']?>" type="hidden"/></td>

<td><input name="<?php echo "focusimg[$i][title]"?>" type="text" id="textfield" value="<?php echo $pt['title']?>" size="30" /></td>

<td width="17%" align="right">链接<?php echo $pt['id']?>:</td>

<td><input name="<?php echo "focusimg[$i][url]"?>" type="text" id="textfield" value="<?php echo $pt['url']?>" size="30" /></td>

</tr>

<?php

$i++

}

?>

B页面代码:

<?php

include 'conn.php'

$focusimg=$_POST['focusimg']

foreach($focusimg as $k=>$v) {

$exec="update chips set title='{$v[title]}',url='{$v[url]}' where id='{$v[id]}'"

mysql_query($exec, $link)

}

mysql_close($link)

echo "edit OK!"

?>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9424301.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存