Ir ao conteúdo
  • Cadastre-se

PHP Erro em Salvar Múltiplo Registro no MySql


Posts recomendados

Caros amigos

 

Estou com um problema que não estou conseguindo resolver. Em um Sistema de Cotação Web em PHP, com MySql que estou escrevendo.

 

O problema é o seguinte:

como tenho uma lista de ITENS com várias resposta de fornecedores, estou utilizando um input='radio', para selecionar qual melhor oferta agrada o usuário.

ficou assim:

<input id="id1" type="radio" name="<?php echo $produtoClie; ?>[1][]" class="flat-red"
       value="<?php echo $cotaRespId; ?>" />

<label for="razSoc" style="font-size:14px; color:#07076B;">
       <?php echo '<strong>&nbsp;'.$razaoSocial.'</strong>'; ?>
</label>

<!--
nessa parte name="<?php echo $produtoClie; ?>[1][]" uso para passar no vetor, qual código do produto
correspondente ao item que está sendo respondido.
-->

 

Não sei se estou passando corretamente o caminho no NAME do INPUT, pois preciso salvar na base de dados, isso não está ocorrendo.

 

POR FAVOR, ME AJUDE.

 

Abaixo o código fonte de como está a minha rotina.

 

aqui uso para salvar:

<?php
  //alteraCota.php

  $host="localhost";
  $user="root";
  $pass="";
  $dbname="siscotaweb";
  
  $db = new PDO("mysql::host=$host;dbname=$dbname",$user,$pass);
  
    if(isset($_POST['saveCota'])){
       $idSave = $_POST['cotaRespId'];

      foreach($idSave as $id){
    		$db->exec("UPDATE cotacaoResposta set cotaRespStatus='2' where cotaRespId = ".$id);
      }

        header("Location:painel.php?exe=admin-cliente/unidade/unidade_lista");
    }
	
	
?>

 

Aqui a rotina que mostra para o usuário:

<?php
    if(!isset($_SESSION)){ 
        session_start(); 
    } 
?>
 
<!-- Include_once Executa a chamada apenas uma única vez -->
<?php include_once("sistema/restrito_cliente.php"); ?>
<?php include_once("sistema/validar_user.php"); ?>

<?php include_once("header.php"); ?>

