Ir para conteúdo

POWERED BY:

Arquivado

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

Andre Brunelli

[Resolvido] Pegar valor do combo PHP

Recommended Posts

Fala galera beleza? Eu sei que alguns vão falar pra eu procurar em outros tópicos, mas todos que eu li e tentei mesmo assim nao funcionou, vejam só meu problema:

 

1) tenho um form comum onde tenho inputs pra pegar nome, matricula e um combo para pegar o tipo de pessoa.

o combo está assim:

 

<select name="tipoAssociado" class="campoTexto" id="tipoAssociado">		  
			<?php while($linha = mysql_fetch_array($resultadoTipoAssociado)){?>
					 <option value="<?php echo $linha['cdtipoAssociado'] ?>" selected>
							<?php echo $linha['descricao'] ?>
					  </option>
			  <?php }?>
  </select>

o combo aparece certinho, ele exibe tudo que eh trazido da query $resultadoTipoAssociado (que no caso é todos os tipos de associados que tenho cadastradato no banco)

 

2) no action tenho o direciomento para onde vou pegar o valor das variáveis:

 

$tipoassociado = ($_POST['tipoAssociado']);
$nome = trim($_POST['nome']);
$matricula = trim($_POST['matricula']);

e depois insiro os valores:

 

$queryInsertAssociado = "INSERT INTO Associado (nome, cdtipoAssociado, matricula) VALUES('$nome', 'tipoassociado', '$matricula')";

o problema intao é: como eu pego o cdtipoAssociado para passar na query...?

 

OBS: sei que está tudo funcionando pois fiz o teste passando por o cdtipoAssociado na mão, exemplo:

$queryInsertAssociado = "INSERT INTO Associado (nome, cdtipoAssociado, matricula) VALUES('$nome', '2', '$matricula')";

alguem pode da uma força? vlww :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui falta variável...

 

Troca isto

'tipoassociado'

por isto

'$tipoassociado'

Carlos Eduardo

 

Vlw pela ajuda :)... isso foi erro meu na hr da digitação, quando eu passo a variavel no final ele me retorna esse erro:

 

ERRO NA CONSULTA! ERROR: Cannot add or update a child row: a foreign key constraint fails (`ceangher_angherlib/Associado`, CONSTRAINT `Associado_fk_tipoAssociado` FOREIGN KEY (`cdtipoAssociado`) REFERENCES `TipoAssociado` (`cdtipoAssociado`))

 

eu ate dei um echo para ver oq ue ele estava pegando em $tipoassociado = ($_POST['tipoAssociado']); , mas ele nao esta pegando nada, esse é o problema.

 

O problema continua :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá um echo aqui:

echo $queryInsertAssociado;
E usa um:
mysql_query($queryInsertAssociado)or die(mysql_error());
Conferiu o nome do campo na tabela?

 

Esse selected, da hora em que você monta os options não faz o menor sentido.

<option value="<?php echo $linha['cdtipoAssociado'] ?>">
pois você tá colocando isso em todos eles.

 

Teste com um nome diferente:

$tipoAssoc = $_POST['tipoAssociado'];
Dependendo do teu php.ini, pode ocorrer algum problema, usar variáveis 'com a mesma chave'.

Compartilhar este post


Link para o post
Compartilhar em outros sites

William Bruno, valeu pela ajuda mas nao era isso não, acabei que ontem estava muito cansado e hoje com mais calma descobri o problema...

 

É o seguinte:

 

 

meu combo continuou assim

<select name="tipoAssociado" class="campoTexto" id="tipoAssociado">		  
								<?php while($linha = mysql_fetch_array($resultadoTipoAssociado)){?>
									  <option value="<?php echo $linha['cdtipoAssociado'] ?>" selected>
										<?php echo $linha['descricao'] ?>
									  </option>
								  <?php }?>
						   </select>

 

o que acontece é que aqui estava escrito cdtipoassociado sendo que o nome do campo no banco de verdade é cdtipoAssociado.

 

Um simples case sensitive me tirou toda produção ontem. outra coisa que eu mudei tb, como sugestao sua foi mudar o nome do campo que eu estava pegando o valor e ficou:

 

$tipocomboassociado = ($_POST['tipoAssociado']);

Com isso resolvi meu problema :P

Aos que tiverem duvida parecida, estou a disposição. valeu.

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.