如何使用Select2创建新标签并保存到数据库

时间:2016-06-15 13:16:30

标签: php jquery jquery-select2-4

所以,我在使用Select2时遇到了很多困难。我希望用户能够搜索选择列表,并在没有找到搜索结果时创建新标签。创建新标签不是问题。主要的事情 - 在大多数论坛中令人惊讶地被忽视 - 是将新闻标签插入数据库。我是Select2的新手,所以我想有一个完整的例子。我在这个项目上使用PHP,所以,如果有办法用PHP做这个,那将非常有帮助。

这是我的代码:

$('#caracteristicas').select2({theme:'bootstrap', width:null, placeholder:'Selecione', allowClear:true})
<?php 
$q = mysqli_query($con, "select id, descricao from caracteristicas");
if(mysqli_num_rows($q)>(0))
{
?>
<div class="form-group">  
	<label for="caracteristicas">Selecione um  ou mais resultados</label>
	<select name="caracteristicas[]" id="caracteristicas" class="form-control" multiple="multiple">
		<option value="">Selecione</option>
		<?php                    
		while($linhas = mysqli_fetch_array($q)):
		?>
		<option value="<?=$linhas["id"]?>">
          <?=strlen($linhas["descricao"])>50 ? substr($linhas["descricao"], 0, 50)."..." : $linhas["descricao"]?>
        </option>
		<?php endwhile;?>
	</select>
</div>
<?php } mysqli_close($con);?>

注意:我正在使用Select2 4.0

1 个答案:

答案 0 :(得分:1)

刚想出如何做到这一点。我注意到用户创建的标签没有ID,这意味着,选项值将是一个字符串,而不是一个数字。所以,我所要做的就是告诉PHP以不同的方式处理字符串值。以下是我解决这个问题的方法:

&#13;
&#13;
{{1}}
&#13;
&#13;
&#13;