php - 基于使用 php in_array 从数据库中获取值选择的多个选项
问题描述
我有这样的php变量$SubTopicid = $L_array["subtopicid"];
然后像这样在选项标签中
<option <?php if (In_array($URow[0],explode(" ",$SubTopicid))) echo 'selected' ; ?> value="<?php echo $URow[0];?>"><?php echo $URow[1];?></option>
问题是未选择多个值
当我爆炸这个变量时$SubTopicids = explode(" ",$SubTopicid);
得到这种方式的结果
Array ( [0] => 248 ) Array ( [0] => 72 ) Array ( [0] => 72,248 )
选择了像248这样的单值,但在选项中没有选择像72,248这样的双值
解决方案
因此,如果我理解正确,您要检查标记为$SubTopicid
.
如果您$SubTopicid
可以同时包含单个选项和多个选项,您可能希望在while
循环之前分解它们。
考虑以下:
$SubTopicid = "248 72 72,248";
$SubTopicids = array();
foreach(explode(" ",$SubTopicid ) as $elem)
$SubTopicids = array_merge($SubTopicids ,explode(",",$elem));
在这种情况下,您的数组将如下所示:
Array
(
[0] => 248
[1] => 72
[2] => 72
[3] => 248
)
如果需要,您可以使用数组唯一。
现在,当您运行时:
while($URow=mysql_fetch_array($RowRes)){
<option <?php if (In_array($URow[0],$SubTopicids)) echo 'selected' ; ?> value="<?php echo $URow[0];?>"><?php echo $URow[1];?></option>
}
您会将所有给定选项标记为选中。
推荐阅读
- performance - 在并发线程组中增加步数和增加时间
- javascript - 将 php 脚本的结果放在 div 中的方法(没有 jQuery)
- javascript - 搜索下拉点击进入下一页
- python - 如何删除python列表中小于特定字符数的所有元素
- java - 无法从 servlet 下载 jasper pdf
- javascript - 替换字符串 JavScript 中的所有 √num
- github - 使用 tailwind css 的 github 项目显示 95%+ CSS 和其余 JS、HTML?
- c# - 尝试关联两个模型时未将对象引用设置为对象的实例
- r - R - 使用其他矩阵中的过滤器获取矩阵的值
- javascript - contenteditable 中的 JS 正则表达式匹配 URL 不适用于 www.*