Ir para conteúdo

POWERED BY:

Arquivado

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

manolegal

[Resolvido] Dados em array

Recommended Posts

Olá amigos.

Tenho em um formulario um campo check da seguinte forma:

<tr><td> </td><td width="54%"><input type="checkbox" name="id_lancamento[]" id="id_lancamento" value="<?php echo "$id_bd"; ?>"checked><?php echo "$nome_bd     -     $qdade_bd"; ?></td>

 

Neste caso estou mandando para outro formulario o id do lancamento em array.

O que eu gostaria, é de enviar juntamente com o id_lançamento, também os dados de quantidade correspondente a cada id_lançamento.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hmm, não entendi.

Pode explicar melhor?

Que quantidade é essa? De onde você tirou?

 

Valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Dii. Obrigado pela ajuda.

Na verdade preciso atualizar alguns dados no banco de dados. Fiz uma pesquisa ao bd, e depois listei os dados.

   $Sql = "SELECT id_lancamento, nome, quantidade FROM tabela";
   $Resultado = executa($Sql);
   $total_registros = pg_num_rows($Resultado);
while ($linha = pg_fetch_array($Resultado)){
   $id_bd = $linha["id_lancamento"];
   $nome_bd = $linha["nome"];
   $qdade_bd = $linha["quantidade"];
   }

 

Ai criei o checkbox para listar os dados e o usuario selecionar os dados que ele quiser atualizar. Neste check estou enviando o id_lancamento.

value="<?php echo "$id_bd"; ?>"[/code

Gostaria de enviar para o formulario seguinte, além do id_lancamento, tambem a quantidade correspondente a cada dado selecionado. Como faria isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você vai fazer o seguinte.

Primeiro vai pegar o valor do $id_bd... E passar para outra página. Como? Por $_SESSION por exemplo.

 

// Isso dentro do seu código... Embaixo do While.

session_start();
// Passamos o valor do ID do BD para uma variável $_SESSION e jogamos na outra página.
$_SESSION['id'] = $id_bd;

 

Agora na outra página, você fará o seguinte...

 

session_start();
// Pega o valor passado da outra pagina e armazenamos na variavel ID
$id = $_SESSION['id'];
// Consulta SQL que pega o valor da quantidade do BD baseado no seu ID
$query = mysql_query("SELECT quantidade FROM tabela WHERE quantidade='$id'");

 

Espero que tenha entendido, a lógica é mais ou menos essa. Valeu amigão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas se o usuario selecionar varios registros (checks)? Posso armazenar mais de um dado (id) dentro de uma sessao?

Tentei por array:

<input type="checkbox" name="id_lancamento[]" id="id_lancamento" value="<?php echo "$id_bd"; ?>"checked><?

E na pagina seguinte recebi assim:

Array ( [0] => 11 [1] => 14 [2] => 10 [3] => 12 [4] => 13 [5] => 15 )

Teria como enviar 02 dados diferentes em uma mesma array?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah..... Agora tu me pegou.

O usuário vai enviar mais de um valor né...

Agora eu não sei x__x

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eqnuanto estive dormindo... Eu achei a sua solução...

Utilize a função serialize().

O que ela faz?

Bom, ela transformas dados de array em objetos. E depois utilizando unserialize() para passar os dados de Objeto para Array denovo.

Então vai ser o seguinte...

 

Substitua isso aqui...

 

$_SESSION['id'] = serialize($id_bd);

 

E depois isso aqui...

 

$id = unserialize($_SESSION['id']);

 

E utilize a variável $id como array normalmente... Vê se resolve!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok. Entendido. Só mais uma pergunta. Passar dados de um formulario para outro, da seguinte forma, é seguro?

<input type="checkbox" [b]name="id_lancamento[]"[/b] id="id_lancamento" [b]value="<?php echo "$id_bd"[/b]; ?>"checked><?

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.