<form name="form1" method="post" action="index_ok.php"> <tr> <td>商品名称</td> <td>编号</td> <td>单价</td> <td>数量</td> <td>产地</td> <input name="data" type="hidden" value="<?php echo $data;?>"> </tr> <tr> <td><input name="sp_name[]" type="text" id="sp_name" size="15"></td> <td><input name="sp_number[]" type="text" id="sp_number" size="10"></td> <td><input name="price[]" type="text" id="price" size="8"></td> <td><input name="counts[]" type="text" id="counts" size="8"></td> <td><input name="address[]" type="text" id="address" size="15"></td> </tr> <input type="submit" name="submit" value="提交"> <input type="reset" name="reset" value="重置"> </form>
<?php $id=mysql_connect("localhost","root","password") or die('connection failed'.mysql_error()); if(mysql_select_db('mydatabase',$id)) echo ""; else echo('select db failed:'.mysql_error()); ?>
<?php session_start(); include("conn/conn.php"); if($submit==true){ for($i=0;$i<count($sp_name);$i++){ $path=$_POST["sp_name"][$i]; $path1=$_POST["sp_number"][$i]; $path2=$_POST["price"][$i]; $path3=$_POST["counts"][$i]; $path4=$_POST["address"][$i]; $query=mysql_query("insert into tb_products(sp_name,sp_number,price,counts,address,data) values('$path','$path1','$path2','$path3','$path4','$data');} if($query==true){ echo"提交成功"; else echo"提交失败";} } ?>
主要通过while, list(),each()函数来实理数据的批量更新,list()函数用于一次性为多个变量赋值,代码如下:
<?php session_start(); include("conn/conn.php");?> <form name="form1" method="post" action="index_ok.php"> <?php $query="select * from tb_users"; $result=mysql_query($query); if($result==true){ while($myrow=mysql_fetch_array($result)){ ?> <tr> <td><input name="<?php echo $myrow[id];?> type="checkbox" value="<?php echo $myrow[id]; ?></td> <td><?php echo $myrow[user];?></td> <td><?php echo $myrow[popedom];?></td> <td><?php echo $myrow[operation];?></td> </tr> <?php }} ?> <tr> <input type="submit" name="submit" value="激活"> <input type="submit" name="submit2" value="冻结"> </tr> </form>
<?php session_start(); include("conn/conn.php") if($submit=="激活"){ while(list($name,$value)=each($_POST)){ $result=mysql_query("update tb_user set operation='激活' where id='".$name."'"); if($result==true){ echo "<script> alert('激活成功');window.location.href='index.php';</script>";}} if($submit2=="冻结"){ while(list($name,$value)=each($_POST)){ $result=mysql_query("update tb_user set operation='冻结' where id='".$name."'"); if($result==true){ echo "<script> alert('冻结成功');window.location.href='index.php';</script>";}} } ?>
counts[]:这个在表单中是代表数组,如果你有10个表单那么我们name=counts[] 意思他们内个都是一样数组,知道这个是数组了就知道下面知道为什么会使用遍历了.
for或while:因为表单过来的是数组我们就可以遍历数组然后对数据进行保存了,如下代码:
while(list($name,$value)=each($_POST)){ 或
for($i=0;$i<count($sp_name);$i++){ 两个实现结果是一样的.
希望本文所述对大家的php程序设计有所帮助。