Ir para conteúdo
Fórum Script Brasil
  • 0

Multiplos Inserts apartir de um Form com Select


Renatolps

Pergunta

Boa tarde Pessoal,

Sou iniciante e estou tentando efetuar um INSERT multiplo a partir de um Formulario que usa como select para carregar seu conteudo. Faz mais de uma semana que estou tentando fazer isso funcionar, mais não obtive sucesso.

Por favor me ajudem

O esquema é basicamente isso: Carregar alguns itens com o select dentro do formulario e eu informar quais itens eu quero solicitar com suas respectivas quantidades

Segue codigo da Form que carrega os itens

<form action="request-process.php" method="post">

$rs= $db_conn->execute("SELECT * FROM [piece] WHERE id_group = ".$_GET['group']);

while (!$rs->EOF)

{

?> <div class=fleft">

<a class="fancybox" href="<?php echo $rs->Fields('photo')->value; ?>" rel="group" ><img class="border" width="100" src="<?php echo $rs->Fields('photo')->value; ?>"/></a>

</div>

<div class="fleft">Numero: <?php echo $rs->Fields('number')->value; ?></br>

Nome: <?php echo $rs->Fields('name')->value; ?></br>

<span >Quantidade: <input type="text" value="0" name="quantity[]" style="width:20px"/></span></div>

<input type="hidden" value="<?php echo $rs->Fields('id')->value; ?>" name="piece[]" style="width:20px"/>

<div class="fclear">&nbsp;</div>

<?php

$rs->MoveNext();

}

<input type="submit" value="salvar"/>

alguém tem alguma sugestão ou algum exemplo para eu tentar aplicar, pois tentei de varias formas e não obtive exito, acho que tenho q aplicar array, mais nada dá certo. Estou utilizando o Access como banco de dados.$rs = $db_conn->execute("SELECT * FROM [Request]");

while (!$rs->EOF)

{

$request_id = $rs->Fields('id')->value;

$rs->MoveNext();

}

$status = 1; // indica status como pendência

$pieces = $_POST['piece];

$quantity = $_POST['quantity'];

$status = 1; // indica status como pendência

$sql = "INSERT INTO request_piece (request_id, piece_id, quantity, status, date, date_separated, date_received) values";

foreach ($reciver_piece as $piece) {

$peca = $piece['piece'];

$quantidade = $piece['quantity'];

$sql .= "('".$request_id."', '{$peca}', '{$quantidade}','".$status."', "now()", NULL, NULL),";

$rs = $db_conn->execute($sql);

}

Obrigado desde de já.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Talvez esse insert esteja conflitando por causa das aspas duplas dentro de aspas duplas

$sql .= "('".$request_id."', '{$peca}', '{$quantidade}','".$status."', "now()", NULL, NULL),";
As aspas duplas "tratam" o que tem dentro dela, então variável dentro de aspas duplas não precisa concatenar, está sobrando uma virgula no final da query apos o parenteses final.
$sql .= "($request_id, $peca, $quantidade,$status, now(), NULL, NULL)";

Se o problema for inserir talvez esteja ai o problema.

Da um echo pra mostrar erro de query, tipo o mysql_error().

não sei qual é o método para o access.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...