Ir para conteúdo

POWERED BY:

Arquivado

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

Ph3i

[Resolvido] Pegar vador de um select multiplo

Recommended Posts

Bom pessoal, preciso de uma ajuda.

 

Tenho um formulário com dois selects multipo, que através de um javascript passo os valores da lista1 para a lista2

<select name="lista1" id="lista1" multiple="multiple" style="height:100px; width:122px;">
	<option value='1'>1</option>
	<option value='2'>2</option>
	<option value='3'>3</option>
	<option value='4'>4</option>
</select>

<select name="lista2" id="lista2" multiple="multiple" style="height:100px; width:122px;"></select>

Quando vou pegar este valor via POST como por exemplo $lista2 = $_POST['lista2'], só é exibido o ultimo valor que foi passado para ele. Como por exemplo se eu enviar os valores 1 e 4 na hora de mostrar o dado da variável $lista2 será apenas o 4

Tem como exibir todos os valores que estão nele?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom pessoal, preciso de uma ajuda.

 

Tenho um formulário com dois selects multipo, que através de um javascript passo os valores da lista1 para a lista2

<select name="lista1" id="lista1" multiple="multiple" style="height:100px; width:122px;">
	<option value='1'>1</option>
	<option value='2'>2</option>
	<option value='3'>3</option>
	<option value='4'>4</option>
</select>

<select name="lista2" id="lista2" multiple="multiple" style="height:100px; width:122px;"></select>

Quando vou pegar este valor via POST como por exemplo $lista2 = $_POST['lista2'], só é exibido o ultimo valor que foi passado para ele. Como por exemplo se eu enviar os valores 1 e 4 na hora de mostrar o dado da variável $lista2 será apenas o 4

Tem como exibir todos os valores que estão nele?

nteste caso tera que adicionar '[]' ao nome do select multiple ex:

<select name="listamutipla[]"....

 

tenta assim

 

<select name="lista1[]" id="lista1" multiple="multiple" style="height:100px; width:122px;">
	<option value='1'>1</option>
	<option value='2'>2</option>
	<option value='3'>3</option>
	<option value='4'>4</option>
</select>

Compartilhar este post


Link para o post
Compartilhar em outros sites

andersonpda, como você me indicou funcionou perfeitamente.

 

Agora só mais uma pergunta, como faço para inserir este array "Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 ) " no MySQL

 

Eu preciso colocar estes dados dentro de apenas um campo da tabela, por exemplo:

 

Os valores deste Array vão em um campo chamado "funcionarios" então neste campo deve constar os valore 1 2 3 4.

Tem como fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom não concordo com essa abordagem, de campo multivalor,

mas pode usar implode.

 

exemplo

 

$funcionarios = implode(" ",$_POST["lista1"]);
insert into tabela(campo) values('$funcionarios');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou com um problema parecido.

 

Tenho códigos de cidades em um mesmo campo, exemplo: cidades1 2475,2478,2456

 

Preciso separar esses códigos e pesquisar cada um deles para imprimir o nome da cidade.

 

Como separo os códigos para pesquisar? "2475,2478,2456"

 

$cid = "select nm_cidade from ti_cidades where cd_cidade='$cidade'";
   $res = mysql_query($cid);
   $roc = mysql_fetch_object($res);
   print $roc->nm_cidade;

Compartilhar este post


Link para o post
Compartilhar em outros sites

DannyND

esse é um dos motivos de não concordar com essa abordagem.

 

mas posta a estrutura de suas tabelas quem sabe consigo ajudar.

e não existe a opção de separar esse campo em outra tabela não?

Compartilhar este post


Link para o post
Compartilhar em outros sites

regiao.png

DannyND

esse é um dos motivos de não concordar com essa abordagem.

 

mas posta a estrutura de suas tabelas quem sabe consigo ajudar.

e não existe a opção de separar esse campo em outra tabela não?

 

Tenho um cadastro de vendedor que pode atuar em mais de uma região que é dividida por estado.

 

O vendedor 45 - Fulano pode atender na região de PB e PE, mas em apenas algumas cidades (não tem limite de cidades). Consigo gravar o código dessas cidades no banco de dados no campo cidades1, mas não consigo mostrar elas depois.

 

Vai dar na mesma gravar em outra tabela porque não tem limite de cidades para gravar, entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim entendo sua explicação, mas para usar seria mais fácil.

 

exemplo

 

<tabela de cidades >

idcidade nome idestado

1 Goiânia 1

2 Fortaleza 2

 

<tabela de vendedores >

idvendedor nome

1 Fernando

2 Danny

 

 

<tabela Área de atuação vendedor>

 

idvendedor idcidade

1 1

1 2

1 3

2 1

2 3

 

a estrutura acima seria bem mais facil de recuperar mas vou ver o que faço com a sua.

 

bom mas eu gostaria do sql das suas tabelas com um pouco de dados para poder testar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essas informações estão gravadas dentro do cadastro de um determinado vendedor:

 

cd_vendedor nm_vendedor

1 Vendedor UM

 

<tabela de estados >

cd_uf ds_uf

1 PB

2 PE

 

<tabela de cidades >

cd_cidade nm_cidade cd_uf

1 João Pessoa 1

2 Bananeiras 1

3 Recife 3

 

Preciso mostrar as cidades de Joao Pessoa e Bananeiras que estão vinculadas a esse vendedor.

 

 

Para simplificar.

 

Tenho a variável $cidades1 com os seguintes valores (código de cidades): 2477,2481,2490,2492

Preciso fazer com a query abaixo mostre o nome dos códigos acima:

 

$cidades1 = "2477,2481,2490,2492";

 

$queryc1 = "select nm_cidade from ti_cidades where cd_cidade='$cidades1'";

$resulc1 = mysql_query($queryc1);

$rowc1 = mysql_fetch_object($resulc1);

print $rowc1->nm_cidade."<br>";

 

Como faço para buscar o nome de todas as cidades?

O print dessa query fica assim: >> select nm_cidade from ti_cidades where cd_cidade='2477,2481,2490,2492' <<

 

Preciso que seja uma query para cada código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para simplificar.

 

Tenho a variável $cidades1 com os seguintes valores (código de cidades): 2477,2481,2490,2492

Preciso fazer com a query abaixo mostre o nome dos códigos acima:

 

$cidades1 = "2477,2481,2490,2492";

 

$queryc1 = "select nm_cidade from ti_cidades where cd_cidade='$cidades1'";

$resulc1 = mysql_query($queryc1);

$rowc1 = mysql_fetch_object($resulc1);

print $rowc1->nm_cidade."<br>";

 

Como faço para buscar o nome de todas as cidades?

O print dessa query fica assim: >> select nm_cidade from ti_cidades where cd_cidade='2477,2481,2490,2492' <<

 

Preciso que seja uma query para cada código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

muda essa linha sua

 

 

$queryc1 = "select nm_cidade from ti_cidades where cd_cidade='$cidades1'";

 

para

 

 

$queryc1 = "select nm_cidade from ti_cidades where cd_cidade in($cidades1)";

 

e isso deve estar em loop

 

while($rowc1=mysql_fetch_object($resulc1)){
print $rowc1->nm_cidade."<br>";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

muda essa linha sua

 

 

$queryc1 = "select nm_cidade from ti_cidades where cd_cidade='$cidades1'";

 

para

 

 

$queryc1 = "select nm_cidade from ti_cidades where cd_cidade in($cidades1)";

 

e isso deve estar em loop

 

while($rowc1=mysql_fetch_object($resulc1)){
print $rowc1->nm_cidade."<br>";
}

 

 

YES!!! Funfou .. . brigada Fernando . .beijos

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.