lorranaas 0 Denunciar post Postado Maio 4, 2016 Pessoal Tenho três tabelas no meu BD: CREATE TABLE tab_entradaestoque( id int auto_increment primary key not null, nomeproduto varchar(100) not null, codigoproduto varchar(12) not null, nomefornecedor varchar(100) not null, valorunitario float(10) not null, quantidade int not null, nfiscal int not null, data_cadastro timestamp default CURRENT_TIMESTAMP ); CREATE TABLE tab_controleestoque( id int auto_increment primary key not null, nomeproduto varchar(100) not null, codigoproduto varchar(12) not null, quantidadetotal int not null, quantidadeentrante int not null, quantidadesaida int not null ); CREATE TABLE tab_produtoestoque( id int auto_increment primary key not null, nome varchar(100) not null, tipo varchar(100) not null, codigo varchar(12) not null, categoria varchar(15) not null, data_cadastro timestamp default CURRENT_TIMESTAMP ); No meu código, toda vez que insiro o produto na tab_produtoestoque, já jogo o produto para a tab_controleestoque. Só que toda vez que eu atualizo a quantidade da tab_entradaestoque, eu preciso atualizar a quantidade entrante e quantidade saida da tab_controleestoque, sendo somando com o valor anterior (que já estava antes da entrada). Como posso fazer isso???? Segue meu código: action_entradaestoque <html> <head> <meta charset="utf-8"> <title>L's Food - Registro de Entrada - Estoque</title> <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="css/custom.css"> </head> <body> <div class='container box-mensagem-crud'> <?php require 'conexao.php'; // Atribui uma conexão PDO $conexao = conexao::getInstance(); // Recebe os dados enviados pela submissão $acao = (isset($_POST['acao'])) ? $_POST['acao'] : ''; $nome = (isset($_POST['nome'])) ? $_POST['nome'] : ''; $valor = (isset($_POST['valor'])) ? $_POST['valor'] : ''; $codigo = (isset($_POST['codigo'])) ? $_POST['codigo'] : ''; $quantidade = (isset($_POST['quantidade'])) ? $_POST['quantidade'] : ''; $nfiscal = (isset($_POST['nfiscal'])) ? $_POST['nfiscal'] : ''; $categoria = (isset($_POST['categoria'])) ? $_POST['categoria'] : ''; // Valida os dados recebidos if ($acao != 'excluir' && $acao != 'editar'): if ($nome == '' || strlen($nome) < 3): $mensagem .= '<li>Favor preencher o Nome.</li>'; endif; if ($codigo == ''): $mensagem .= '<li>Favor preencher o Código.</li>'; endif; if ($categoria == ''): $mensagem .= '<li>Favor preencher a Categoria.</li>'; endif; if ($nfiscal == ''): $mensagem .= '<li>Favor preencher o Número da Nota Fiscal de Compra.</li>'; endif; if ($quantidade == ''): $mensagem .= '<li>Favor preencher a Quantidade.</li>'; endif; if ($valor == ''): $mensagem .= '<li>Favor preencher o Valor Unitário.</li>'; endif; if ($mensagem != ''): $mensagem = '<ul>' . $mensagem . '</ul>'; echo "<div class='alert alert-danger' role='alert'>".$mensagem."</div> "; exit; endif; endif; // Verifica se foi solicitada a inclusão de dados if ($acao == 'editar'): $sql = 'INSERT INTO tab_entradaestoque (nomeproduto, codigoproduto, valorunitario, nomefornecedor, quantidade, nfiscal) VALUES(:nome, :codigo, :valor, :categoria, :quantidade, :nfiscal)'; $stm = $conexao->prepare($sql); $stm->bindValue(':nome', $nome); $stm->bindValue(':codigo', $codigo); $stm->bindValue(':categoria', $categoria); $stm->bindValue(':valor', $valor); $stm->bindValue(':quantidade', $quantidade); $stm->bindValue(':nfiscal', $nfiscal); $retorno = $stm->execute(); // $sql = "UPDATE tab_controleestoque SET quantidadeentrante='$quantidade' WHERE nome_produto = $nome"; // $stm = $conexao->prepare($sql); //$retorno = $stm->execute(); if ($retorno): echo "<div class='alert alert-success' role='alert'>Entrada registrada com sucesso!</div> "; else: echo "<div class='alert alert-danger' role='alert'>Erro ao inserir entrada!</div> "; endif; echo "<meta http-equiv=refresh content='3;URL=indexprodutoestoque.php'>"; endif; ?> </div> </body> </html> entradaprodutoestoque <!DOCTYPE html> <html> <head> <title> L's Food - Registro de Entrada - Estoque </title> <Meta http-equiv = "Content-Type" content = "charset = UTF-8" /> <!-- JQUERY --> <script type="text/javascript" src="bootstrap-3.3.4-dist/js/jquery-1.11.3.min.js"></script> <script type="text/javascript" src="bootstrap-3.3.4-dist/js/jquery-1.11.3.js"></script> <!-- TWITTER BOOTSTRAP CSS --> <link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap.css"> <link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap.min.css"> <link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap-theme.css"> <link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap-theme.min.css"> <!-- TWITTER BOOTSTRAP JS --> <script type="text/javascript" src="bootstrap-3.3.4-dist/js/bootstrap.js"></script> <script type="text/javascript" src="bootstrap-3.3.4-dist/js/bootstrap.min.js"></script> </head> <body> <div id="main"> <nav id="nav" class="navbar navbar-default navbar-fixed-top"> <div class="container-fluid"> <div class="navbar-header"> <a class="navbar-brand" href="Home.html" style="padding-top: 10px;"> <img alt="Brand" src="images/logoMenu.jpg"> </a> </div> <div class="collapse navbar-collapse"> <ul class="nav navbar-nav"> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Cadastros <span class="caret"></span></a> <ul class="dropdown-menu" aria-labelledby="dropdownMenu"> <li><a href="http://localhost:8024/sistema/cadastro.php">Cadastrar Cliente</a></li> <li><a href="http://localhost:8024/sistema/cadastrofornecedor.php">Cadastrar Fornecedor</a></li> <li><a href="http://localhost:8024/sistema/cadastroprodutoestoque.php">Cadastrar Produto - Estoque</a></li> <li><a href="http://localhost:8024/sistema/cadastroproduto.php">Cadastrar Produto - Venda</a></li> <li><a href="http://localhost:8024/sistema/cadastrousuario.php">Cadastrar Usuário</a></li> <li><a href="http://localhost:8024/sistema/index.php">Consultar Cliente </a></li> <li><a href="http://localhost:8024/sistema/indexfornecedor.php">Consultar Fornecedor </a></li> <li><a href="http://localhost:8024/sistema/indexprodutoestoque.php">Consultar Produto - Estoque</a></li> <li><a href="http://localhost:8024/sistema/indexproduto.php">Consultar Produto - Venda</a></li> <li><a href="http://localhost:8024/sistema/indexusuario.php">Consultar Usuário</a></li> </ul> </li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Lançamentos <span class="caret"></span></a> <ul class="dropdown-menu" aria-labelledby="dropdownMenu"> <li><a href="http://localhost:8024/LsFood/EfetuarVenda.php">Lançar Venda </a></li> </ul> </li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Relatórios <span class="caret"></span></a> <ul class="dropdown-menu" aria-labelledby="dropdownMenu"> <li><a href="http://localhost:8024/LsFood/CadastroProduto.html">Cadastro de Produto </a></li> <li><a href="http://localhost:8024/LsFood/CadastroProduto.html">Controle de Saída </a></li> <li><a href="http://localhost:8024/LsFood/CadastroProduto.html">Faturamento </a></li> </ul> </li> <button type="button" onClick="Logout()" style="margin-top:11px;margin-left: 888px;">Sair</button> </ul> </div> </div> </nav> </div> </nav> </body> </html> <style type="text/css"> ul.nav li.dropdown:hover ul.dropdown-menu{ display: block; } #main{ min-height: 30%; margin: 0 auto 55px; } </style> <?php include 'conexao.php'; // Recebe o id do produto via GET $id_cliente = (isset($_GET['id'])) ? $_GET['id'] : ''; // Valida se existe um id e se ele é numérico if (!empty($id_cliente) && is_numeric($id_cliente)): // Captura os dados do cliente solicitado $conexao = conexao::getInstance(); $sql = "SELECT id, nome, codigo, categoria FROM tab_produtoestoque WHERE id = :id"; $stm = $conexao->prepare($sql); $stm->bindValue(':id', $id_cliente); $stm->execute(); $cliente = $stm->fetch(PDO::FETCH_OBJ); endif; ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="css/custom.css"> </head> <body> <div class='container'> <fieldset> <legend><h1>Formulário - Registrar Entrada - Estoque</h1></legend> <?php if(empty($cliente)):?> <h3 class="text-center text-danger">Cliente não encontrado!</h3> <?php else: ?> <form action="action_entradaestoque.php" method="post" id='form-contato' enctype='multipart/form-data'> <div class="form-group"> <label for="nome">Nome</label> <input type="text" class="form-control" id="nome" name="nome" value="<?=$cliente->nome?>" placeholder="Infome o Nome" disabled> <span class='msg-erro msg-nome'></span> </div> <div class="form-group"> <label for="codigo">Código</label> <input type="text" disableD class="form-control" id="codigo" maxlength="12" name="codigo" value="<?=$cliente->codigo?>" placeholder="Informe o Código"> <span class='msg-erro msg-codigo'></span> </div> <div class="form-group"> <label for="valor">Valor Unitário</label> <input type="valor" class="form-control" id="valor" name="valor" placeholder="Informe o Valor Unitário"> <span class='msg-erro msg-valor'></span> </div> <div class="form-group"> <label for="quantidade">Quantidade </label> <input type="quantidade" class="form-control" id="quantidade" name="quantidade" placeholder="Informe a Quantidade Adquirida"disable> <span class='msg-erro msg-quantidade'></span> </div> <div class="form-group"> <label for="nfiscal">Nº Nota Fiscal </label> <input type="nfiscal" class="form-control" id="nfiscal" maxlength="15" name="nfiscal" placeholder="Informe o Nº da Nota Fiscal de Compra"> <span class='msg-erro msg-nfiscal'></span> </div> <div class="form-group"> <label for="categoria">Fornecedor</label> <select class="form-control" name="categoria" id="categoria"> <option value="">Selecione o Fornecedor</option> <?php $sql = "select nome from tab_fornecedor"; $rs = mysql_query($sql); while ($reg = mysql_fetch_object($rs) ){ echo "<option value=$reg->nome </option>"; } ?> </select> </div> <input type="hidden" name="acao" value="editar"> <input type="hidden" name="id" value="<?=$cliente->id?>"> <button type="submit" class="btn btn-primary" id='botao'> Gravar </button> <a href='indexprodutoestoque.php' class="btn btn-danger">Cancelar</a> </form> <?php endif; ?> </fieldset> </div> <script type="text/javascript" src="js/custons.js"></script> </body> </html> cadastroprodutoestoque <!DOCTYPE html> <html> <head> <title> L's Food - Cadastro Produto Estoque </title> <Meta http-equiv = "Content-Type" content = "charset = UTF-8" /> <!-- JQUERY --> <script type="text/javascript" src="bootstrap-3.3.4-dist/js/jquery-1.11.3.min.js"></script> <script type="text/javascript" src="bootstrap-3.3.4-dist/js/jquery-1.11.3.js"></script> <!-- TWITTER BOOTSTRAP CSS --> <link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap.css"> <link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap.min.css"> <link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap-theme.css"> <link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap-theme.min.css"> <!-- TWITTER BOOTSTRAP JS --> <script type="text/javascript" src="bootstrap-3.3.4-dist/js/bootstrap.js"></script> <script type="text/javascript" src="bootstrap-3.3.4-dist/js/bootstrap.min.js"></script> </head> <body> <div id="main"> <nav id="nav" class="navbar navbar-default navbar-fixed-top"> <div class="container-fluid"> <div class="navbar-header"> <a class="navbar-brand" href="Home.html" style="padding-top: 10px;"> <img alt="Brand" src="images/logoMenu.jpg"> </a> </div> <div class="collapse navbar-collapse"> <ul class="nav navbar-nav"> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Cadastros <span class="caret"></span></a> <ul class="dropdown-menu" aria-labelledby="dropdownMenu"> <li><a href="http://localhost:8024/sistema/cadastro.php">Cadastrar Cliente</a></li> <li><a href="http://localhost:8024/sistema/cadastrofornecedor.php">Cadastrar Fornecedor</a></li> <li><a href="http://localhost:8024/sistema/cadastroprodutoestoque.php">Cadastrar Produto - Estoque</a></li> <li><a href="http://localhost:8024/sistema/cadastroproduto.php">Cadastrar Produto - Venda</a></li> <li><a href="http://localhost:8024/sistema/cadastrousuario.php">Cadastrar Usuário</a></li> <li><a href="http://localhost:8024/sistema/index.php">Consultar Cliente </a></li> <li><a href="http://localhost:8024/sistema/indexfornecedor.php">Consultar Fornecedor </a></li> <li><a href="http://localhost:8024/sistema/indexprodutoestoque.php">Consultar Produto - Estoque</a></li> <li><a href="http://localhost:8024/sistema/indexproduto.php">Consultar Produto - Venda</a></li> <li><a href="http://localhost:8024/sistema/indexusuario.php">Consultar Usuário</a></li> </ul> </li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Lançamentos <span class="caret"></span></a> <ul class="dropdown-menu" aria-labelledby="dropdownMenu"> <li><a href="http://localhost:8024/LsFood/EfetuarVenda.php">Lançar Venda </a></li> </ul> </li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Relatórios <span class="caret"></span></a> <ul class="dropdown-menu" aria-labelledby="dropdownMenu"> <li><a href="http://localhost:8024/LsFood/CadastroProduto.html">Cadastro de Produto </a></li> <li><a href="http://localhost:8024/LsFood/CadastroProduto.html">Controle de Saída </a></li> <li><a href="http://localhost:8024/LsFood/CadastroProduto.html">Faturamento </a></li> </ul> </li> <button type="button" onClick="Logout()" style="margin-top:11px;margin-left: 888px;">Sair</button> </ul> </div> </div> </nav> </div> </nav> </body> </html> <style type="text/css"> ul.nav li.dropdown:hover ul.dropdown-menu{ display: block; } #main{ min-height: 30%; margin: 0 auto 55px; } </style> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Cadastro de Produto </title> <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="css/custom.css"> </head> <body> <div class='container'> <fieldset> <legend><h1>Formulário - Cadastro de Produto - Estoque</h1></legend> <form action="action_produtoestoque.php" method="post" id='form-contato' enctype='multipart/form-data'> <div class="form-group"> <label for="tipo">Tipo de Produto</label> <select class="form-control" name="tipo" id="tipo"> <option value="">Selecione o Tipo do Produto </option> <option value="Acucar">Açúcar</option> <option value="Arroz">Arroz</option> <option value="Café">Café</option> <option value="Carne">Carne</option> <option value="Cerveja">Cerveja</option> <option value="Doce">Doce</option> <option value="Farinha">Farinha</option> <option value="Feijao">Feijão</option> <option value="Molho">Molho de Tomate</option> <option value="Oleo">Óleo</option> <option value="Refrigerante">Refrigerante</option> <option value="Tempeiro">Tempeiro</option> <option value="verdura">Verdura</option> <option value="Vinho">Vinho</option> </select> <span class='msg-erro msg-categoria'></span> </div> <div class="form-group"> <label for="nome">Nome</label> <input type="text" class="form-control" id="nome" name="nome" placeholder="Infome o Nome do Produto"> <span class='msg-erro msg-nome'></span> </div> <div class="form-group"> <label for="codigo">Codigo</label> <input type="codigo" class="form-control" id="codigo" maxlength="14" name="codigo" placeholder="Informe o Código"> <span class='msg-erro msg-codigo'></span> </div> <div class="form-group"> <label for="categoria">Categoria</label> <select class="form-control" name="categoria" id="categoria"> <option value="">Selecione a Categoria </option> <option value="Alimento">Alimento</option> <option value="Bebida">Bebida</option> </select> <span class='msg-erro msg-categoria'></span> </div> <input type="hidden" name="acao" value="incluir"> <button type="submit" class="btn btn-primary" id='botao'> Gravar </button> <a href='indexprodutoestoque.php' class="btn btn-danger">Cancelar</a> </form> </fieldset> </div> <script type="text/javascript" src="js/custom.js"></script> </body> </html> action_produtoestoque <html> <head> <meta charset="utf-8"> <title>L's Food - Cadastro Produto - Estoque</title> <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="css/custom.css"> </head> <body> <div class='container box-mensagem-crud'> <?php require 'conexao.php'; // Atribui uma conexão PDO $conexao = conexao::getInstance(); // Recebe os dados enviados pela submissão $acao = (isset($_POST['acao'])) ? $_POST['acao'] : ''; $id = (isset($_POST['id'])) ? $_POST['id'] : ''; $tipo = (isset($_POST['tipo'])) ? $_POST['tipo'] : ''; $nome = (isset($_POST['nome'])) ? $_POST['nome'] : ''; $codigo = (isset($_POST['codigo'])) ? $_POST['codigo'] : ''; $categoria = (isset($_POST['categoria'])) ? $_POST['categoria'] : ''; // Valida os dados recebidos $mensagem = ''; if ($acao == 'editar' && $id == ''): $mensagem .= '<li>ID do registros desconhecido.</li>'; endif; // Se for ação diferente de excluir valida os dados obrigatórios if ($acao != 'excluir'): if ($nome == '' || strlen($nome) < 3): $mensagem .= '<li>Favor preencher o Nome.</li>'; endif; if ($codigo == ''): $mensagem .= '<li>Favor preencher o Código.</li>'; endif; if ($categoria == ''): $mensagem .= '<li>Favor preencher a Categoria.</li>'; endif; if ($mensagem != ''): $mensagem = '<ul>' . $mensagem . '</ul>'; echo "<div class='alert alert-danger' role='alert'>".$mensagem."</div> "; exit; endif; endif; // Verifica se foi solicitada a inclusão de dados if ($acao == 'incluir'): $sql = 'INSERT INTO tab_produtoestoque (nome, codigo, categoria, tipo) VALUES(:nome, :codigo, :categoria, :tipo)'; $stm = $conexao->prepare($sql); $stm->bindValue(':nome', $nome); $stm->bindValue(':codigo', $codigo); $stm->bindValue(':categoria', $categoria); $stm->bindValue(':tipo', $tipo); $retorno = $stm->execute(); $sql = 'INSERT INTO tab_controleestoque (nomeproduto, codigoproduto) VALUES(:nome, :codigo)'; $stm = $conexao->prepare($sql); $stm->bindValue(':nome', $nome); $stm->bindValue(':codigo', $codigo); $retorno = $stm->execute(); if ($retorno): echo "<div class='alert alert-success' role='alert'>Cadastro realizado com sucesso!</div> "; else: echo "<div class='alert alert-danger' role='alert'>Erro ao inserir cadastro!</div> "; endif; echo "<meta http-equiv=refresh content='3;URL=indexprodutoestoque.php'>"; endif; // Verifica se foi solicitada a edição de dados if ($acao == 'editar'): $sql = "UPDATE tab_produtoestoque SET nome='$nome', codigo='$codigo', categoria='$categoria' WHERE id = $id"; $stm = $conexao->prepare($sql); $stm->bindValue(':nome', $nome); $stm->bindValue(':codigo', $email); $stm->bindValue(':categoria', $categoria); $retorno = $stm->execute(); if ($retorno): echo "<div class='alert alert-success' role='alert'>Cadastro editado com sucesso!</div> "; else: echo "<div class='alert alert-danger' role='alert'>Erro ao editar cadastro!</div> "; endif; echo "<meta http-equiv=refresh content='3;URL=indexprodutoestoque.php'>"; endif; // Verifica se foi solicitada a exclusão dos dados if ($acao == 'excluir'): // Exclui o registro do banco de dados $sql Controle= 'DELETE FROM tab_produtoestoque WHERE id = :id'; $stm = $conexao->prepare($sql); $stm->bindValue(':id', $id); $retorno = $stm->execute(); if ($retorno): echo "<div class='alert alert-success' role='alert'>Cadastro excluído com sucesso!</div> "; else: echo "<div class='alert alert-danger' role='alert'>Erro ao excluir cadastro!</div> "; endif; echo "<meta http-equiv=refresh content='3;URL=indexprodutoestoque.php'>"; endif; ?> </div> </body> </html> Compartilhar este post Link para o post Compartilhar em outros sites
marlon255 2 Denunciar post Postado Maio 4, 2016 Bem simples, vamos seguir a logica. Você necessita que quando entrar insumos a tebela de controle tbm atualize qndo entrar, primeiro faça um select na tabela de controle depois pegue o valor que ja esta no campo, crie uma variavel com o valor recuperado+valor adicionado e faça o update na tabela necessaria... Espero ter ajudado :) Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 4, 2016 Lembrando que funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/ ;) Compartilhar este post Link para o post Compartilhar em outros sites