首页 >后端开发 >php教程 >请问多条更新记录提交如何写SQL

请问多条更新记录提交如何写SQL

WBOY
WBOY原创
2016-06-23 14:39:481023浏览

先上代码:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script><script src="js/slide_up.js"></script><meta charset="UTF-8"><?phprequire("inc/pdo.php");$select=$dbc->prepare("select id,slide_name,slide_href,slide_img from zt_slide");$select->execute();while($row=$select->fetch()){ ?>焦点图管理<form method="post" action="12.php"enctype="multipart/form-data"><input type="text" id='id' name="id[]" value="<?php echo $row['id'];?>"><br/>名称<input type='text' id='slide_name' name="slide_name[]" value="<?php echo $row['slide_name'];?>"><br/>图片上传<input type='text' id='img'name="img[]" value="<?php  echo $row['slide_img']; ?>"><input type="file" id="file"name="file[]"><br/>文章地址<input type='text' id='slide_href' name="slide_href[]" value="<?php  echo $row['slide_href']; ?>"><br/></div><?php }?><div id='insert_zt' class='slide'><input type="hidden" name="action" value="focus">名称<input type='text' id='slide_name' name="slide_name[]" ><br/>图片上传<input type='file' id='file' name="file[]"><br/>文章地址<input type='text' id='slide_href' name="slide_href[]"><br/></div><button id="insert">增加一项</button><input type="submit" id="submit"></form>


提交到12.php
<?php$id=$_POST['id'];$name=$_POST['slide_name'];$img=$_POST['img'];$href=$_POST['slide_href'];foreach($id as $id1)    {        echo $id1."<br>";    }    foreach($name as $slide_name)    {        echo $slide_name."<br>";    }	foreach($img as $slide_img)    {        echo $slide_img."<br>";    }	foreach($href as $slide_href)    {        echo $slide_href."<br>";    }//$sql="UPDATE tab SET  slide_name=$slide_name,img=$slide_img, WHERE id = $id"; 	请问SQL应该怎么写??>





请问如果在12.php 获取到多条记录后如何更新表


回复讨论(解决方案)

主要要看表单提交的数据了

你可以将接受到的数据打印出来看看   print_r($_POST);

一般 如果表单中name="xxx[]"  这样的形式的话返回应该是个数组。 也就是说 $id=$_POST["id"];
取到的值是一个数组  你可以用遍历数组的形式更新数据,每一条记录一个update 语句。

类似于这样哈,没有测试 大致上就是这样了

$id=$_POST['id'];
$name=$_POST['slide_name'];
$img=$_POST['img'];
$href=$_POST['slide_href'];
$cnt=count($id);
for($i=0;$i++;$i
  $sql="UPDATE tab SET  slide_name='".$slide_name[$i]."',img='".$slide_img[$i]."', WHERE id = ".$id[$i].";    


}




 

主要要看表单提交的数据了

你可以将接受到的数据打印出来看看   print_r($_POST);

一般 如果表单中name="xxx[]"  这样的形式的话返回应该是个数组。 也就是说 $id=$_POST["id"];
取到的值是一个数组  你可以用遍历数组的形式更新数据,每一条记录一个update 语句。

类似于这样哈,没有测试 大致上就是这样了

$id=$_POST['id'];
$name=$_POST['slide_name'];
$img=$_POST['img'];
$href=$_POST['slide_href'];
$cnt=count($id);
for($i=0;$i++;$i
  $sql="UPDATE tab SET  slide_name='".$slide_name[$i]."',img='".$slide_img[$i]."', WHERE id = ".$id[$i].";    


}




  谢谢你

给表单的text加个标示,取值的时候,区分参数即可。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn