表单中的select字段不是使用php发送数据

时间:2012-05-01 01:27:45

标签: php forms select post

所以当我发送表单时,第一个选项'public'被选中。插入数据。但是当我尝试提交选择了其他选项的表单时,表示每个循环中的表单。数据不再发送。我检查了这些要素。他们正在输出所有正确的值。他们正在显示。他们为什么不插入数据库?当我点击提交没有任何反应。但是当我点击提交第一个选项时,它可以正常工作吗?

<form method='POST' action='add.php'>

<select>    
        <option name="user_page_id" value="<?php echo $_SESSION['user_id']; ?>">Public</option>

        <?php
                    $dis=show_groups_select_list($_SESSION['user_id']);
                    foreach($dis as $key=>$list){

                        echo '<option name="user_page_id" value="'.$list['id'].'">'.$list['username'].'</option>';
                    }
        ?>
</select>
</form>

2 个答案:

答案 0 :(得分:6)

您需要将name属性放在select标记上,而不是option标记。

<select name="user_page_id">
    <?php foreach ($dis as $key => $list): ?>
        <option value="...">...</option>
    <?php endforeach; ?>
</select>

答案 1 :(得分:1)

我知道你得到了答案,对于那些面临同样问题但解决方案不起作用的人来说,还有更多的信息:
我有同样的问题,它转向由Bootstrap制作!
如果您使用的是Bootstrap,则需要提供选择的class属性:

<select name="any_name" class="form-control">
    <option value="this is what would be sent if selected"> sth </option>
</select>


有关更多信息,请参阅this讨论!