Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

biza

[Resolvido] como devolver valor do select submetido anteriormente

Recommended Posts

Viva pessoal , tenho uma duvida , tenho um formulário de inserção de dados, nesse form existe um select. Imaginem que após registrar no banco de dados , eu verificar que me enganei, e ao fazer a edição dessa linha recorrendo ao form de update, gostaria que me fosse devolvido ao select o valor que eu tinha inserido, alguém me da uma luz como fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

antes de mais nada você ira recuperar os dados do db e com eles preencherá o seu formulário de update

 

no caso especifico do select você provavelmente o montará dinamicamente com as opções possíveis e no decorrer desta montagem fará comparação para determinar o valor que coincide com o que está gravado no banco e neste option colocará o selected que indica o valor que iniciará marcado

Compartilhar este post


Link para o post
Compartilhar em outros sites

caro amigo se igual eu estava igual fiquei , eu consigo fazer update de todo o formulário, o que eu gostava era que quando abri-se o formulario as opções que estavam inseridas na base de dados já me aparecessem seleccionadas neste caso , as combobox ja aparecessem com o valor anteriormente inserido e as checkbox , com um visto nos items seleccionados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não tem nenhum segredo, é apenas fazer um select das informações e adaptar o dados no teu formulário pré-definindo os valores

 

<input type="text" value="Valor Que trouxesse do BD">
Declare o valor que trouxesse do BD

<input type="radio" checked>
Declare checked deste modo para deixar selecionado

<input type="checkbox" checked>
Declare checked deste modo para deixar selecionado

<textarea> Valor do BD </textarea>
Declare o valor que trouxesse do BD

Compartilhar este post


Link para o post
Compartilhar em outros sites

meu caro tentei fazer da forma que você mandou, mas não funfa.

 

<?	
	$result = mysql_query("SELECT t_id, cat FROM categorias where t_id=".$_GET['id']);
	echo'<select name="cat">
	<option value="0" size="35">Seleccione a Categoria</option>';	
	while( $row = mysql_fetch_array($result)){
			echo'<option value="'.$row[0].'" size="35" checked>'.$row[1].'</option>	';
		}
		mysql_free_result( $result );	
		echo'</select>';
		?>
ele deveria abrir já com o valor anterior seleccionado e ao mesmo tempo deixar-me seleccionar outro campo caso esse que me devolveu fosse o errado

 

meu caro tentei fazer da forma que você mandou, mas não funfa.

 

<?	
	$result = mysql_query("SELECT t_id, cat FROM categorias where t_id=".$_GET['id']);
	echo'<select name="cat">
	<option value="0" size="35">Seleccione a Categoria</option>';	
	while( $row = mysql_fetch_array($result)){
			echo'<option value="'.$row[0].'" size="35" checked>'.$row[1].'</option>	';
		}
		mysql_free_result( $result );	
		echo'</select>';
		?>
ele deveria abrir já com o valor anterior seleccionado e ao mesmo tempo deixar-me seleccionar outro campo caso esse que me devolveu fosse o errado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais é igual ao que o Mário Monteiro disse

 

Você tem que usar selected, senão nunca ira dar certo

 

Exemplo

 

while ($linha =mysql_fetch_assoc( $rs ) ){
				
	$valor = $linha['id'];
					
		if ($row_RsEditEspec['especialidade'] == $valor){
			
			$selecionado = "selected";
						
		}else{
						
			$selecionado ="";
				
		}
					
		echo "<option value = \"{$valor}\" {$selecionado} > {$linha['especialidades']} </option>";
								
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu rapazão me resolveu a questão. ja agora para as checkbox postas dinamicamente o procedimento é o mesmo né! obrigado. Aprender é viver

Compartilhar este post


Link para o post
Compartilhar em outros sites

Viva pessoal , tenho uma duvida , tenho um formulário de inserção de dados, nesse form existe um select. Imaginem que após registrar no banco de dados , eu verificar que me enganei, e ao fazer a edição dessa linha recorrendo ao form de update, gostaria que me fosse devolvido ao select o valor que eu tinha inserido, alguém me da uma luz como fazer?

 

Mole mano,

 

Faz o seguinte: Quando você fizer o insert ex:

 

INSERT INTO tabela VALUES (valores);

Já na sequência, já execute outra query fazendo um SELECT no maior valor da chave primária da tabela ex:

 

SELECT MAX(codtabela) as codigo FROM tabela LIMIT 1

E vai trazer o maior valor da tabela que corresponde ao ultimo INSERT feito no banco.

 

Resumindo:

 

$qry01 = mysql_query("INSERT INTO tabela VALUES (valores);") or die (mysql_error());
$qry02 = mysql_query("SELECT MAX(codtabela) as codigo FROM tabela LIMIT 1") or die (mysql_error())

 

Espero ter ajudado.

 

Flws

Compartilhar este post


Link para o post
Compartilhar em outros sites

Melhor ainda, não é necessário fazer um select para pegar o último ID inserido. Se sua tabela possuir um campo do tipo auto increment (normlmente essa coluna é a Primary Key), você pode fazer assim: depois do INSERT, utilize a função mysql_insert_id( ), pois ela irá retornar o ID do último registro que foi inserido. Mas atenção: esta função precisa ser utilizada antes de um novo INSERT.

 

 

http://forum.imasters.com.br/public/style_emoticons/default/seta.gif http://br.php.net/manual/pt_BR/function.mysql-insert-id.php

 

 

Dá uma olhada na função que irá entender seu funcionamento...

 

 

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.