Ir para conteúdo

POWERED BY:

Arquivado

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

Bruno Conte

Gravando em array não grava

Recommended Posts

Pessoal eu tenho um cadastro de itens de os da seguinte maneira:

 

 

<?php

$i = 0;
while ($servico=mysql_fetch_array($sql_serv)) {
$id = $servico['id_servos'];
?>
Item: <?php echo $servico['titulo']; ?> <input type="checkbox" name="id_item[]" value="<?php echo $servico['id_servos']; ?>" />
Quantidade: <input name="quantidade[]" type="text" size="5" />
<?php
$i++;
}
?>
Ele esta puxando uma lista do banco de dados que seleciono o item e a quantidade desse item.
o problema e que quando tenho uma lista da seguinte maneira:

 

Item 1 Quantidade:

Item 2 Quantidade:
Item 3 Quantidade:
Item 4 Quantidade:

 

Se eu selecionar todos os itens e digitar a quantidade fica ok.

 

Agora se eu selecionar o item 1 e 4 ou 1 e 3 ele so grava a quantidade no primeiro no segundo nao.

 

meu codigo de gravar:

 

 

$x = $_POST[ 'id_item' ];

$i = 0;
foreach($x as &$key){
$quantidade = $_POST['quantidade'][$i];
$query = "INSERT INTO itens_os (id_os, id_item, quantidade) VALUES ('$id_gerado', '$key','$quantidade')";
$sql = mysql_query($query) or die(mysql_error());//executa a query
$i ++;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tá meio confuso esse seu código... Porque nomeou os inputs como array se não vai ser passado um array de itens/quantidades para o PHP?

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu posso selecionar varios itens.

 

Ainda tem o cabeçalho do pedido que seleciono o cliente, e o tecnico.

 

ai ele grava o id da os e posso selecionar varios itens que e gravado com o id da os gerada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

No meio do loop, após atribuir $query, mande imprimir essa variável ai voce pode visualizar os inserts e saber o porque de não estar inserindo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu ja fiz isso, o problema e que quando saiu da sequencia tipo do 1 para o 3 ele nao grava a quantidade!!!

 

E porque não? tem que achar o porque que nao deu certo,

como ficou os insertes de cada loop? cole-os aqui para nos ver.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

 

INSERT INTO itens_os (id_os, id_item, quantidade) VALUES ('25', '3','5')INSERT INTO itens_os (id_os, id_item, quantidade) VALUES ('25', '7','')

 

agora gravando em sequencia fica assim:

 

 

 

INSERT INTO itens_os (id_os, id_item, quantidade) VALUES ('26', '3','10')INSERT INTO itens_os (id_os, id_item, quantidade) VALUES ('26', '4','15')

 

 

isso que me intriga, pois quando pego a sequencia do while no formulario ele funciona, quando pula um da pau!!!

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.