所以当我发送带有第一个选项“public”的表单时。数据被插入。但是,当我尝试在选择另一个选项的情况下提交表单时,将选择for each循环中的选项。数据不再发送。我已经检查过元素。它们输出所有正确的值。他们表现得很好。为什么不插入数据库?当我点击提交时,什么都没有发生。但是当我点击提交第一个选项时,它工作正常吗?

<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>

最佳答案

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

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

09-10 14:07
查看更多