Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Opa Galera, tudo blz?
sem mais delongas vou ao meu problema!
Seguinte, fiz um select multiple, e recuperei os dados dele para gravar no BD, até ai beleza!
minha regra de separação foi por virgulas, então quando seleciono uma série de opções do select recuperando os values fica assim
1, 5, 7
Agora minha dúvida!
como é que eu pego esses valores separados por virgula e mando exibir eles selecionados no select novamente com selected="selected", ex:
<select name="selecionar">
<option value="1" selected="selected">valor 1</option>
<option value="2">valor 2</option>
<option value="3">valor 3</option>
<option value="4">valor 4</option>
<option value="5" selected="selected">valor 5</option>
<option value="6">valor 6</option>
<option value="7" selected="selected">valor 7</option>
<option value="8">valor 8</option>
</select>
eu tentei usar
$variavel[] = explode(', ',$valores_porvirgula);
$variavel[] = sort($variavel);
if(in_array($meuWhile[0],$variavel[0])){
echo "<option value="<?php echo $valor;?>"><?php echo $titulo;?></option>";
}Alguém tem uma luz?
Obrigado :D
Não obtive sucesso usando foreach '-'
Eu aqui de volta para dizer que consegui resolver meu problema :D
reli novamente o manual do in_array e consegui resolver :D
vou deixar aqui em baixo o código caso alguém precise algum dia
<?php
$sql = "SELECT * FROM tabela WHERE codigo = '$codigo'";
$res = mysql_query($sql,$conexao) or die (mysql_error());
$lin = mysql_fetch_array($res);
$cat = $lin['categoria'];
?>
<select name="categoria[]" class="formulario" id="categoria" style="width:281px;height:133px;" required multiple="multiple">
<?php
$categoria[] = explode(', ',$cat);
$categoria[] = sort($categoria);
$msq = "SELECT * FROM tabela ORDER BY titulo";
$rst = mysql_query($msq,$conexao) or die (mysql_error());
while($lnh = mysql_fetch_array($rst)){
if(in_array($lnh[0],$categoria[0])){
?>
<option value="<?=$lnh['cdcategoria'];?>" selected="selected"><?=$lnh['titulo'];?></option>
<?php }else{ ?>
<option value="<?=$lnh['cdcategoria'];?>"><?=$lnh['titulo'];?></option>
<?php }}?>
</select>
Ja tentou o foreach?
http://php.net/manual/pt_BR/control-structures.foreach.php