Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
只有最后一个文本输入数组发送到php处理脚本_Php_Html_Codeigniter_Textinput - Fatal编程技术网

只有最后一个文本输入数组发送到php处理脚本

只有最后一个文本输入数组发送到php处理脚本,php,html,codeigniter,textinput,Php,Html,Codeigniter,Textinput,我正在尝试使用jquery为项目动态添加字段。我的问题是,当我将表单发送到处理脚本并对$\u POST['item']执行print\r()时,它只列出最后一个数组 这是我的密码: <div class="itemAdd row"> <div class="span4"> <p>Item Number: <br /><inp

我正在尝试使用jquery为项目动态添加字段。我的问题是,当我将表单发送到处理脚本并对$\u POST['item']执行print\r()时,它只列出最后一个数组

这是我的密码:

<div class="itemAdd row">
                            <div class="span4">
                                <p>Item Number: <br /><input class="span4" type="text" name="item[itemNumber]" /></p>
                                <p>Status: <br />
                                <select name="item[status]" class="span4">
                                    <option value="enabled" selected="selected">Enabled</option>
                                    <option value="disabled">Disabled</option>
                                    <option value="damaged">Damaged</option>
                                </select>
                                </p>
                            </div>
                            <div class="span4">
                                <p>Item Notes:<br /><textarea class="span4" style="height:100px;" name="item[notes]"></textarea></p>
                            </div>
                            <div class="clearfix"></div>
                            <hr />
                        </div>

项目编号:

状态:
启用 残废 损坏

项目注释:


此按钮可添加新字段:

<a href="#" class="btn btn-small btn-primary" id="addItem"><i class="icon-plus icon-white"></i> Add Item</a>
<script>
//Add Items
$('a#addItem').on('click', function(event) {

    event.preventDefault();
    $('#productItems').append('<div class="itemAdd row"><div class="span4"><p>Item Number: <br /><input class="span4" type="text" name="item[itemNumber]" /></p><p>Status: <br /><select name="item[status]" class="span4"><option value="enabled" selected="selected">Enabled</option><option value="disabled">Disabled</option><option value="damaged">Damaged</option></select></p></div><div class="span4"><p>Item Notes:<br /><textarea class="span4" style="height:100px;" name="item[notes]"></textarea></p></div><div class="clearfix"></div><hr /></div>');

});

以下是添加新字段的jquery:

<a href="#" class="btn btn-small btn-primary" id="addItem"><i class="icon-plus icon-white"></i> Add Item</a>
<script>
//Add Items
$('a#addItem').on('click', function(event) {

    event.preventDefault();
    $('#productItems').append('<div class="itemAdd row"><div class="span4"><p>Item Number: <br /><input class="span4" type="text" name="item[itemNumber]" /></p><p>Status: <br /><select name="item[status]" class="span4"><option value="enabled" selected="selected">Enabled</option><option value="disabled">Disabled</option><option value="damaged">Damaged</option></select></p></div><div class="span4"><p>Item Notes:<br /><textarea class="span4" style="height:100px;" name="item[notes]"></textarea></p></div><div class="clearfix"></div><hr /></div>');

});

//添加项目
$('a#addItem')。在('click',函数(事件){
event.preventDefault();
$(“#productItems”)。追加(“项目编号:

状态:
启用禁用禁用禁用禁用禁用禁用禁用禁用状态:
项目注释:


”); });

您正在表单字段中强制使用数组键,等等:

... name="item[itemNumber]" ...
itemNumber不是JS变量,它是附加的html blob中的文本html/属性文本。也许你的意思更像

... name="item[' + itemNumber + ']" ...

相反。即使是
item[]
也允许PHP自动为您分配数组键。但现在,PHP将为您创建一个数组,但由于您的所有字段都使用相同的键名,因此您将不断覆盖值,并最终只得到表单中最后一个字段名/键对。

您在表单字段中强制使用数组键,等等:

... name="item[itemNumber]" ...
itemNumber不是JS变量,它是附加的html blob中的文本html/属性文本。也许你的意思更像

... name="item[' + itemNumber + ']" ...

相反。即使是
item[]
也允许PHP自动为您分配数组键。但现在,PHP将为您创建一个数组,但由于您的所有字段都使用相同的键名,因此您将不断覆盖值,最后只得到表单中最后一个字段名/键对。

您在html中使用数组,但索引是一个字符串:

item[itemNumber]
因此,每一项都将覆盖上一项

您可以将其更改为:

itemNumber[]


或者,如果您有一个数字ID,您可以使用它。

您在html中使用数组,但索引是一个字符串:

item[itemNumber]
因此,每一项都将覆盖上一项

您可以将其更改为:

itemNumber[]


或者,如果你有一个数字ID,你可以使用它。

你能发布负责处理该问题的控制器代码吗?你能发布负责处理该问题的控制器代码吗?@DanielWhite只要使用
name=“item[]”
你就会发现$u post['item']是一个array@DanielWhite只需使用
name=“item[]”
您将发现$\u POST['item']是一个数组