PHP:成功解决表单接收多个数组变量的问题

作者: 坎肩儿 分类: php代码 发布时间: 2010-03-24 06:26

在完善泰安靓号网的号码添加功能的时候,为了便于卖家快速发布号码,需要一次提交多个,这样的功能到代码里面就是要解决多个数组变量(不用数组,不知道有没有更好的方法呢)的问题了。

单个变量的接收还是很容易的,代码如下:

<input type “text” name=”title[]”>
<?php
$title = $_POST[“title”];
foreach($title as $value) {
 echo $value
}
?>

而这里要用到的是多个变量数组的接收,并插入数据库,谷歌走了,只能百度一下喽~

不过还好,总算找到了解决的方法,看下面的代码:

<form name=”form1″ method=”post” action=””>
  <p>
    <input type=”text” name=”a[]” value=”1″>
    <textarea name=”b[]”>a</textarea>
  </p>
  <p>  
    <input type=”text” name=”a[]” value=”2″>
    <textarea name=”b[]”>b</textarea>
  </p>
  <p>
    <input type=”text” name=”a[]” value=”3″>
    <textarea name=”b[]”>c</textarea>
    <input type=”submit” name=”Submit” value=”提交”>
  </p>
</form>
<?php
$a = $_POST[“a”];
$b = $_POST[“b”];
foreach($a as $key=>$value) {
 echo $value.$b[$key].”<br />”;
}
?>

关键地方:

foreach($a as $key=>$value) {
 echo $value.$b[$key].”<br />”;
}

相比第一个例子多了个$key,也就是除了把当前元素的值赋给$value外,当前元素的键值也会在每次循环中被赋给变量$key。键值可以是下标值,也可以是字符串。比如a[0]=1中的“0”,a[id]=”001″中的“id”.

应该还有更好的方法,不过我这里就够用了,希望有更好方法的人告知下喽~o(∩_∩)o…哈哈