List box ou Radio
31/08/2013
0
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>
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
Curtir tópico
+ 0
Responder
Posts
04/09/2013
Adilson Rumao
Boa tarde, eu geralmente faço assim:
Declaro esta função:
E então uso ela em cada um dos meus options:
Veja se isso lhe ajuda.
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
Clique aqui para fazer login e interagir na Comunidade :)