Jump to content
Fórum Script Brasil
  • 0

Dúvida em script


lidiane Oliveira

Question

Pessoal,

estou a seguinte dúvida:

Criei um formulário que traz os dados do banco e possui campo quantidade para preenchimento pelo usuário e que, calcula o valor total de acordo com a quantidade informada pelo usuário. Os campos são dinâmicos, gerados dentro de um for, ou seja, os ids dos campos serão gerados com um índice, como se pode ver abaixo:

/*CRIA TABELA DE PRODUTOS DE ACORDO COM O UF SELECIONADO*/

$sqlProduto = mysql_query("SELECT * FROM produto WHERE id_fornecedor=$IdForn GROUP BY descricao");

$numLinhas = mysql_num_rows($sqlProduto);

if($numLinhas==0){

echo "Tabela vazia!";

}//Fecha o if

else{

echo "<table border='1'>

<tr>

<th> </th>

<th> C&oacute;digo </th>

<th> Linha </th>

<th> Descri&ccedil;&atilde;o </th>

<th> Conte&uacute;do </th>

<th> Cor </th>

<th> Cod. Barra </th>

<th> R$ Unit. </th>

<th> Quant </th>

<th> R$ Total </th>

</tr>";

for($x=0; $x< $numLinhas; $x++){

$regProd = mysql_fetch_array($sqlProduto);

$Cod = $regProd["codigo"];

$Linha = $regProd["linha"];

$Desc = $regProd["descricao"];

$Cont = $regProd["conteudo"];

$Cor = $regProd["cor"];

$codBarra = $regProd["cod_barra"];

$IdProd = $regProd["id_produto"];

/*Atribui um valor ao estado selecionado*/

$VrUnit=0;

if($_POST["cboUF"]==GO"){

$VrUnit = $regProd['vr_unitGO];

}

else{

$VrUnit = $regProd['vr_unitMG'];

}

echo "<tr>";

echo "<td> <input type='checkbox' name='campo[ck]' id='ck".$x."' value='".$IdProd."'/> </td>";

echo "<td> <input type='text' name='campo[cod]' id='txtCod".$x."' value='". $Cod ."' size='1' /></td>";

echo "<td> <input type='text' name='campo[linha]' id='txtLinha".$x."' value='". $Linha ."' /></td>";

echo "<td> <input type='text' name='campo[prod]' id='txtProd".$x."' value='". $Desc ."'/> </td>";

echo "<td> <input type='text' name='campo[cont]' id='txtCont".$x."' value='". $Cont ."' size='4' /></td>";

echo "<td> <input type='text' name='campo[cor]' id='txtCor".$x."' value='". $Cor ."' /></td>";

echo "<td> <input type='text' name='campo[codBarra]' id='txtCodBarra".$x."' value='". $codBarra ."' /></td>";

echo "<input type='hidden' name='campo[numPed]' value='".$Soma."'>";

echo "<input type='hidden' name='campo[idProd]' value='".$IdProd."'>";

echo "<input type='hidden' name='campo[idForn]' value='".$IdForn."'>";

echo "<input type='hidden' name='campo[idCli]' value='".$IdCli."'>";

echo "<input type='hidden' name='campo[idUsu]' value='".$IdUsu."'>";

?>

<td> <input name="campo[unit]" type="text" id="unit_<?php echo $x ?>" style="width:50px" onfocus="startCalc(); startTot();" onblur="stopCalc(); stopTot();" size="23" value="<?php echo $VrUnit ?>" readonly="readonly" special='price' /></td>

<td><input name="campo[quant]" type="text" id="quant_<?php echo $x ?>" value='0' style="width:50px" onfocus="startCalc(); startTot();" onblur="stopCalc(); stopTot();" size="5" special='quantity' /></td>

<td><input name="campo[tot]" type="text" id="tot_<?php echo $x ?>" style="width:50px" size="23" readonly="readonly" /> </td>

<?php } /*FECHA for*/

echo "<tr>";

echo "<td colspan='9'>Total s/ Desconto</td>";

echo "<td> <input type='text' name='total' id='total' value='0.00' size='10' readonly='readonly' onfocus='startDesc(); startTot_Desc();' onblur='stopDesc(); stopTot_Desc();' /> </td>";

echo "</tr>";

ech

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Continuando o tópico anterior, minha dúvida é a seguinte: Como recuperar os dados no action do formulário, já que são dinâmicos, possuem o mesmo name em array e cada campo é diferenciado pelo índice.

Abaixo o action que criei e que só recupera o último registro. Preciso que sejam recuperados todos os registros que forem selecionados no respectivo checkbox que tb é dinâmico.

<?php

include "../conexao.php";

$dados = $_POST['campo'];

$sqlProd = mysql_query("SELECT id_produto FROM produto WHERE id_fornecedor=.$dados['idForn]);

$numReg = mysql_num_rows($sqlProd);

$TotSDesc = $_POST['total'];

$Desc = $_POST['txtDesc'];

$VrDesc = $_POST['txtVrDesc'];

$TotPag = $_POST['txtTotPag'];

$Observ = $_POST['txtObserv'];

for($i=0; $i<$numReg; $i++){

echo "<p> Número Pedido: ".$dados['numPed'];

echo "<br/> Id Produto: ".$dados['idProd'];

echo "<br/> Id Fornecedor: ".$dados['idForn'];

echo "<br/> Id Cliente: ".$dados['idCli'];

echo "<br/> Id Usuário: ".$dados['idUsu'];

echo "<br/> Código: ".$dados['cod'];

echo "<br/> Linha: ".$dados['linha'];

echo "<br/> Produto: ".$dados['prod'];

echo "<br/> Conteúdo: ".$dados['cont'];

echo "<br/> Cor: ".$dados['cor'];

echo "<br/> Cód. Barra: ".$dados['codBarra'];

echo "<br/> Valor unitário: ".$dados['unit'];

echo "<br/> Quantidade: ".$dados['quant'];

echo "<br/> Valor Total: ".$dados['tot'];

}

echo "<p> Total S/ Desconto: ".$TotSDesc;

echo "<br/> Desconto: ".$Desc;

echo "<br/> Valor Desconto: ".$VrDesc;

echo "<br/> Total Pagar: ".$TotPag;

echo "<br/> Observação: ".$Observ;

/*Sql para cadastro no banco*/

?>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...