List box ou Radio

31/08/2013

0

PHP

Bom dia amigos,

Estou com um probleminha que não estou conseguindo resolver.

Tenho um list box, que grava perfeitamente no BD as informações, mas quando retorno para alterar ele sempre lista o primeiro e não o que está gravado no BD.

Ele lista 3 bancos, e o valor no BD é 1 para o BRADESCO, 2 para o ITAÚ e 3 para o SANTANDER
Então queria quando eu fosse editar o cadastro, que no caso se tinha cadastrado o Itaú, volte o itaú. Mas no primeiro exemplo abaixo ele sempre volta o BRADESCO que é o primeiro, e no segundo exemplo ele retorna sempre o SANTANDER.

No input normal de text eu gravo e na consulta ou edição o resultado do BD vem normalmente, abaixo como está gravando e trazendo o resultado.

<tr>
<td width="110">NOME:</td>
<td width="190"><input name="form_nome" type="text" value="<?=@mysql_result($sql,0,nome)?>" size="60"></td>
</tr>



Nos select tipo list box tentei dessa forma abaixo
Ele volta sempre o primeiro resultado

<tr>
<td><div align="left" class="style2"><strong>BANCOS: </strong></div></td>
<td><div align="left" class="style2">
<label>
<select name="form_banco" id="form_banco" selected="selected">
<option value="1">1 - BRADESCO</option>
<option value="2">2 - ITAÚ</option>
<option value="3">3 - SANTANDER</option>
</select>
</label>
</div></td>
</tr>


E também dessa forma abaixo, que ele sempre retorna o terceiro resultado.

<tr>
<td><div align="left" class="style2"><strong>BANCOS: </strong></div></td>
<td><div align="left" class="style2">
<label>
<select name="form_banco" id="form_banco" selected="selected">
<option selected="selected" value="1">1 - BRADESCO</option>
<option selected="selected" value="2">2 - ITAÚ</option>
<option selected="selected" value="3">3 - SANTANDER</option>
</select>
</label>
</div></td>
</tr>

Como disse, ele grava perfeitamente no BD, e quando edito também, mas não retorna no list box o valor que está gravado no BD.



Também tentei via radio como está abaixo. grava normalmente no BD, mas também retorna vazio todos os radios, não voltando o resultado que está no BD.
Qualquer uma das alternativas me ajuda


<td>BANCOS:</td>


<input type="radio" name="form_banco" id="form_banco" checked="checked" value="1" <?php if($dados['banco']=='1');?> />BARDESCO</td>


<input type="radio" name="form_banco" id="form_banco" checked="checked" value="2" <?php if($dados['banco']=='2');?> />ITAÚ</td>


<input type="radio" name="form_banco" id="form_banco" checked="checked" value="3" <?php if($dados['banco']=='3');?> />SANTANDER</td>
</tr>
Marcelo Xavier

Marcelo Xavier

Responder

Posts

04/09/2013

Adilson Rumao

Boa tarde, eu geralmente faço assim:
Declaro esta função:
<?php
    function selected( $value, $selected ){
    return $value==$selected ? ' selected="selected"' : '';
 }


E então uso ela em cada um dos meus options:

<select name="sexo">
    <option value="">Escolha</option>
    <option value="masculino"<?php echo selected( 'masculino', $sexo ); ?>>Masculino</option>
    <option value="feminino"<?php echo selected( 'feminino', $sexo ); ?>>Feminino</option>
</select>


Veja se isso lhe ajuda.
Responder

05/09/2013

Marcelo Xavier

Infelizmente não, ele faz exatamente o que eu o que eu já tinha estava fazendo. Grava os dados, mas quando volto ao cadastro para consultar ou mesmo para editar ele volta ao "escolha" mesmo no BD tendo sido gravado corretamente.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar