从多个具有相同名称的输入中获取数据

时间:2018-09-04 17:13:39

标签: php jquery html

我的表格很大,我已经通过ajax将这些数据传递给php。我正在使用jQuery serialize函数将数据保存在字符串中。 这是我的代码

var form_data = jQuery(this).serializeArray();
form_data = JSON.stringify(form_data);

在php中,我已通过json_decode函数将其转换为数组。

这是该数组的一个示例

Array
(
[0] => Array
(
    [name] => fname
    [value] => MyFirstName
)

[1] => Array
(
    [name] => lname
    [value] => MyLastName
)
 [2] => Array
(
    [name] => institution_name[]
    [value] => institution1
)

[3] => Array
(
    [name] => degree_name[]
    [value] => Graduated
)
[4] => Array
(
    [name] => institution_name[]
    [value] => institution2
)
[5] => Array
(
    [name] => degree_name[]
    [value] => Graduating
)
)

我能够在循环中获取其他输入字段,但是很难从具有相同名称的输入字段中获取值。例如,在上面的示例中,我们有度名称和机构名称多次。 感谢您的建议,因为我是php新手。

2 个答案:

答案 0 :(得分:0)

PHP处理具有相同名称的多个表单输入的方法是将它们转换为数组。

这就是它们名称中的1 2 3 4 5 6 7 8 --> 1 2 3 4 5 6 7 8 9 10 11 12 9 10 11 12 后缀所表示的。

因此,要访问它们的各种值(即该名称的每个字段),请查看数组内部。

[]

答案 1 :(得分:0)

我曾经用过foreach

   $new = array();
    foreach ($_POST as $key => $value) {
        $new[$key] => $value;
    }

    var_dump($new);