0

我有一个表单,其中我使用二维数组作为字段名称。字段名称如下

我的表格[消息][]

我的表格[名称][]

我的表格[添加][]

这意味着有三个数组。每个数组里面都有数组。当我在输入值并提交它之后 var_dump 我的表单时。我得到了下面的二维数组结构。

array
  ''message'' => 
    array
      0 => string 'adnan' (length=5)
      1 => string 'khan' (length=4)
      2 => string 'salman' (length=6)
  ''name'' => 
    array
      0 => string 'khan' (length=4)
      1 => string 'kamran' (length=6)
      2 => string 'khan' (length=4)
  ''add'' => 
    array
      0 => string 'asad' (length=4)
      1 => string 'khan' (length=4)
      2 => string 'abrar' (length=5)

正如您所看到的关联数组。我想将消息、名称和添加的值存储在一个具有三个字段的数据库表中,以通过使用类似 foreach 的循环在单个查询中存储消息、名称和添加字段的值。当我使用此代码时

foreach($_REQUEST['myform'] as $val)
 foreach($val as $v)

  {
    echo $v;
  }

我得到了数组的所有值。但我想我无法将它保存到数据库表中

因为所有的值都在变量 $v 中。如何将消息存储在消息字段中,名称字段中的名称以及添加到数据库表中的添加字段中。

请指教。谢谢

4

2 回答 2

0
foreach($_REQUEST['myform'] as $field=>$val)
 // $field is the key
 foreach($val as $v)

  {
    echo $field . ' ' . $v;
  }

这将为您提供要使用的字段名称。我假设您已经知道如何将条目插入数据库。

于 2012-05-02T18:38:41.597 回答
0

首先确保消息、名称和添加数组的长度相等,然后您可以使用此代码访问所有值:

foreach($_REQUEST['myform'] as $val)
{
    for($i=0;$i<count($val['message']);$i++){
        echo $val['message'][$i].'<br/>';
        echo $val['name'][$i].'<br/>';
        echo $val['add'][$i].'<br/>';
    }
}
于 2012-05-02T18:46:53.560 回答