Boa tarde!
Eu estou com uma dificuldade. Estou tentando popular um combobox com os valores que estão cadastrados no banco.
Eu sei que esta não é a maneira correta de trabalhar com formulários usando zend, mas o meu está assim:
cadastro/new.phtml
<form action="<?= $this->url(array("controller" => "cadastro", "action" => "create"), null, true) ?>" method="post">
<table width="100%" cellpadding="3" cellspacing="2">
<tr>
<td align="right">Nome</td>
<td align="left"> <input type="text" name="cadastro_nome" value="" /></td>
</tr>
<tr>
<td align="right">Idade</td>
<td align="left"> <input type="text" name="cadastro_idade" value="" /></td>
</tr>
<tr>
<td align="right">Telefone</td>
<td align="left"> <input type="text" name="cadastro_telefone" value="" /></td>
</tr>
<tr>
<td align="right">Cargo</td>
<td align="left">
<select name="cadastro_cargo">
<option value="" selected>--Selecione-- </option>
<option value="1">Diretor</option>
<option value="2">Gerente</option>
<option value="3">Funcionário A</option>
<option value="4">Funcionário B</option>
</select>
</td>
</tr>
<tr>
<td></td>
<td align="right"> <input type="submit" value="Salvar" /> <img src="..\public\imagens\icon_salvar.gif"></td>
</tr>
</table>
</form>
A combo “cadastro_cargo” é a que quero preencher. Os valores devem vir do campo cadastro_cargo do banco, que referencia cargo_id da tabela cargos.
Assim como está funciona, porém, lista sempre o valor (value). Além de não serem os mesmos dados cadastrados no banco (tabela cargos).
cadastro/show.phtml
<table width="100%" cellpadding="3" cellspacing="0" border="0">
<tr>
<td width="150px" align="right">Nome:</td>
<td> <?= $this->cadastro['cadastro_nome'] ?></td>
</tr>
<tr>
<td width="150px" align="right">Idade:</td>
<td> <?= $this->cadastro['cadastro_idade'] ?></td>
</tr>
<tr>
<td width="150px" align="right">Telefone:</td>
<td> <?= $this->cadastro['cadastro_telefone'] ?></td>
</tr>
<tr>
<td width="150px" align="right">Cargo:</td>
<td> <?= $this->cadastro['cadastro_cargo'] ?></td>
</tr>
</table>
Então resumindo, gostaria de uma maneira de carregar os nomes desta chave estrangeira na combobox “cadastro_cargo” e listar os mesmos.
Tentei usando vários exemplos. Nada deu certo. Estou estudando o Zend a dez dias.
Espero reforços,
Obrigada!