PHP POST未接收所选选项
我正试图发布一个简单的PHP POST未接收所选选项,php,html,Php,Html,我正试图发布一个简单的选择,带有多个属性: <select name="cboCategory[]" id="cboCategory" class="box" multiple="multiple" size="5"> <option value="18">Cookies</option> <option value="19">Cookie Bouquets</option> <option value="
选择
,带有多个
属性:
<select name="cboCategory[]" id="cboCategory" class="box" multiple="multiple" size="5">
<option value="18">Cookies</option>
<option value="19">Cookie Bouquets</option>
<option value="20">Cookie Platters</option>
<option value="21">Cookie Pizzas</option>
<option value="22">Cakes</option>
<option value="23">Cupcakes</option>
<option value="25">Gifts - Corporate</option>
<option value="26">Gifts - Misc.</option>
<option value="27">• Birthday</option>
<option value="28">• Baby</option>
<option value="29">• Get Well</option>
<option value="30">• Congratulations</option>
<option value="31">• Thank You</option>
<option value="35">• Holiday</option>
<option value="41">Gifts</option>
<option value="42"> Corporate</option>
<option value="43"> Miscellaneous</option>
</select>
以这种方式设置时,输出总是string(0)“
。它只是不会通过任何选定的选项
但是,如果我从select名称中删除括号,将其更改为name=“cboCategory”
则效果良好,只返回一个选定值
其他人能知道我为什么不能让它工作吗?我觉得我肯定错过了一些明显的东西
编辑:以下是整个$\u POST
变量:
array(15) { ["cboCategory"]=> string(0) "" ["txtName"]=> string(28) "50th Birthday Cookie Bouquet" ["mtxDescription"]=> string(266) "Half a decade is a big deal! Celebrate it with one of our cookie bouquets. They are overflowing with our delicious homemade large cookies on a stick, balloon on a stick, large candy bar, candy bites, ribbons, decorations, and your enclosure card. Container may vary." ["txtOptionName"]=> string(7) "default" ["txtValue1"]=> string(9) "4 cookies" ["txtPrice1"]=> string(2) "25" ["txtValue2"]=> string(9) "6 cookies" ["txtPrice2"]=> string(2) "30" ["txtValue3"]=> string(9) "8 cookies" ["txtPrice3"]=> string(2) "35" ["txtValue4"]=> string(0) "" ["txtPrice4"]=> string(0) "" ["txtValue5"]=> string(0) "" ["txtPrice5"]=> string(0) "" ["txtQty"]=> string(4) "4999" }
EDIT2:谢谢大家的帮助。我发现了这个问题,它确实超出了我发布的内容。我把我的
var_dump
放在页面顶部,没有括号,帖子运行正常,因此我假设其他所有内容都设置正确。然而,在我的var_转储之前有几个include,其中一个include破坏了$\u POST
中的数组。您提交的表单中是否有选择框
该表单是用php中的action=“post”提交的吗
foreach($_POST['cboCategory'] as $category)
{
echo $category . "<br>";
}
foreach($\u POST['cboCategory']作为$category)
{
回声$category.“
”;
}
克里斯蒂安说的不对
确定没有在表单的method属性上使用get而不是post?代码中没有问题。您应该确保已将选择框放置在表单标记内,至少选择了一个元素,并且表单标记中没有其他同名元素 检查表:
使用$\u POST['cboCategory[]']代替请显示与此相关的其余代码,因为整个表单声明不仅与一个元素相关。调试101:如果找不到特定的POST变量,请使用
var\u dump($\u POST)检查您的POST是否有效代码>我已经通过使用var\u dump($\u POST)
双重检查了值是否已过账。对不起,我应该提一下。我将用输出编辑我的问题。请尝试multiple=“yes”而不是multiple=“multpile”这是我设置问题的方式,它可以工作是和是。如果我运行var\u dump($\u POST)
,它包括cboCategory
,但它的值仍然只是一个空字符串。var\u dump($\u POST)比这做得更好。不管效率如何,如果一个不起作用,另一个也不会起作用。问题是这些值没有进入他的php数组
foreach($_POST['cboCategory'] as $category)
{
echo $category . "<br>";
}