相关疑难解决方法(0)

将多个选择选项存储到PHP数组中

我有一个选择框列表是否可以选择多个选项:

<select name="access_list[ ]" size="7" multiple="multiple">
<?php $res=mysql_query("select * from list" ,$conn);
while($row=mysql_fetch_assoc($res))
echo"<option value=".$row['id'].">".$row['name']."</option>";?>
</select>
Run Code Online (Sandbox Code Playgroud)

如何选择的值(一起选择多个值)可以存储在数组中.我想这会为每个订单做吗?

php arrays select store options

7
推荐指数
2
解决办法
3万
查看次数

HTML表单使用GET进行多选

注意 :

这有点难以谷歌,因为"GET"带来了很多"如何'获取'javascript形式的价值",等等.

问题:

TL; DR版本第一

您是否可以使用表单的GET方法进行多选,并仍然检索每个单独的值?

扩展说明

我正在构建的可搜索目录的要求包括将GET方法与表单一起使用,以便用户可以在URL中查看其结果,并将搜索结果的直接链接发送给其他客户等.

其中一个可搜索字段是多选框(具有该MULTIPLE属性的选择框).我的后端是用PHP编写的,我通常通过将名称设置为数组变量来处理多选,(name="multiselect[]")而post变量包含所选选项的数组($_POST["multiselect"] == array()).

这种情况下的问题是多选值传递给get字符串,如下所示:

action?multiselect=1&multiselect=2
Run Code Online (Sandbox Code Playgroud)

因此无论最后一个值是什么,都会替换get字符串中变量的第一个初始化值.(在上面的例子中,multiselect等于"2").

试图使名称成为一个数组只是以相同的方式替换数组值,就像这样

action?multiselect[]=1&multiselect[]=2
Run Code Online (Sandbox Code Playgroud)

会导致 $_GET["multiselect"] == 2

我原本建议使用复选框,因为它允许我们以不同的方式命名元素并检查每个元素的真/假,但是这个特定的多选择有大约30个值,并且他们希望它在滚动中可用区域.

html php forms

3
推荐指数
1
解决办法
6832
查看次数

标签 统计

php ×2

arrays ×1

forms ×1

html ×1

options ×1

select ×1

store ×1