【发布时间】:2014-09-12 04:08:00
【问题描述】:
编辑:我从来没有得到这个工作,似乎 "boxes" 在 PHP 端不是一个数组,而是一个表示“数组”的字符串。我切换到 AJAX 解决方案,不再需要这个答案。现在将关闭
所以,这似乎是一个非常简单的问题,但我有一个表单中的 php 生成的复选框,然后重新提交到 php 脚本进行处理。不幸的是,复选框数组是空的。
这是我生成的表单代码。 (注意:该操作为空,因为它是同一个 php 文件):
<form method="POST">
<input type="hidden" name="multi" value="1"> <-- Ignore this -->
<input type="hidden" name="test" value="1"> <-- Ignore this -->
<input type="hidden" name="EMAIL" value="sample@example.com">
<input type="hidden" name="FNAME" value="John">
<input type="checkbox" name="boxes[]" value="Jennifer and Friends"> Jennifer and Friends<br>
<input type="checkbox" name="boxes[]" value="Worship with Rachel"> Worship with Rachel<br>
<input type="checkbox" name="boxes[]" value="Jim Gerhold: Relationship"> Jim Gerhold: Relationship<br>
<input type="checkbox" name="boxes[]" value="Maximize Others Leadership Resources" checked=""> Maximize Others Leadership Resources<br>
<input type="submit" value="Save">
</form>
现在当我 print_r $_POST 数组时,我得到以下输入:
Array
(
[multi] => 1
[test] => 1
[EMAIL] => <REMOVED>
[FNAME] => <REMOVED>
[boxes] => Array
)
而且...在 chrome 开发者工具中,我正确地看到了表单数据:
最后,$_POST['boxes'] 的 var_dump 返回
string(5) “数组”
有谁知道如何检索数组,或者为什么它不显示为正常的 php 数组?
【问题讨论】:
-
您的问题是什么?另外,你也应该发布你的 PHP。
-
你怎么知道它是空的?尝试
var_dump而不是 print_r -
看起来不是空的,里面有一个数组类型 [boxes] => Array
-
试试这个 var_dump($_POST['boxes']);查看数组是否为空
-
@Nicolas 我的问题是为什么我不能横穿阵列。我现在的 php 只是 print_r。 var_dump 返回字符串(5)“数组”。内容似乎是“数组”。如果我回显 $_POST['boxes'][0] 它会返回 'A',然后是 'r'... 并最终打印 Array
标签: php html forms checkbox input