【问题标题】:How to insert dynamic post array php?如何插入动态帖子数组php?
【发布时间】:2015-10-25 06:43:07
【问题描述】:

很抱歉,这很难解释,但我会尽我所知。

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

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">

对于输入名称 type[] 可以通过 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 语法插入该数组的逻辑,因此结果将与上面的数组结果一样

【问题讨论】:

  • 试过嵌套for循环?
  • 你应该改变html结构。
  • @phplover 但如何将值 var[] 移动到 type[] 数组下?
  • Vars 输入名称改为type[var]

标签: javascript php jquery mysql arrays


【解决方案1】:

只需在输入名称中添加大括号 []

<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];

【讨论】:

  • 顺便说一句,如何获得该职位价值?对于类型 = $_POST['type']; var = $_POST['var'];我不确定 var
  • 你好我试过了,结果是我错过了类型值,我打印了结果它显示除了类型值之外的所有内容,我使用 $variable = serialize($_POST['type'] );插入数据库,我错了吗?
  • 第一个类型值是$_POST['type'][0],因为$_POST['type'] 是一个数组
【解决方案2】:

你需要这个 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">

【讨论】:

  • 当然。如果有任何问题,请告诉我们。
  • 你的答案很好,但最完整的答案在上面,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-07-09
  • 1970-01-01
  • 1970-01-01
  • 2012-06-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多