POST数组并不总是适合所有人

时间:2017-03-16 07:34:23

标签: php html forms

我有一个表单,其设置与此类似:

foreach($_POST['item'] as $item)

现在我在表单所在的同一页面上也有一个按钮,它执行一个jquery函数。此函数在表单中添加了一个额外的textarea(名称=" item []"所以如果用户点击该按钮两次,我最终会有三个textareas ...

现在,当用户提交表单时,它将转到另一个页面:test.php页面。在这个页面中,我执行一个PHP脚本,我在其中测试POST是否设置,然后捕获POST值..

现在每个用户都会看到$ _POST [' name']值,但对于$ _POST [' item']数组,有时数组是空的(我看到它是在Mozilla firefox 51.0.1浏览器上)..即使他们用文本填充textareas .. 并且他们得到了这一行的警告(在test.php脚本中):

{{1}}

奇怪,但是有人认出这些问题吗?

1 个答案:

答案 0 :(得分:1)

1.错过关闭文本区域。添加如下: -

<textarea name="item[]" rows="4" cols="90" maxlength="500"></textarea>

2.确保您使用以下HTML添加每个新textarea的jQuery代码: -

<textarea name="item[]" rows="4" cols="90" maxlength="500"></textarea>
<!--name is area of concern here and must be same -->

3.使用foreach()申请检查: -

if(count($_POST['item'])>0){
  // here do you foreach() loop coding
}

注意: - 在单个文本区域中,您可以传递大量数据?为什么有多个文本区?