Davidson_N Posted July 10, 2011 Report Share Posted July 10, 2011 (edited) Boa Tarde Galera, estou na duvida na crianção de um Banco de Dados, eu pretendo fazer um projeto de uma loja,e como eu não tenho muito conhecimento ainda.Mas a Dúvida é o seguinte, obs. eu ainda não fiz nenhuma tabela pois a duvida está nela.Eu preciso criar uma tabela de produto, onde vai conter somente a descrição do mesmo.E a tabela de compra onde vai conter o código do produto(da tabela produto) a quantidade comprada e o valor.Nisso eu vou ter uma tabela de estoque que tem que conter os produtos comprados e a quantidade total desse produto.E também uma tabela de venda que vai conter o codigo do produto e quantidade vendida e o valor que foi vendido.Minha dúvida é como eu vou fazer com que a tabela de estoque vai pegar a quantidade da tabela de venda e compra por exemplo:Eu compro um produto x a uma quantidade y, ai isso fica na tabale estoque, e faço uma venda desse produto x por uma quantidade z.Alguém tem alguma sugestão ou dica de como eu consigo fazer isso. Obs. Vou usar o php também.Grato, se alguém ficou com alguma dúvida eu tento explicar melhor. Edited July 23, 2011 by Davidson_N Quote Link to comment Share on other sites More sharing options...
0 Angélica B. Bortolini Posted July 11, 2011 Report Share Posted July 11, 2011 Ola! Davidson_NA tabela estoque será gravada quando houver uma entrada (compra) ou uma saida (venda). Então, quando você for fazer uma venda precisará primeiro ler o ultimo registro da tabela estoque para o produto em questão, onde constará o estoque atual. A partir do valor encontrado, e que se dará a possibilidade da venda , caso o estoque esteja positivo. Ao final quando tu fores gravar a venda, também precisará atualizar o estoque fazendo um novo lançamento reduzindo a quantidade que tu havia encontrado primeiro pela quantidade que tu vendeu. Da mesma forma quando tu fores fazer uma compra, precisara verificar o ultimo registro do estoque, e verificar o valor atual , e apos lançar a compra, deverá atualizar o estoque, lançando um novo registro, com o valor que tu iniciou mais a quantidade comprada.Os comandos SQL que tu vai usar são: SELECT, INSERT (se for usar tabela de compra/venda e tabela de itens, tu vai precisar também do comando UPDATE)Esses comandos vão ser escritos numa variavel que tu criar no PHP, enviados para o banco que tu estiver usando.Espero ter ajudado. Quote Link to comment Share on other sites More sharing options...
0 Denis Courcy Posted July 11, 2011 Report Share Posted July 11, 2011 Ola! Davidson_NA tabela estoque será gravada quando houver uma entrada (compra) ou uma saida (venda). Então, quando você for fazer uma venda precisará primeiro ler o ultimo registro da tabela estoque para o produto em questão, onde constará o estoque atual. A partir do valor encontrado, e que se dará a possibilidade da venda , caso o estoque esteja positivo. Ao final quando tu fores gravar a venda, também precisará atualizar o estoque fazendo um novo lançamento reduzindo a quantidade que tu havia encontrado primeiro pela quantidade que tu vendeu. Da mesma forma quando tu fores fazer uma compra, precisara verificar o ultimo registro do estoque, e verificar o valor atual , e apos lançar a compra, deverá atualizar o estoque, lançando um novo registro, com o valor que tu iniciou mais a quantidade comprada.Os comandos SQL que tu vai usar são: SELECT, INSERT (se for usar tabela de compra/venda e tabela de itens, tu vai precisar também do comando UPDATE)Esses comandos vão ser escritos numa variavel que tu criar no PHP, enviados para o banco que tu estiver usando.Espero ter ajudado.Otimizando o tempo de consulta. Coloca o saldo de quantidade e o saldo de valor na tabela de produto. Assim, Já que você tem que usar o registro de produto de qualquer maneira, seja para compra, seja para a venda, economizará tempo de busca não tendo que ir a tabela de estoque para pegar o último.. Quote Link to comment Share on other sites More sharing options...
0 Davidson_N Posted July 13, 2011 Author Report Share Posted July 13, 2011 (edited) Então pessoal eu entendi maio sou menos, minha estrutura mysql deve ficar assim?create database loja;// Tabela produtos removida//create table produtos(codigo int(10) unsigned not null auto_increment,descricao varchar(80),primary key(codigo));//Tabela estoque editada//create table estoque(codigo int(10) unsigned not null auto_increment,descricao varchar(80),quantidade int(4),primary key(codigo));create table compra(codigo int(10) unsigned not null auto_increment,cod_est int(10),quantidade int(4),valor float,data_compra varchar(10),foreign key (cod_est) references estoque(codigo),primary key(codigo));create table venda(codigo int(10) unsigned not null auto_increment,cod_est int(10),quantidade int(4),valor float,data_venda varchar(10),foreign key (cod_est) references estoque(codigo),primary key(codigo));seria isso mesmo? eu fico na duvida em relação a essa parte por enquanto.Se tiver alguém que possa me ajudar fico grato =DConsegui fazer o que eu queriaos html e php e o mysql estão certinho, os updates estão funcionando certinho.Html: Estoque.html<html> <head><title>Loja - Estoque</title></head> <body> <h3> <center>Estoque</center> </h3> <form name="formulario" method="POST" action="est.php"> <table border=0 align="center"> <tr><td><p align="right">Descrição:</p></td><td><input type="text" name="desc" size="50"> </select></td></tr> </table> <center><input type="submit" value="Enviar"> <input type="reset" value="Limpar"></center> </form> </body> </head> est.php <?php $conexao=mysql_connect("localhost","root",""); if ($conexao) { print "Conexão Ao MySQL Efetuada Com Sucesso! <br>"; } else { print "Falha na Conexão Com o MySQL. Tente Novamente! <br>"; } mysql_select_db("comercio",$conexao); $desc = $_POST["desc"]; $sql1 = "insert into estoque values (null,'$desc','0')"; $resultado = mysql_query($sql1); if ($resultado) { print "Inseridos com Sucesso <br>"; } else { print "Erro na Inserção <br>"; } ?> compra.html <html> <head><title>Loja - Compra</title></head> <body> <h3> <center>Compra</center> </h3> <form name="formulario" method="POST" action="enviarcompra.php"> <table border=0 align="center"> <tr><td><p align="right"> Produto:</p></td><td><select name='prod'><?php $conexao=mysql_connect("localhost","root",""); mysql_select_db("comercio",$conexao); $sql = 'SELECT * FROM estoque'; $resultado = mysql_query($sql,$conexao); while($dados = mysql_fetch_array($resultado)) { echo "<option value='". $dados['codigo'] ."'>". $dados['desc_prod'] ."</option>"; } ?> </select></td> </tr> <tr><td><p align="right">Quantidade:</p></td><td><input type="text" name="quant" maxlength="4" size="4"></td></tr> <tr><td><p align="right">Valor: </p></td><td><input type="text" name="val" maxlength="8" size="8" value="0.0"></td></tr> <tr><td><p align="right">Data da Compra: </p></td><td><input type="text" name="data" maxlength="10" size="10" value="dd/mm/aaaa"></td></tr> </table> <center><input type="submit" value="Enviar"> <input type="reset" value="Limpar"></center> </form> </body> </head> envircompra.php <?php $conexao=mysql_connect("localhost","root",""); if ($conexao) { print "Conexão Ao MySQL Efetuada Com Sucesso! <br>"; } else { print "Falha na Conexão Com o MySQL. Tente Novamente! <br>"; } mysql_select_db("comercio",$conexao); $prod = $_POST["prod"]; $quant = $_POST["quant"]; $val = $_POST["val"]; $data = $_POST["data"]; $sql1 = "insert into compra values (null,'$prod','$quant','$val','$data')"; $resultado = mysql_query($sql1); if ($resultado) { print "Inseridos com Sucesso <br>"; } else { print "Erro na Inserção <br>"; } $sql = "update estoque set quantidade=quantidade+'$quant' where codigo ='$prod'"; $resultado = mysql_query($sql); if ($resultado) { print "Dados Do Cliente Alterado Com Sucesso <br>"; } else { print "Erro Na Alteração Dos Dados Do Cliente <br>"; } ?> venda.html <html> <head><title>Loja - Venda</title></head> <body> <h3> <center>Venda</center> </h3> <form name="formulario" method="POST" action="enviarvenda.php"> <table border=0 align="center"> <tr><td><p align="right"> Produto:</p></td><td><select name='prod'><?php $conexao=mysql_connect("localhost","root",""); mysql_select_db("comercio",$conexao); $sql = 'SELECT * FROM estoque'; $resultado = mysql_query($sql,$conexao); while($dados = mysql_fetch_array($resultado)) { echo "<option value='". $dados['codigo'] ."'>". $dados['desc_prod'] ."</option>"; } ?> </select></td> </tr> <tr><td><p align="right">Quantidade:</p></td><td><input type="text" name="quant" maxlength="4" size="4"></td></tr> <tr><td><p align="right">Valor: </p></td><td><input type="text" name="val" maxlength="8" size="8" value="0.0"></td></tr> <tr><td><p align="right">Data da Compra: </p></td><td><input type="text" name="data" maxlength="10" size="10" value="dd/mm/aaaa"></td></tr> </table> <center><input type="submit" value="Enviar"> <input type="reset" value="Limpar"></center> </form> </body> </head> enviarvenda.php <?php $conexao=mysql_connect("localhost","root",""); if ($conexao) { print "Conexão Ao MySQL Efetuada Com Sucesso! <br>"; } else { print "Falha na Conexão Com o MySQL. Tente Novamente! <br>"; } mysql_select_db("comercio",$conexao); $prod = $_POST["prod"]; $quant = $_POST["quant"]; $val = $_POST["val"]; $data = $_POST["data"]; $sql1 = "insert into venda values (null,'$prod','$val','$quant','$data')"; $resultado = mysql_query($sql1); if ($resultado) { print "Inseridos com Sucesso <br>"; } else { print "Erro na Inserção <br>"; } $sql = "update estoque set quantidade=quantidade-'$quant' where codigo ='$prod'"; $resultado = mysql_query($sql); if ($resultado) { print "Dados Do Cliente Alterado Com Sucesso <br>"; } else { print "Erro Na Alteração Dos Dados Do Cliente <br>"; } ?>Agora eu preciso fazer um select para saber meu lucro, subtraindo o valor da venda pelo valor da compra. Já pesquisei em vários lugar mas não consegui achar um código que chegue perto disso =/, achei vários que fizesse coisas a mais mas nada simples.E esse select eu preciso fazer pelo php e conseguir imprimir ele, também não consegui fazer isso.Se alguém conseguir me ajudar fico grato. Edited July 23, 2011 by Davidson_N Quote Link to comment Share on other sites More sharing options...
Question
Davidson_N
Boa Tarde Galera, estou na duvida na crianção de um Banco de Dados, eu pretendo fazer um projeto de uma loja,
e como eu não tenho muito conhecimento ainda.
Mas a Dúvida é o seguinte, obs. eu ainda não fiz nenhuma tabela pois a duvida está nela.
Eu preciso criar uma tabela de produto, onde vai conter somente a descrição do mesmo.
E a tabela de compra onde vai conter o código do produto(da tabela produto) a quantidade comprada e o valor.
Nisso eu vou ter uma tabela de estoque que tem que conter os produtos comprados e a quantidade total desse produto.
E também uma tabela de venda que vai conter o codigo do produto e quantidade vendida e o valor que foi vendido.
Minha dúvida é como eu vou fazer com que a tabela de estoque vai pegar a quantidade da tabela de venda e compra por exemplo:
Eu compro um produto x a uma quantidade y, ai isso fica na tabale estoque, e faço uma venda desse produto x por uma quantidade z.
Alguém tem alguma sugestão ou dica de como eu consigo fazer isso. Obs. Vou usar o php também.
Grato, se alguém ficou com alguma dúvida eu tento explicar melhor.
Edited by Davidson_NLink to comment
Share on other sites
3 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.