无法通过Jquery.post发送数组

时间:2015-09-06 08:53:31

标签: php jquery arrays post

所以,我有一个输入值数组:

<input type="text" placeholder="write your Question" id="question[]"  value="" />

我将通过此代码发送此输入:

    $.post("function.php",{Question:$("#question").serialize()},function(data){
        $("#construct").append(data);
        alert('done');
    });

但是当我尝试在PHP中使用这些值时,我有一些错误。

PHP(function.php):

$Question=htmlentities($_POST['Question'],ENT_QUOTES,"UTF-8");
//line 13
$Quiz->InsertQuestion($Q_id,$Question[0]);
//line 14
$Quiz->InsertQuestion($Q_id,$Question[1]);

错误说:

  

注意:未初始化的字符串偏移量:在第13行的E:\ program file \ program \ xampp \ htdocs \ QMS \ admin \ function.php中为

     

注意:未初始化的字符串偏移量:在第14行的E:\ progrram文件\ program \ xampp \ htdocs \ QMS \ admin \ function.php中为

提前感谢。

2 个答案:

答案 0 :(得分:1)

正如我所说,id="question[]"id="question"是不同的ID。 如果您要将项目作为数组发送,则应使用name的{​​{1}}属性:

[]

jquery的:

<input type="text" placeholder="write your Question" name="question[]"  value="" />
<input type="text" placeholder="write your Question" name="question[]"  value="" />

甚至// select all fields which names start with "question" {Question:$("[name^='question']").serialize()}

class

jquery的:

<input type="text" placeholder="write your Question" value="" class="question" />
<input type="text" placeholder="write your Question" value="" class="question" />

答案 1 :(得分:0)

将输入的ID从“问题[]”更改为“问题”。