所以当我发送带有第一个选项“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>