Ir para conteúdo

POWERED BY:

Arquivado

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

ronny

variavel nao recebe os valores do array

Recommended Posts

Olá galera.....tenho um pequeno problema que gostaria de pedir a ajuda de vcs.....

Tenho dois pares de select q transferem valores entre si:

 

SELECT1 ====> SELECT2

 

Config do Select1:

<select size="4" name="num_disp" multiple>
Config do Select2:

<select size="4" name="sobre[]" id="teste" multiple>
SELECT3 ====> SELECT4

 

Config do Select3:

<select size="4" name="num_disp1" multiple>
Config do Select4:

<select size="4" name="mat[]" id="teste2"multiple>
Após postar o form os valores do array sao aramazenados em:

 

$sobreaviso=$_POST['sobre'];$material=$_POST['mat'];
Porém, apenas a variável $sobreaviso guarda os valores enviados pelo <form>......

A outra fica vazia......

Alguém poderia me ajudar a resolver este fato???Valeu!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta fazer um for na var e ve a resposta! ex:$area = $_POST['mat'];$n= sizeof($area); for ($i=0; $i<$n; $i++) { echo $area[$i].'<br>'; };

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois eh rockbill...eu ja tinha tentado isso antes..para as duas variaveis...mas o script so mostra os valores de 1....a outra nao fica nada!!!!!....tem outra sugestão!?valeu!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois eh rockbill...eu ja tinha tentado isso antes..para as duas variaveis...mas o script so mostra os valores de 1....a outra nao fica nada!!!!!....tem outra sugestão!?valeu!!

poe o pedaço do codigo do SELECT multiple pros colegas darem uma olhada, fica melhor!

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok....nao tá 100% arrumado mas acho q dá pra entender:

 

os select sao alimentados pelo BD:

SELECT1:

<select size="4" name="num_disp" multiple>		 <?			 $sql = "SELECT * FROM servidores ORDER BY cargo";			 $resp = mysqlexecuta($id,$sql);			 while ($op = mysql_fetch_array($resp)) {		 ?><option value=<? echo $op['cargo']."".$op['nguerra']?>><? echo $op['cargo']."".$op['nguerra']?></option>		 <?		  }		  mysql_free_result($resp); 		 ?>		  </select></td>

SELECT2:

<select size="4" name="sobre[]" id="teste" multiple></select>

SELECT3:

<select size="4" name="num_disp1" multiple>		 <?		  $sql = "SELECT * FROM material ORDER BY material";		  $rs1 = mysqlexecuta($id,$sql);		  while ($op1 = mysql_fetch_array($rs1)) {		  ?>		  <option value=<? $op1['material']?>><? echo $op1['material']?></option>		  <?		   }		   mysql_free_result($rs1); 		   ?>		   </select>
SELECT4:

<select size="4" name="mat[]" id="teste2" multiple></select>

talvez fiz algo errado ou falta e nao estou conseguindo ver.....Vejam se conseguem me ajudar nesse misterio!!!valeu!!!!

 

segue tbm o codigo js:

 

function adicionaItem(campoOrig, campoDest) { 		  x = campoOrig.value;		  if (x == "") 		  {			  alert('Selecione um item!');		  }			  		  ListaDisponiveis = campoOrig;		  ListaAcordo = campoDest;		  var len = ListaAcordo.length;		  for (var i=0; i < ListaDisponiveis.length; i++)		  {			  if ( (ListaDisponiveis.options[i] != null) &&				 (ListaDisponiveis.options[i].selected))			{						ListaAcordo.options[len] = new Option(ListaDisponiveis.options[i].text, ListaDisponiveis.options[i].value);			ListaAcordo.options[len].selected = true //incluida p/ selecionar valores do select			len++;			ListaDisponiveis.options[i] = null;			i--;			}				  }}

Compartilhar este post


Link para o post
Compartilhar em outros sites

nem o select2 e nem o select4 recebem inicialmente.....pois o usuario ira jogar os valores para eles atraves dos outros select:SELECT1 ====> SELECT2SELECT3 ====> SELECT4será que expliquei direito??...valeu!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

nem o select2 e nem o select4 recebem inicialmente.....pois o usuario ira jogar os valores para eles atraves dos outros select:SELECT1 ====> SELECT2SELECT3 ====> SELECT4será que expliquei direito??...valeu!!!

bem, creio que você tem q fazer uma chamada com a função em JS para o user jogar os dados para lá, ex:<input type="button" value=">>" onclick="adicionaItem(num_disp, mat)">tenta ai pra ver...

Compartilhar este post


Link para o post
Compartilhar em outros sites

companheiro esses comando ja estao no codigo para a tranf dos valores entre os select, mas nao funciona:

SELECT1 ====> SELECT2

<input type="button" name="vai" onclick="adicionaItem(cadastro.num_disp,cadastro.teste);" value="=>" ><input type="button" name="vem" onclick="adicionaItem(cadastro.teste,cadastro.num_disp);" value="<=">

SELECT3 ====> SELECT4

<input type="button" name="vai1" onclick="adicionaItem(cadastro.num_disp1,cadastro.teste2);" value="=>"><input type="button" name="vem2" onclick="adicionaItem(cadastro.teste2,cadastro.num_disp1);" value="<=">

Cara oq posso fazer???tem outra ideia!?valeu!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

kra, eu testei um pedaço e está funcionando! veja o ex q testei aqui:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><script>function adicionaItem(campoOrig, campoDest){		  x = campoOrig.value;		  if (x == "")		  {			  alert('Selecione um item!');		  }		  ListaDisponiveis = campoOrig;		  ListaAcordo = campoDest;		  var len = ListaAcordo.length;		  for (var i=0; i < ListaDisponiveis.length; i++)		  {			  if ( (ListaDisponiveis.options[i] != null) &&				 (ListaDisponiveis.options[i].selected))			{			ListaAcordo.options[len] = new Option(ListaDisponiveis.options[i].text, ListaDisponiveis.options[i].value);			ListaAcordo.options[len].selected = true //incluida p/ selecionar valores do select			len++;			ListaDisponiveis.options[i] = null;			i--;			}		  }}</script><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body> <form action="<?echo $PHP_SELF;?>" method="POST" name="form1" ><select size="4" name="num_disp1" multiple>		<option value="PENSAR">PENSAR</option>		<option value="ENTENDER">ENTENDER</option>		<option value="RESPIRAR">RESPIRAR</option>		<option value="CONCENTRAR">CONCENTRAR</option>		   </select>		   <input type="button" value=">>" onClick="adicionaItem(num_disp1, teste2)"><select size="4" name="mat[]" id="teste2" multiple></select>   <br><input type="submit" name="Submit" value="Enviar"></form><?php$area = $_POST['mat'];$n= sizeof($area); for ($i=0; $i<$n; $i++) {  echo $area[$i].'<br>'; };?></body></html>

veja se as info estao sendo preenchidas do BD ao campo value de cada select!

Compartilhar este post


Link para o post
Compartilhar em outros sites

companheiro assim ta certo mesmo....apenas pra 2 select funciona.....agora qdo coloco os 4 nao dá....

 

SELECT3 ====> SELECT4

 

qdo o user insere do select3 p/ o select4, este vai sempre com o valor " " após a postagem.....

 

ex.: se eu insiro 3 valores do select3 p/ o select4 ele grava em um array com 3 elementos, porem com valor " ":

$material=$_POST['mat'];$n= sizeof($material);echo $n;//aki ele me mostra a quantidade de valores postados, no caso 3....... todos " "

oq você acha???

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.