Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Cristyan Alves

Sistema de vendas

Recommended Posts

eae galera,

 

seguinte

 

Estou fazendo um trabalho do meu curso onde tenho que criar um sistema de vendas para uma loja de roupas (NÃO é uma loja virtual),criei uma form onde receberá o codigo do produto e a quantidade a ser vendida ao clicar no botão adicionar, ele adiciona a descrição do produto em uma tabela, segue a foto para que vcs possam entender o que estou falando:

Sem+t%25C3%25ADtulo.png

O problema e que quando clico em adicionar a linha onde está o produto "calça" ao inves de imprimir uma nova linha...

 

 

o trecho do codigo que faz isso é esse:(está incompleto pois não terminei de colocar os campos da tabela)

<form action="CadastraVenda.php" method="post">
<table border="1">
<tr><td colspan="2" align="center">adicionar produto</td></tr>
<tr><td>Código Produto</td><td>Quantidade</td></tr>
<tr>
	<td><input type="int" name="cod_produto" style="width:80px"/></td>
	<td><input type="int" name="qtde_venda"style="width:80px"/></td>
	<tr><td colspan='2' align="right"><input type="submit" value="adicionar" name="adicionar"/></td></tr>
</tr>
</table>
</form>
<br/>

<table border="1">
<tr><td colspan="5" align="center">resumo</td></tr>
<tr><td>      </td><td>Produto</td><td>preço</td><td>Quant.</td><td>Total</td></tr>
<?php
//error_reporting(0);

