php多选择器标签问题

时间:2017-05-01 19:44:33

标签: php mysql

嗨,我有这个多选择器,我只能从MySql数据库中一次匹配一个项目,请帮忙。我使用implode和explode来插入和更新字符串。我想从列表中选择多个项目。

<!-- Select Multiple -->
<div class="form-group">
<label class="col-md-4 control-label" for="skills">Skills</label>
<div class="col-md-4">
<select id="skills" name="skills[]" class="form-control" multiple="multiple">
<option value="0" 

<?php 
if(isset($skills)){
(explode(" ",$skills));
in_array('0', $skills) ? 'selected' : '';
?>>php</option>



<option value="1" <?php 
in_array('1', $skills) ? 'selected' : '';
?>>WordPress</option>


<option value="2" <?php 
in_array('2', $skills) ? 'selected' : '';
?>>HTML</option>


<option value="3" <?php 
in_array('3', $skills) ? 'selected' : '';
?>>CSS</option>


<option value="4" <?php 
in_array('4', $skills) ? 'selected' : '';
}
?>>JS</option>


</select>
</div>
</div>

1 个答案:

答案 0 :(得分:0)

您的代码有点不清楚,但您必须再次将爆炸值分配给$skills

$skills = explode(" ", $skills);

然后检查是否选择了技能:

in_array('0', $skills) ? 'selected' : '';

希望它有所帮助。

另外,请确保您在multiple元素上设置了select属性,并且名称包含数组大括号[]

<select multiple name="skills[]">