Views, Elements e Layouts
Criado em: 19/12/2011 20h 39min
foreach
Como faço um foreach para exibir dados do banco de dados no select do formulário?Só consegui resposta deste modo mas só que deste modo fica um select para cada opção.
foreach($usuariosestados as $estado):
echo $this->form->select('estado',
array(
'options' => array(
array('optgroup' => true, 'label' => 'Selecione o Estado')
, array('value' => $estado['sigla'], 'text' => $estado['nome']
)
)
, 'class' => 'classCss'
, 'label' => 'Estado'
, 'divForLabel' => true
, 'divForInput' => true
)
).br();
endforeach;
Respondido em: 20/12/2011 00h 43min
Alterado em: 20/12/2011 00h 44min
Opa, você pode fazer assim:
Att,
<?php
$options = array(array('label' => 'Selecione o Estado'));
foreach($usuariosestados as $estado):
$options[] = array('value' => $estado['sigla'], 'text' => $estado['nome']);
endforeach;
echo $this->form->select('estado', array(
'options' => $options
, 'class' => 'classCss'
, 'label' => 'Estado'
, 'divForLabel' => true
, 'divForInput' => true
)
).br();
Att,
Respondido em: 20/12/2011 03h 03min
Opa, obrigado. Deu certinho aqui.
Respondido em: 20/12/2011 04h 18min
e neste caso como eu faria para deixar um campo selecionado com o comando selected?
Respondido em: 07/01/2012 14h 30min
Opa consegui. Fiz o seguinte:
$options = array(array('label' => 'Selecione o Estado'));
foreach($usuariosestados as $estado):
if($estado['id'] == $usuario['estadoId']):
$selected = '" selected="selected';
else:
$selected = '';
endif;
$options[] = array('value' => $estado['id'].$selected, 'text' => $estado['nome']);
endforeach;
echo $this->form->select('estadoId', array(
'options' => $options
, 'class' => 'classCss'
, 'label' => 'Estado:'
, 'divForLabel' => true
, 'divForInput' => true
)
).br();
$options = array(array('label' => 'Selecione o Estado'));
foreach($usuariosestados as $estado):
if($estado['id'] == $usuario['estadoId']):
$selected = '" selected="selected';
else:
$selected = '';
endif;
$options[] = array('value' => $estado['id'].$selected, 'text' => $estado['nome']);
endforeach;
echo $this->form->select('estadoId', array(
'options' => $options
, 'class' => 'classCss'
, 'label' => 'Estado:'
, 'divForLabel' => true
, 'divForInput' => true
)
).br();



