Editar usando o Option - select no php

Olá a todos, gostaria de saber se tem um modo de deixar o select já selecionando uma opção que não seja a primeira.

exemplo:

{
(option>Não seleciodado</option)
(option>seg</option)
(option>ter</option)
(option>quar</option)
(option>qui</option)
(option>sab</option))}

fazer já mostrar o qui selecionado, por exemplo.

Não sei se estou conseguindo explicar corretamente :confused:

agredeço desde já

vc precisa fazer comparação pode usar if ternario:

<option value="seg" <?=$opt == 'seg' ? 'selected' : ''?>>seg</option>
<option value="ter" <?=$opt == 'ter' ? 'selected' : ''?>>ter</option>

E assim em diante, vai depender de como vc carrega o valor para editar…

A que se refere esse $opt???

é exemplo jovem, vc quem vai definir qual variavel vai usar para comparar (vc citou edição no titulo do tópico, estou imaginando que vc puxa o cadastro da base pra mostrar na tela não é?).

Além do mais vc não postou como carrega o combo e muito menos mostrou o value de cada option certo? De nossa parte fica dificil adivinhar…

Eu tentei aqui, só não funcionou…

É porque faz referencia a outra tabela do bd, então, estou listando no select o nome para ser escolhido e, mas o value está com o id.

//Cidade:
(select name=“idcidade”>
(option value=“0”>Não seleciodado
<?php foreach($cidades as $cidade): ?>
<option value="<?php echo $cidade->getIdCidade();?>" <?php ($aluno->getIdCidade() == $cidade->getIdCidade()) ? 'selected' : '' ?>><?php echo $cidade->getNomeCidade(); ?>
<?php endforeach;?>

não sei se vai dar para entender.

Consegui, só está estava deixando de colocar um ‘echo’ antes do ‘if’

<?php echo ($aluno->getIdcidade() == $cidade->getId()) 'selected' : ' ' ; ?>

obrigado pela ajuda!

1 curtida

Em versões do php a partir do 5.4, vc já pode fazer assim usando short_open_tag:

<?=($aluno->getIdcidade() == $cidade->getId()) ? 'selected' : ' '?>

Que da o mesmo resultado, é um echo “escondido” blz? sucesso!