toarelli Posted May 22, 2018 at 03:59 PM Report #610642 Posted May 22, 2018 at 03:59 PM Caros amigos Como faço para salvar um campo TEXT de um vetor no MySql ? no formulário está assim: <fieldset> <input class="flat-red" type="radio" id="item<?php echo $codProdClie; ?>" name="item[<?php echo $codProdClie; ?>]" value="<?php echo $cotaRespId; ?>" <?php if($cotaRespStatus=='2'){echo 'checked';}?> /> <label for="item<?php echo $codProdClie; ?>" style="font-size:14px; color:#07076B;"> <?php echo '<strong> '.$razaoSocial.'</strong>'; ?> </label> <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/> O campo tipo RADIO consigo gravar no MySql, só não consigo o campo COMENTA, para salvar faço assim: <?php //Salva os Itens Selecionados na Cotação if(isset($_POST['saveCota']) && $_POST['saveCota'] == 'Salvar'){ $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "siscotaweb"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); if(isset($_POST['saveCota'])){ foreach($_POST['item'] as $codProdClie => $value){ $res = mysqli_query($conn, "UPDATE cotacaoResposta set cotaRespStatus = '2' WHERE cotaRespId = '$value' "); } } } //Fim do IF ?> Não consigo entender como gravaria este campo COMENTA na base de dados. Grato, Toarelli
M6 Posted May 22, 2018 at 05:00 PM Report #610643 Posted May 22, 2018 at 05:00 PM mysqli_query($conn, "UPDATE cotacaoResposta set campoComenta = '". $_POST['COMENTA'] ."' WHERE cotaRespId = '$value'"); 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
toarelli Posted May 22, 2018 at 08:37 PM Author Report #610644 Posted May 22, 2018 at 08:37 PM 3 horas atrás, M6 disse: mysqli_query($conn, "UPDATE cotacaoResposta set campoComenta = '". $_POST['COMENTA'] ."' WHERE cotaRespId = '$value'"); Caro amigo Fiz assim, mas não salvou: <?php //Salva os Itens Selecionados na Cotação if(isset($_POST['saveCota']) && $_POST['saveCota'] == 'Salvar'){ $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "siscotaweb"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); if(isset($_POST['saveCota'])){ foreach($_POST['item'] as $codProdClie => $value){ $res = mysqli_query($conn, "UPDATE cotacaoResposta set comenta = '". $_POST['comenta'] ."', cotaRespStatus = '2' WHERE cotaRespId = '$value' "); } } } //Fim do IF ?> Além do campo COMENTA, preciso salvar o cotaRespStatus. Não salvou no banco.
M6 Posted May 23, 2018 at 11:12 AM Report #610648 Posted May 23, 2018 at 11:12 AM Corre esse comando diretamente no MySQL para perceberes se dá algum erro. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
toarelli Posted May 23, 2018 at 06:17 PM Author Report #610661 Posted May 23, 2018 at 06:17 PM Caro amigo Já fiz isso nem se quer grava no mysql.
HappyHippyHippo Posted May 23, 2018 at 08:16 PM Report #610666 Posted May 23, 2018 at 08:16 PM não tens $_POST['item'] determina ai o que tens no $_POST, seja com um muito tradicional var_dump ou usa o xdebug para o fazer. dessa forma vais ver o que estás a fazer de errado IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
toarelli Posted May 23, 2018 at 10:52 PM Author Report #610671 Posted May 23, 2018 at 10:52 PM Caro amigo. o $_POST['item'] vem dessa linha: <input class="flat-red" type="radio" id="item<?php echo $codProdClie; ?>" name="item[<?php echo $codProdClie; ?>]" value="<?php echo $cotaRespId; ?>" <?php if($cotaRespCompra == '1'){echo 'checked';}?> /> <label for="item<?php echo $codProdClie; ?>" style="font-size:14px; color:#07076B;"> <?php echo '<strong> '.$razaoSocial.'</strong>'; ?> </label> Fiz alguma alterações e agora quando mando salvar o campo => cotaRespComenta - grava vazio. O código está assim para salvar: <?php //Salva os Itens Selecionados na Cotação if(isset($_POST['saveCota']) && $_POST['saveCota'] == 'Salvar'){ $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "siscotaweb"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); if(isset($_POST['saveCota'])){ foreach($_POST['item'] as $codProdClie => $value){ $res = mysqli_query($conn, "UPDATE cotacaoResposta set cotaRespComenta = '". $_POST['cotaRespComenta'] ."', cotaRespCompra = '1' WHERE cotaRespId = '$value' "); } } } //Fim do IF ?> O Formulário está assim: <form role="form" name="frm_analisar" id="frm_analisar" action="" enctype="multipart/form-data" method="POST" > <br/> <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.cotaRespStatus, cr.cotacaoItens_cotaItensId, cr.cotaNumero, cr.cotaRespCompra, cr.cotaRespComenta, 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']; $cotaRespCompra = $resAtivos['cotaRespCompra']; $cotaRespComenta = $resAtivos['cotaRespComenta']; $cotaRespStatus = $resAtivos['cotaRespStatus']; $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/> <!-- o $_POST['item'] sai dessa linha --> <input class="flat-red" type="radio" id="item<?php echo $codProdClie; ?>" name="item[<?php echo $codProdClie; ?>]" value="<?php echo $cotaRespId; ?>" <?php if($cotaRespCompra == '1'){echo 'checked';}?> /> <label for="item<?php echo $codProdClie; ?>" style="font-size:14px; color:#07076B;"> <?php echo '<strong> '.$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="cotaRespComenta" name="cotaRespComenta" size="180" class="form-control" style="width:100%" onkeyup="up(this)" > </div> </fieldset> <hr/> <?php } ?><!--1º /.Foreach --> <div style="text-align: right;"> <button type="submit" name="saveCota" id="saveCota" class="btn btn-primary" value="Salvar" > Salvar Cotação </button> <input class="btn btn-danger" type="submit" name="voltar" id="voltar" value="Voltar" onclick="frm_analisar.action='painel.php?exe=admin-cliente/cotacao/cotacao_lista'; frm_analisar.submit()" title="Voltar a Lista de Cotação." /> <input type="hidden" name="cotaRespId" value="<?php echo $cotaRespId;?>" /> <input type="hidden" name="codProdClie" value="<?php echo $codProdClie;?>" /> <input type="hidden" name="cotaNumero" value="<?php echo $cotaNumero;?>" /> </div> <br/>
HappyHippyHippo Posted May 24, 2018 at 08:21 AM Report #610672 Posted May 24, 2018 at 08:21 AM pois ... é o que dá ver o fórum num telemovel, passa sempre algo ao lado faz var_dump (caso não tenhas xdebug) do teu $_POST e verifica se os dados estão mesmo lá IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
toarelli Posted May 25, 2018 at 05:14 PM Author Report #610693 Posted May 25, 2018 at 05:14 PM Caros amigos. Fiz assim para ver o que parecia. <!-- Após o IF, fiz um var_daump para ver o que mostrava --> if(isset($_POST['saveCota']) && $_POST['saveCota'] == 'Salvar'){ echo '<pre>'; var_dump($_POST); echo '</pre>'; exit(); Apareceu isso: array(6) { ["item"]=> array(2) { [101]=> string(1) "3" [105]=> string(1) "5" } ["cotaRespComenta"]=> string(0) "" ["saveCota"]=> string(6) "Salvar" ["cotaRespId"]=> string(1) "4" ["codProdClie"]=> string(3) "105" ["cotaNumero"]=> string(7) "2.00004" } Mesmo preenchendo o campo cotaRespComenta, ainda grava vazio.
washalbano Posted May 25, 2018 at 06:32 PM Report #610694 Posted May 25, 2018 at 06:32 PM Então mano! O conteúdo do <input name="cotaRespComenta"... não está chegando! string(0) é vazio Certifique-se de ter preenchido esse input.
toarelli Posted May 25, 2018 at 08:10 PM Author Report #610695 Posted May 25, 2018 at 08:10 PM Caro amigo. Está sendo preenchido corretamente. Porque passa vazio que não entendo.
washalbano Posted May 26, 2018 at 01:46 AM Report #610697 Posted May 26, 2018 at 01:46 AM Talvez algum javascript esteja limpando o campo antes de submeter certifique-se de que apenas esse input tem esse name verifique se esse input está dentro do <form...> </form> você submete o formulário diretamente ou via ajax?
toarelli Posted May 26, 2018 at 08:29 AM Author Report #610698 Posted May 26, 2018 at 08:29 AM 6 horas atrás, washalbano disse: Talvez algum javascript esteja limpando o campo antes de submeter certifique-se de que apenas esse input tem esse name verifique se esse input está dentro do <form...> </form> você submete o formulário diretamente ou via ajax? Caro amigo Para essa rotina o único JavaScript é para converter letra minúscula em maiúscula. O cotaRespComenta só uso uma vez na pesquisa. Não entendo porque fica vazio.
toarelli Posted May 26, 2018 at 02:25 PM Author Report #610704 Posted May 26, 2018 at 02:25 PM Amigo abaixo o código da rotina que estou escrevendo. como pode ver o cotaRespComenta está dentro de um form, não consigo mais visualizar onde erro. <?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> <?php //Salva os Itens Selecionados na Cotação if(isset($_POST['saveCota']) && $_POST['saveCota'] == 'Salvar'){ $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "siscotaweb"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); foreach($_POST['item'] as $codProdClie => $value){ $res = mysqli_query($conn, "UPDATE cotacaoResposta set cotaRespComenta = '". $_POST['cotaRespComenta'] ."', cotaRespCompra = '1' WHERE cotaRespId = '$value' "); } } ?> <div class="box-header"><h3 class="box-title">Itens Cotados</h3></div> <form role="form" name="frm_analisar" id="frm_analisar" action="" 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.cotaRespStatus, cr.cotacaoItens_cotaItensId, cr.cotaNumero, cr.cotaRespCompra, cr.cotaRespComenta FROM cotacaoResposta cr 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){ $cotaRespId = $resAtivos['cotaRespId']; $cotaRespQtde = $resAtivos['cotaRespQtde']; $cotaRespVlrUnit = $resAtivos['cotaRespVlrUnit']; $cotaRespStatus = $resAtivos['cotaRespStatus']; $cotaRespMarca = $resAtivos['cotaRespMarca']; $cotaRespObs = $resAtivos['cotaRespObs']; $cotaRespCompra = $resAtivos['cotaRespCompra']; $cotaRespComenta = $resAtivos['cotaRespComenta']; $cotaNumero = $resAtivos['cotaNumero']; $codProdClie = $resAtivos['codProdClie']; $apres_unid = $resAtivos['apres_unid']; $clientes_clienteId = $resAtivos['clientes_clienteId']; $razaoSocial = $resAtivos['razaoSocial']; $faturaMinimo = $resAtivos['faturaMinimo']; ?> <?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 class="flat-red" type="radio" id="item<?php echo $codProdClie; ?>" name="item[<?php echo $codProdClie; ?>]" value="<?php echo $cotaRespId; ?>" <?php if($cotaRespCompra == '1'){echo 'checked';}?> /> <label for="item<?php echo $codProdClie; ?>" style="font-size:14px; color:#07076B;"> <?php echo '<strong> '.$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" name="cotaRespComenta[]" size="180" class="form-control" style="width:100%" onkeyup="up(this)" > </div> </fieldset> <hr/> <?php } ?><!--1º /.Foreach --> <div style="text-align: right;"> <button type="submit" name="saveCota" id="saveCota" class="btn btn-primary" value="Salvar" > Salvar Cotação </button> <input class="btn btn-danger" type="submit" name="voltar" id="voltar" value="Voltar" onclick="frm_analisar.action='painel.php?exe=admin-cliente/cotacao/cotacao_lista'; frm_analisar.submit()" title="Voltar a Lista de Cotação." /> <input type="hidden" name="cotaRespId" value="<?php echo $cotaRespId;?>" /> <input type="hidden" name="codProdClie" value="<?php echo $codProdClie;?>" /> <input type="hidden" name="cotaNumero" value="<?php echo $cotaNumero;?>" /> </div> <br/> </div><!-- /.box-body --> </form> </div><!-- / 1ª. box primary --> </div><!-- /.col --> </div><!-- fim da row --> </section> </div><!-- /.content-wrapper --> <?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>
washalbano Posted May 26, 2018 at 07:40 PM Report #610710 Posted May 26, 2018 at 07:40 PM Me add no Telegram aí pra gente trocar uma idéia mais em tempo real.
toarelli Posted May 27, 2018 at 02:10 PM Author Report #610720 Posted May 27, 2018 at 02:10 PM 18 horas atrás, washalbano disse: Me add no Telegram aí pra gente trocar uma idéia mais em tempo real. Caro amigo, fiz a seguinte alteração: de: <fieldset> <div class="col-md-12"> <strong>Comentário Sobre a Compra:</strong> <input type="text" name="cotaRespComenta" size="180" class="form-control" style="width:100%" onkeyup="up(this)" > </div> </fieldset> Para: <fieldset> <div class="col-md-12"> <strong>Comentário Sobre a Compra:</strong> <input type="text" name="cotaRespComenta[]" size="180" class="form-control" style="width:100%" onkeyup="up(this)" > </div> </fieldset> Após isso, quando mandei salvar apareceu assim: array(6) { ["item"]=> array(2) { [101]=> string(1) "3" [105]=> string(1) "5" } ["cotaRespComenta"]=> array(2) { [0]=> string(5) "TESTE" [1]=> string(0) "" } ["saveCota"]=> string(6) "Salvar" ["cotaRespId"]=> string(1) "4" ["codProdClie"]=> string(3) "105" ["cotaNumero"]=> string(7) "2.00004" } O campo cotaRespComenta, passou com valor. Mas quando mandei salvar deu erro de conversão. Não entendi.
washalbano Posted May 27, 2018 at 02:22 PM Report #610722 Posted May 27, 2018 at 02:22 PM Olá! Assim: cotaRespComenta[] O sr. transformou essa variável em um array Desta forma, o sr. espera receber mais de um valor em $_POST['cotaRespComenta'] para gravar mais de um valor, o sr. vai precisar trabalhar esse array no php, para transformá-lo em string, e só então, montar sua query de inserção.
toarelli Posted May 27, 2018 at 04:31 PM Author Report #610725 Posted May 27, 2018 at 04:31 PM Caro amigo. Consegui gravar o campo cotaRespComenta no MySql. Observação: consegui em parte, pois quando adiciono algum texto no campo cotaRespComenta e mando salvar ele grava em todos os campos. Como faço para que seja feito a inclusão apenas no código do produto que estou alterando, como por exemplo: o código do produto 101. Abaixo o código: para salvar: <?php //Salva os Itens Selecionados na Cotação if(isset($_POST['saveCota']) && $_POST['saveCota'] == 'Salvar'){ $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "siscotaweb"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); $cotaRespComenta = $_POST['cotaRespComenta']; $comenta = implode('', $cotaRespComenta); foreach($_POST['item'] as $codProdClie => $value){ $res = mysqli_query($conn, "UPDATE cotacaoResposta set cotaRespComenta = '$comenta', cotaRespCompra = '1' WHERE cotaRespId = '$value' "); } } do formulário: <fieldset> <div class="col-md-12"> <strong>Comentário Sobre a Compra:</strong> <input type="text" name="cotaRespComenta[]" size="180" class="form-control" style="width:100%" onkeyup="up(this)" > </div> </fieldset> o código completo está assim: <?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> <?php //Salva os Itens Selecionados na Cotação if(isset($_POST['saveCota']) && $_POST['saveCota'] == 'Salvar'){ $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "siscotaweb"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); $cotaRespComenta = $_POST['cotaRespComenta']; $comenta = implode('', $cotaRespComenta); foreach($_POST['item'] as $codProdClie => $value){ $res = mysqli_query($conn, "UPDATE cotacaoResposta set cotaRespComenta = '$comenta', cotaRespCompra = '1' WHERE cotaRespId = '$value' "); } } ?> <div class="box-header"><h3 class="box-title">Itens Cotados</h3></div> <form role="form" name="frm_analisar" id="frm_analisar" action="" 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.cotaRespStatus, cr.cotacaoItens_cotaItensId, cr.cotaNumero, cr.cotaRespCompra, cr.cotaRespComenta FROM cotacaoResposta cr 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){ $cotaRespId = $resAtivos['cotaRespId']; $cotaRespQtde = $resAtivos['cotaRespQtde']; $cotaRespVlrUnit = $resAtivos['cotaRespVlrUnit']; $cotaRespStatus = $resAtivos['cotaRespStatus']; $cotaRespMarca = $resAtivos['cotaRespMarca']; $cotaRespObs = $resAtivos['cotaRespObs']; $cotaRespCompra = $resAtivos['cotaRespCompra']; $cotaRespComenta = $resAtivos['cotaRespComenta']; $cotaNumero = $resAtivos['cotaNumero']; $codProdClie = $resAtivos['codProdClie']; $apres_unid = $resAtivos['apres_unid']; $clientes_clienteId = $resAtivos['clientes_clienteId']; $razaoSocial = $resAtivos['razaoSocial']; $faturaMinimo = $resAtivos['faturaMinimo']; ?> <?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 class="flat-red" type="radio" id="item<?php echo $codProdClie; ?>" name="item[<?php echo $codProdClie; ?>]" value="<?php echo $cotaRespId; ?>" <?php if($cotaRespCompra == '1'){echo 'checked';}?> /> <label for="item<?php echo $codProdClie; ?>" style="font-size:14px; color:#07076B;"> <?php echo '<strong> '.$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" name="cotaRespComenta[]" size="180" class="form-control" style="width:100%" onkeyup="up(this)" > </div> </fieldset> <hr/> <?php } ?><!--1º /.Foreach --> <div style="text-align: right;"> <button type="submit" name="saveCota" id="saveCota" class="btn btn-primary" value="Salvar" > Salvar Cotação </button> <input class="btn btn-danger" type="submit" name="voltar" id="voltar" value="Voltar" onclick="frm_analisar.action='painel.php?exe=admin-cliente/cotacao/cotacao_lista'; frm_analisar.submit()" title="Voltar a Lista de Cotação." /> <input type="hidden" name="cotaNumero" value="<?php echo $cotaNumero;?>" /> </div> <br/> </div><!-- /.box-body --> </form> </div><!-- / 1ª. box primary --> </div><!-- /.col --> </div><!-- fim da row --> </section> </div><!-- /.content-wrapper --> <?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>
toarelli Posted May 27, 2018 at 05:13 PM Author Report #610726 Posted May 27, 2018 at 05:13 PM 2 horas atrás, washalbano disse: Olá! Assim: cotaRespComenta[] O sr. transformou essa variável em um array Desta forma, o sr. espera receber mais de um valor em $_POST['cotaRespComenta'] para gravar mais de um valor, o sr. vai precisar trabalhar esse array no php, para transformá-lo em string, e só então, montar sua query de inserção. Caro amigo. Desculpa minha burrice em recorrer tanto a sua ajuda. Caso queira, te envio o código do Sistema de Cotação que estou escrevendo, para que o amigo possa entender onde está o erro que me deixa maluco. te envio por e-mail.
washalbano Posted May 27, 2018 at 05:30 PM Report #610727 Posted May 27, 2018 at 05:30 PM Frmz mano! Já te ajudei pelo Telegram certa vez, vamos trocar idéia por lá... vamos com calma testar cada possibilidade até alcançarmos uma solução Vamos só trocar idéia até resolver o mistério.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now