检索多值选择'值'

时间:2012-09-01 13:02:36

标签: php select multivalue

有人能告诉我如何从多值选择中获取所选项目的“价值”吗?

我有以下内容:

    <select id="category" name="category[]" multiple="multiple">';

        /* Select categories */ 
        [...]
        <option value"' . $row->id . '">' . $row->name . '</option>';

会返回:

                    <option value"1">itemName1</option>

为什么下面的代码会给我选择的文字而不是它们的值?这有什么不对?

                    $category = $_POST['category'];
        if (count($category) > 0){ 

            foreach ($category as $key => $value) {
                echo  $value . "<br>\n";
            }
        }

这将返回itemName1,我需要实际的value (1)

谢谢

2 个答案:

答案 0 :(得分:1)

您的HTML无效。你有:

<option value"1">itemName1</option>

虽然它应该是:

<option value="1">itemName1</option>

答案 1 :(得分:0)

mulple select将返回这样的查询(name = name和values = int)

name=1&name=4&name=99

所以它返回选定的值 数组看起来像:

array(
    name => array(
        [0] => 1
        [1] => 4
        [2] => 99
    )
)

ps如果你修复HTML错误,你很可能会得到一个有效的结果