if(isset($_POST['adicionar'])){
	if(!isset($_SESSION['qproduto']))
		$_SESSION['qproduto'] = 1;
	$cod_produto = $_POST['cod_produto'];
	$qtde_venda = $_POST['qtde_venda'];
	$consulta = mysql_query("select * from produtos where 	cod_produto='$cod_produto'");
	while($linha = mysql_fetch_assoc($consulta)) {
		echo "<tr><td>".$_SESSION['qproduto']."</td><td>".$linha['descricao']."</td></tr>";
	}
	$_SESSION['qproduto']++;

	
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o ID do produto "calça" no banco?

o id do produto e 123

 

 

Voce ta falando que não adiciona outra linha?

 

É porque você precisa fazer em ajax.

 

Vou fazer um exemplo rapidinho

Ok fico aguardando...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui vai

 

Esse seria o principal

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>amCharts examples</title>
         <script src="//code.jquery.com/jquery-1.10.2.js"></script>
        <script type="text/javascript">
		$(document).ready(function() {
			$('.adicionar').click(function(){
				var quantidade = $("#qtd").val();
				var codigo	   = $("#cod").val();
				$.ajax({
							type: "POST",
							url: "CadastraVenda.php",
							data: "quantidade="+quantidade+"&codigo="+codigo,
							dataType: "html",
							success: function(xml){
								$(".resultado").append(xml);
								
							},
							error: function(){
								alert("Erro inserir lembrete!");
							}
						});
			});
		});
		</script>
	</head>
	<body>
		<form action="calca.php" method="post">
			<table border="1">
			<tr><td colspan="2" align="center">adicionar produto</td></tr>
			<tr><td>Código Produto</td><td>Quantidade</td></tr>
			<tr>
				<td><input type="input" name="cod_produto" style="width:80px" id="cod"/></td>
				<td><input type="input" name="qtde_venda"style="width:80px" id="qtd"/></td>
				<tr><td colspan='2' align="right"><input type="button" value="adicionar" name="adicionar" class="adicionar"/></td></tr>
			</tr>
			</table>
			</form>
			<br/>
			<table class="resultado">
				<tr><td colspan="5">Resuno</td></tr>
				<tr><td>      </td><td>Produto</td><td>Preço</td><td>Quantidade</td><td>Total</td></tr>
			</div>
		</body>

Aqui outro arquivo chamado CadastraVenda.php tem que salvar separado


<?php
$id = $_POST['codigo'];
$qtd = $_POST['quantidade'];
$preco = "$ ".rand(0,9).",00";
/* Troca essas variaveis $id e $qtd por essa consulta sua.
$_SESSION['qproduto'] = 1;
$cod_produto = $_POST['cod_produto'];
$qtde_venda = $_POST['qtde_venda'];
$consulta = mysql_query("select * from produtos where cod_produto='$cod_produto'");
while($linha = mysql_fetch_assoc($consulta)) {
//echo "<tr><td>".$_SESSION['qproduto']."</td><td>".$linha['descricao']."</td></tr>"; esse echo voce preenche assim mesmo, mas aconselho a fazer com todos os td que possam existir, por mais que voce não tenha dados para preencher.
}
*/
echo "<tr><td>$id</td><td>Calça</td><td>$preco</td><td align='center'>$qtd</td><td>$preco</td></tr>";
?>

Escrevi os comentarios no segundo arquivo, qualquer coisa me fala.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui vai

 

Esse seria o principal

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>amCharts examples</title>
         <script src="//code.jquery.com/jquery-1.10.2.js"></script>
        <script type="text/javascript">
		$(document).ready(function() {
			$('.adicionar').click(function(){
				var quantidade = $("#qtd").val();
				var codigo	   = $("#cod").val();
				$.ajax({
							type: "POST",
							url: "CadastraVenda.php",
							data: "quantidade="+quantidade+"&codigo="+codigo,
							dataType: "html",
							success: function(xml){
								$(".resultado").append(xml);
								
							},
							error: function(){
								alert("Erro inserir lembrete!");
							}
						});
			});
		});
		</script>
	</head>
	<body>
		<form action="calca.php" method="post">
			<table border="1">
			<tr><td colspan="2" align="center">adicionar produto</td></tr>
			<tr><td>Código Produto</td><td>Quantidade</td></tr>
			<tr>
				<td><input type="input" name="cod_produto" style="width:80px" id="cod"/></td>
				<td><input type="input" name="qtde_venda"style="width:80px" id="qtd"/></td>
				<tr><td colspan='2' align="right"><input type="button" value="adicionar" name="adicionar" class="adicionar"/></td></tr>
			</tr>
			</table>
			</form>
			<br/>
			<table class="resultado">
				<tr><td colspan="5">Resuno</td></tr>
				<tr><td>      </td><td>Produto</td><td>Preço</td><td>Quantidade</td><td>Total</td></tr>
			</div>
		</body>

Aqui outro arquivo chamado CadastraVenda.php tem que salvar separado

<?php
$id = $_POST['codigo'];
$qtd = $_POST['quantidade'];
$preco = "$ ".rand(0,9).",00";
/* Troca essas variaveis $id e $qtd por essa consulta sua.
$_SESSION['qproduto'] = 1;
$cod_produto = $_POST['cod_produto'];
$qtde_venda = $_POST['qtde_venda'];
$consulta = mysql_query("select * from produtos where cod_produto='$cod_produto'");
while($linha = mysql_fetch_assoc($consulta)) {
//echo "<tr><td>".$_SESSION['qproduto']."</td><td>".$linha['descricao']."</td></tr>"; esse echo voce preenche assim mesmo, mas aconselho a fazer com todos os td que possam existir, por mais que voce não tenha dados para preencher.
}
*/
echo "<tr><td>$id</td><td>Calça</td><td>$preco</td><td align='center'>$qtd</td><td>$preco</td></tr>";
?>

Escrevi os comentarios no segundo arquivo, qualquer coisa me fala.

 

 

 

Vlw pela ajuda cara so me ajuda aqui com uma duvida...

pelo o que eu vi o ajax que vc fez puxa a pagina CadastraVenda.php e retornar um resultado "acumulativo" correto? a pagina CadastraVenda.php ficaria responsável por fazer a consulta no bd (atraves do codigo do produto) e retornar o produto e o preço para a pagina principal... foi ai que eu fiquei perdido, substitui as $id e $qtd como vc falou e retirei o comentário so que não funcionou... pode me dar mais uma força ai? não entendo muito de php ainda...rsrs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vê assim:

<?php

	$id = $_POST['codigo'];
	$qtd = $_POST['quantidade'];
	$preco = "$ ".rand(0,9).",00";
	$consulta = mysql_query("select * from produtos where cod_produto=$id");
	while($linha = mysql_fetch_assoc($consulta)) {
	echo "<tr><td>".$id."</td><td>".$linha['descricao']."</td><td></td><td></td><td></td></tr>"; 
	}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.