<?php include_once("menu.php");?>     

  <div class="content-wrapper">

    <section class="content-header">
      <h1>Cotação nº.<?php echo $cotaNumero; ?> em Análise</h1>
      <ol class="breadcrumb">
        <li><a href="painel.php?exe=home/home"><i class="fa fa-dashboard"></i> Home</a></li>
        <li class="active">Cotação em Análise</li>
      </ol>
    </section>

    <!-- Main content -->
    <section class="content">
      <!-- Small boxes (Stat box) -->
      <div class="row">             

        <?php 

        //Variável Passada da Página Anterior
        $cotaNumeroGet = isset($_GET['cotaNumero']) ? $_GET['cotaNumero'] : false;
        $cotaNumero    = isset($_POST['cotaNumero']) ? $_POST['cotaNumero'] : $cotaNumeroGet;       

           $cotaStatus = '2'; 

           //Faço a pesquisa através do código ID
           $sql_pegaProd = 'SELECT * FROM cotacao WHERE cotaNumero = :cotaNumero AND cotaStatus = :cotaStatus';

           try{
             $query_pegaProd = $conecta->prepare($sql_pegaProd);
             $query_pegaProd->bindValue(':cotaNumero',$cotaNumero,PDO::PARAM_STR);  
             $query_pegaProd->bindValue(':cotaStatus',$cotaStatus,PDO::PARAM_STR);               
             $query_pegaProd->execute();

             $resultado_pegaProd = $query_pegaProd->fetchAll(PDO::FETCH_ASSOC);

             }catch(PDOexception $error_pegaProd){
                  echo 'Erro ao pegar o Produto'.$error_pegaProd->getMessage();
             }
             
             //Capturo os dados que desejo
             foreach($resultado_pegaProd as $resProd){
                     $cotaId          = $resProd['cotaId'];
                     $cotaNumero      = $resProd['cotaNumero']; 
                     $edCotaDtInicio  = $resProd['cotaDtInicio'];            
                     $edCotaHrsInicio = $resProd['cotaHrsInicio'];                   
                     $edCotaDtFim     = $resProd['cotaDtFim'];  
                     $edCotaHrsFim    = $resProd['cotaHrsFim'];                   
                     $edCotaTitulo    = $resProd['cotaTitulo'];
             }  

        ?>


    <div class="col-md-12">
      <!-- general form elements -->
      <div class="box box-primary">

        <div class="box-header with-border">
          <h3 class="box-title">Título: <?php echo $edCotaTitulo; ?></h3>
        </div>

          <form role="form" name="frm_cota" id="frm_cota" action="" enctype="multipart/form-data" method="POST" >
        
              <div class="box-body">

                <div class="row invoice-info">

                  <div class="col-sm-2 invoice-col">
                    <address>
                      <strong>Data Abertura:</strong><br/>
                       <?php echo date('d-m-Y', strtotime($edCotaDtInicio)); ?>
                    </address>
                  </div>

                  <div class="col-sm-2 invoice-col">
                    <address>
                      <strong>Hora Abertura:</strong><br/>
                        <?php echo $edCotaHrsInicio; date('H:i:s'); ?>
                    </address>
                  </div>        
                  
                  <div class="col-sm-2 invoice-col">
                    <address>
                      <strong>Data de Encerramento:</strong><br/>
                        <?php echo date('d-m-Y', strtotime($edCotaDtFim)); ?>
                    </address>
                  </div>

                  <div class="col-sm-3 invoice-col">
                    <address>
                      <strong>Hora de Encerramento:</strong><br/>
                        <?php echo $edCotaHrsFim; date('H:i:s'); ?>
                    </address>
                  </div>

                  <div class="col-sm-3 invoice-col">
                    <a href="painel.php?exe=admin-cliente/cotacao/cotacao_altDataHrs&cotaNumero=<?php echo $cotaNumero ?>" 
                       type="button" class="btn btn-warning pull-right" style="font-size: 14px;"> Alterar Data e Hora Encerramento</a>
                  </div>
                  
                </div>

              </div>             

          </form>
   

      <div class="col-md-12">          
            
        <div class="box-header"><h3 class="box-title">Itens Cotados</h3></div>

          <form role="form" name="frm_analisar" id="frm_analisar" action="alteraCota.php" enctype="multipart/form-data" method="POST" >            

            <div class="box-body">

              <?php

                  //Traz o Código de Cliente logado
                    $clientes_clienteId = "$userClientes_clienteId";  

                    $sql_pegaAtivos = 'SELECT pro.codProdClie, pro.produtoDescr, pro.apres_unid, 
                                              pro.clientes_clienteId,
                                              cota.cotacao_cotaId, cota.cotaItensId, cota.cotaNumImport,
                                              cota.cotaNumero, cota.codProdClie,cota.cotaQtde, cota.cotaComenta, 
                                              cota.cotaReferencia
                                         FROM cotacaoItens cota
                                   INNER JOIN produto pro ON pro.codProdClie = cota.codProdClie
                                        WHERE pro.clientes_clienteId = :clientes_clienteId 
                                          AND cota.cotaNumero = :cotaNumero                           
                                     ORDER BY cota.cotaItensId ASC';  
                                        
                    try{
                       $query_pegaAtivos = $conecta->prepare($sql_pegaAtivos);
                       $query_pegaAtivos->bindValue(':clientes_clienteId',$clientes_clienteId,PDO::PARAM_STR);
                       $query_pegaAtivos->bindValue(':cotaNumero',$cotaNumero,PDO::PARAM_STR);         
                       $query_pegaAtivos->execute();
                                 
                       $resultado_pegaAtivos = $query_pegaAtivos->fetchAll(PDO::FETCH_ASSOC);
                       $count_pegaAtivos = $query_pegaAtivos->rowCount(PDO::FETCH_ASSOC);

                       }catch(PDOexception $error_pegaAtivos){
                              echo 'Erro ao pegar ativos';
                       }
                                 
                        foreach($resultado_pegaAtivos as $resAtivos){
                                $cotacao_cotaId     = $resAtivos['cotacao_cotaId'];             
                                $clientes_clienteId = $resAtivos['clientes_clienteId'];              
                                $cotaItensId        = $resAtivos['cotaItensId'];  
                                $produtoCota        = $resAtivos['codProdClie'];      
                                $cotaNumero         = $resAtivos['cotaNumero'];                    
                                $cotaNumImport      = $resAtivos['cotaNumImport'];
                                $produtoClie        = $resAtivos['codProdClie'];
                                $cotaQtde           = $resAtivos['cotaQtde'];  
                                $cotaComenta        = $resAtivos['cotaComenta'];        
                                $cotaReferencia     = $resAtivos['cotaReferencia'];
                                $descrProd          = $resAtivos['produtoDescr'];
                                $apresProd          = $resAtivos['apres_unid'];   
                               
              ?>

              <fieldset>

                <div class="box-header with-border" style="background: #E0F2EC;">
                  <h3 class="box-title" style="font-size:18px;">
                    <?php echo '<strong>'.$produtoClie.' - '.$descrProd .'</strong> - Qtde: '.$cotaQtde; ?>
                  </h3> 
                </div>
                      <?php
                          //Traz o Código do Produto
                            $codProdClie = $produtoClie;

                            $sql_pegaAtivos = 'SELECT cl.clienteId, cl.razaoSocial, cl.faturaMinimo,
                                                      cr.cotaRespId, cr.cotaRespQtde, cr.cotaRespVlrUnit,
                                                      cr.cotaRespMarca, cr.codProdClie, cr.cotaRespObs, 
                                                      cr.apres_unid, cr.clientes_clienteId,
                                                      cr.cotacaoItens_cotaItensId, cr.cotaNumero, 
                                                      ci.cotaItensId, ci.codProdClie
                                       FROM cotacaoItens ci
                                 INNER JOIN cotacaoResposta cr ON cr.cotacaoItens_cotaItensId = ci.cotaItensId
                                 INNER JOIN clientes AS cl ON cl.clienteId = cr.clientes_clienteId 
                                      WHERE cr.cotaNumero = :cotaNumero
                                        AND cr.codProdClie = :codProdClie
                                   ORDER BY cr.cotaRespVlrUnit ASC ';  
                                                
                            try{
                               $query_pegaAtivos = $conecta->prepare($sql_pegaAtivos);
                  
                               $query_pegaAtivos->bindValue(':cotaNumero',$cotaNumero,PDO::PARAM_STR);         
                               $query_pegaAtivos->bindValue(':codProdClie',$codProdClie,PDO::PARAM_STR);                                
                               $query_pegaAtivos->execute();
                                         
                               $resultado_pegaAtivos = $query_pegaAtivos->fetchAll(PDO::FETCH_ASSOC);
                               $count_pegaAtivos = $query_pegaAtivos->rowCount(PDO::FETCH_ASSOC);

                               }catch(PDOexception $error_pegaAtivos){
                                      echo 'Erro ao pegar ativos';
                               }
                                         
                            foreach($resultado_pegaAtivos as $resAtivos){
                                 $cotaNumero         = $resAtivos['cotaNumero'];                    
                                 $faturaMinimo       = $resAtivos['faturaMinimo']; 
                                 $cotaRespId         = $resAtivos['cotaRespId'];     
                                 $cotaRespQtde       = $resAtivos['cotaRespQtde'];     
                                 $cotaRespVlrUnit    = $resAtivos['cotaRespVlrUnit'];
                                 $cotaRespMarca      = $resAtivos['cotaRespMarca'];     
                                 $cotaRespObs        = $resAtivos['cotaRespObs'];
                                 $codProdClie        = $resAtivos['codProdClie'];
                                 $apres_unid         = $resAtivos['apres_unid'];
                                 $clientes_clienteId = $resAtivos['clientes_clienteId']; 
                                 $razaoSocial        = $resAtivos['razaoSocial']; 
                            
                      ?>                 

                      <?php

                        //Cálculo para Multiplicar e Somar o Total Geral dos Itens Cotados
                        $fornecedor = "$clientes_clienteId";                       
                        $vrTotal = '0';//Variável recebe a Soma Total

                          $cnx = mysql_connect("localhost", "root", "");
                          mysql_select_db("siscotaweb", $cnx);
                          $sql = "SELECT cotaRespQtde, cotaRespVlrUnit FROM cotacaoResposta
                                                                      WHERE clientes_clienteId = '$fornecedor' 
                                                                        AND codProdClie = $codProdClie
                                                                        AND cotaNumero = '$cotaNumero' ";
                          $result = mysql_query($sql); //Executa a consulta

                          while($row = mysql_fetch_array($result)){
                                $qtde  = number_format($row['cotaRespQtde']); 
                                $valor = floatval(str_replace(",",".",$row['cotaRespVlrUnit'])); 
                                $total = $qtde * $valor;                   
                          }
                            
                      ?>        


                    <div class="box box-default">                   
                      <br/>

                      <input id="id1" type="radio" name="<?php echo $produtoClie; ?>[1][]" class="flat-red"
                             value="<?php echo $cotaRespId; ?>" />

                      <label for="razSoc" style="font-size:14px; color:#07076B;">
                        <?php echo '<strong>&nbsp;'.$razaoSocial.'</strong>'; ?>
                      </label>
               
                        <div class="box-body">
                        
                          <div class="col-sm-3 invoice-col">
                            <address>
                              Espécie:
                              <strong><?php echo $apres_unid; ?></strong>
                            </address>
                          </div>        
                          
                          <div class="col-sm-3 invoice-col">
                            <address>
                              Quantidade:
                              <strong><?php echo $cotaRespQtde; ?></strong>
                            </address>
                          </div>

                          <div class="col-sm-3 invoice-col">
                            <address>
                              Valor Unitário: R$
                              <strong><?php echo number_format($cotaRespVlrUnit, 2, ",", "."); ?></strong>
                            </address>
                          </div>
                          
                          <div class="col-sm-3 invoice-col">
                            <address>
                              Valor Total: R$
                              <strong><?php echo number_format($total, 2, ",", "."); ?></strong>
                            </address>
                          </div>
                          

                          <?php
                            $fornecedor = "$clientes_clienteId"; 
                            
                            $cnx = mysql_connect("localhost", "root", "");
                            mysql_select_db("siscotaweb", $cnx);
                            $sql = "SELECT faturaValor, faturaPrazoEntrega, desc_pgto 
                                                         FROM fatura
                                                        WHERE clientes_clienteId = '$fornecedor' 
                                                          AND faturaCotaNumero = '$cotaNumero' ";
                            $result = mysql_query($sql); //Executa a consulta

                                while($row = mysql_fetch_array($result)){
                                      $faturaPrazoEntrega = $row['faturaPrazoEntrega'];
                                      $desc_pgto = $row['desc_pgto'];
                                      $valor = floatval(str_replace(",",".",$row['faturaValor'])); 
                                      $res = $valor;                   
                                }  
                           
                            if($res == $valor) { ?>

                              <div class="col-sm-3 invoice-col">
                                <address>
                                  Prazo de Entrega:
                                  <strong><?php echo $faturaPrazoEntrega; ?></strong> Dia(s)
                                </address>
                              </div>        
                              
                              <div class="col-sm-6 invoice-col">
                                <address>
                                  Condição de Pagamento:
                                  <strong><?php echo $desc_pgto; ?></strong>
                                </address>
                              </div>

                            <?php  }  ?> 

                              <div class="col-sm-3 invoice-col">
                                <address>
                                  Faturamento Mínimo: R$
                                  <strong><?php echo $faturaMinimo; ?></strong>
                                </address>
                              </div>                            

                          <div class="col-sm-12 invoice-col">
                            <address>
                              Observação:
                              <strong><?php echo $cotaRespObs; ?></strong>
                            </address>
                          </div>                 

                        </div>               
                      </div>

                    </fieldset>

                    <?php } ?><!-- 2º /.Foreach -->
              
                    <fieldset>
                      <div class="col-md-12">
                        <strong>Comentário Sobre a Compra:</strong>
                        <input type="text" id='comenta' name="comenta" size="180" class="form-control"
                               style="width:100%" onkeyup="up(this)" >
                      </div>
                    </fieldset>
                    <hr/>
            
              <?php } ?><!--1º /.Foreach -->

            </div><!-- /.div box -->


          </form>    

              <div style="text-align: right;">
                <input class="btn btn-primary" type="submit" name="saveCota" id="saveCota" value="Salvar" 
                       title="Voltar a Lista de Cotação." />

                <input type="hidden" name="cotaId" value="<?php echo $cotaId; ?>" /> 
                <input type="hidden" name="cotaRespId" value="<?php echo $cotaRespId; ?>" /> 

              </div>
              <br/>        

      </div>



          <div class="box-body">
            <form id="frm_itensCota" name="frm_itensCota" action="" method="post" enctype="multipart/form-data">
              <div style="text-align: right;">
                <input class="btn btn-danger" type="submit" name="voltar" id="voltar" value="Voltar" 
                       onclick="frm_itensCota.action='painel.php?exe=admin-cliente/cotacao/cotacao_lista'; frm_itensCota.submit()" title="Voltar a Lista de Cotação." />

                <input type="hidden" name="cotaId" value="<?php echo $cotaId; ?>" /> 

              </div>
            </form>  
          </div><!-- /.box button -->

          </div><!-- / 1ª. box -->

        </div><!-- /.col -->
            

  </div><!-- fim da row -->
  
 </section>
  

</div>

     
<?php include_once("footer.php");?>

<!--Script para Validar o Formulário -->
<script language="JavaScript" >

    function up(lstr){              //converte minusculas em maiusculas
      var str=lstr.value;           //obtem o valor
      lstr.value=str.toUpperCase(); //converte as strings e retorna ao campo
    }

    //Flat red color scheme for iCheck
    $('input[type="checkbox"].flat-red, input[type="radio"].flat-red').iCheck({
      checkboxClass: 'icheckbox_flat-green',
      radioClass   : 'iradio_flat-green'
    })    

</script>    

 

Por favor, alguém me ajuda entender onde estou errando.

 

Grato,

 

Renato

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...