如何插入动态post数组php?

时间:2015-08-03 08:19:38

标签: javascript php jquery mysql arrays

很抱歉这很难解释,但我会按照我的意思尝试。

我有自定义条件的多个输入帖子,自定义条件可以尽可能多。

HTML

<input name="type[]" value="type 1">
    <input name="var[]" value="Var 1">
    <input name="var[]" value="Var 2">
    <input name="var[]" value="Var 3">
<input name="type[]" value="type 2">
    <input name="var[]" value="Var 1 for type 2">
    <input name="var[]" value="Var 2 for type 2">

输入名称类型[] 可以通过JQuery添加为自定义,也可以添加 var [] 但是如果添加了var [],它将作为数组插入在[]

类型下

我希望使用此数组结果将该值序列化到数据库

Array ( 
[0] => Array ( 
    [type 1] => Array ( 
        [0] => Array ( 
            [menu_name] => var 1
        ) 
        [1] => Array ( 
            [menu_name] => var 2
        ) 
        [2] => Array ( 
            [menu_name] => var 3
        ) 
    ) 
) 
[1] => Array ( 
    [Type 2] => Array ( 
        [0] => Array ( 
            [menu_name] => Var 1 for type 2
        )
        [1] => Array ( 
            [menu_name] => Var 2 for type 2
        )
    ) 
) 
)

但问题是,我不知道如何用 $ _ POST 语法插入该数组的逻辑,所以结果将像上面的数组结果一样

2 个答案:

答案 0 :(得分:0)

您需要此HTML结构才能发布数据:

<input name="type[1][var][1]" value="type 1 var 1">
<input name="type[1][var][2]" value="type 1 var 2">
<input name="type[1][var][3]" value="type 1 var 3">
<input name="type[2][var][1]" value="type 2 var 1">
<input name="type[2][var][2]" value="type 2 var 2">

答案 1 :(得分:0)

只需将大括号[]添加到输入名称

即可
<input name="type[0]" value="type 1">
<input name="type[0][var][]" value="Var 1">
<input name="type[0][var][]" value="Var 2">
<input name="type[0][var][]" value="Var 3">
<input name="type[1]" value="type 2">
<input name="type[1][var][]" value="Var 1 for type 2">
<input name="type[1][var][]" value="Var 2 for type 2">

修改

$types = $_POST['type'];
$types[0]['var'][1];