Ir para conteúdo

POWERED BY:

Arquivado

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

Bruno Conte

[Resolvido] Sistema para mini mercado

Recommended Posts

Bom dia.

Meu tio tem um mini mercado e ate como forma de aprendizagem estou desenvolvendo um sistema para ele, e quero desenvolver em php.

 

Pequei um artigo de carrinho de compras que a principio e muito util, ja que eu posso ir adicionando novos produtos.

 

agora pega minha duvida, nos vamos usar leitor optico e no sistema eu tenho que clicar em continuar comprando para adionar novo produto.

o que eu queria e na pagina carrinho.php eu ter um campo busca, onde quando o usuario fizesse a leitura com o leitor ele ja efetuava a busca no bd e adicionava no carrinho.

E possivel fazer isto???

se sim como seria?

 

 

desde ja agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando você faz um form com um campo busca e usa um leitor de código de barras automaticamente ele já da enter no form, pelo menos com os leitores que usei funcionou assim, já que ele dar o enter automático é só você pegar o código de barras fazer uma busca no banco e retornar o produto no carrinho.

Compartilhar este post


Link para o post
Compartilhar em outros sites

galera salve salve.

agora que fui colocar para frente o projeto.

 

e começei ja a efetuar os testes em cima de um sistema de carrinho em php.

o carrinho beleza, entendi nao tenho duvidas sobre.

 

agora fiz na pagina do carrinho um formulario que o usuario busca por leitor de codigo de barras o codigo do produto por codigo de barras.

o mesmo esta cadastrado beleza, mais ele nao adiciona ao carrinho o produto.

 

Alquem sabe como posso fazer esse codigo buscar e ja adicionar ao carrinho?

 

segue meu codigo se alquem poder ajudar:

 

<?php
// Iniciamos nossa sessão que vai indicar o usuário pela session_id
session_start();
include "Connections/conn.php";
// Recuperamos os valores passados por parametros
$acao = $_GET['acao'];
$cod =  $_GET['cod'];


// Verificamos se a acao é igual a incluir
if ($acao == "incluir")
{	
// Verificamos se cod do produto é diferente de vazio
if ($cod != '')
{
	// Se for diferente de vazio verificamos se é numérico
	if (is_numeric($cod))
	{	
	    // Tratamos a variavel de caracteres indevidos
		$cod = addslashes(htmlentities($cod));

		// Verificamos se o produto referente ao $cod já está no carrinho para o session id correnpondente
		$query_rs_carrinho = "SELECT * FROM tbl_carrinho WHERE tbl_carrinho.cod = '".$cod."'  AND tbl_carrinho.sessao = '".session_id()."'";
		$rs_carrinho = mysql_query($query_rs_carrinho, $conn) or die(mysql_error());
		$row_rs_carrinho = mysql_fetch_assoc($rs_carrinho);
		$totalRows_rs_carrinho = mysql_num_rows($rs_carrinho);

		// Se o total for igual a zero é sinal que o produto ainda não está no carrinho
		if ($totalRows_rs_carrinho == 0)
		{
			// Aqui pegamos os dados do produto a ser incluido no carrinho
			$query_rs_produto = "select * from tbl_produtos where cod = '".$cod."'";
			$rs_produto = mysql_query($query_rs_produto, $conn) or die(mysql_error());
			$row_rs_produto = mysql_fetch_assoc($rs_produto);
			$totalRows_rs_produto = mysql_num_rows($rs_produto);

			// Se total for maior que zero esse produto existe e então podemos incluir no carrinho
			if ($totalRows_rs_produto > 0)
			{
				$registro_produto = mysql_fetch_assoc($rs_produto);
				// Incluimos o produto selecionado no carrinho de compras
				$add_sql = "INSERT INTO tbl_carrinho (id, cod, nome, preco, qtd, sessao) 
				VALUES
				('','".$row_rs_produto['cod']."','".$row_rs_produto['nome']."','".$row_rs_produto['preco']."','1','".session_id()."')";
				$rs_produto_add = mysql_query($add_sql, $conn) or die(mysql_error());
			}
		}		
	}
}
}	

// Verificamos se a acao é igual a excluir
if ($acao == "excluir")
{
// Verificamos se cod do produto é diferente de vazio
if ($cod != '')
{
	// Se for diferente de vazio verificamos se é numérico
	if (is_numeric($cod))
	{	
	    // Tratamos a variavel de caracteres indevidos
		$cod = addslashes(htmlentities($cod));
		// Verificamos se o produto referente ao $cod  está no carrinho para o session id correnpondente
		$query_rs_car = "SELECT * FROM tbl_carrinho WHERE cod = '".$cod."'  AND sessao = '".session_id()."'";
		$rs_car = mysql_query($query_rs_car, $conn) or die(mysql_error());
		$row_rs_carrinho = mysql_fetch_assoc($rs_car);
		$totalRows_rs_car = mysql_num_rows($rs_car);

		// Se encontrarmos o registro, excluimos do carrinho
		if ($totalRows_rs_car > 0)
		{
			$sql_carrinho_excluir = "DELETE FROM tbl_carrinho WHERE cod = '".$cod."' AND sessao = '".session_id()."'";	
			$exec_carrinho_excluir = mysql_query($sql_carrinho_excluir, $conn) or die(mysql_error());
		}
	}
}
}

// Verificamos se a ação é de modificar a quantidade do produto
if ($acao == "modifica")
{
$quant = $_POST['qtd'];
	// Se for diferente de vazio verificamos se é numérico
	if (is_array($quant))
	{	
	    // Aqui percorremos o nosso array
		foreach($quant as $cod => $qtd)
		{
			// Verificamos se os valores são do tipo numeric
			if(is_numeric($cod) && is_numeric($qtd))
			{
				// Fazemos nosso update nas quantidades dos produtos
				$sql_modifica = "UPDATE tbl_carrinho SET qtd = 	'$qtd' WHERE  cod = '$cod' AND sessao = '".session_id()."'";
				$rs_modifica = mysql_query($sql_modifica, $conn) or die(mysql_error());
			}
		}
	}

}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Carrinho de Compras</title>
<style type="text/css">
<!--
.style3 {font-size: 10px; font-family: Verdana, Arial, Helvetica, sans-serif; }
.style4 {
color: #FF0000;
font-weight: bold;
}
-->
</style>
</head>

<body>
<div align="center">
 <form action="carrinho.php?cod=".$cod."&acao=incluir'">
 <label for="codBar">Passe o leitor pelo código de barras
 <input type="text" id="codBar" name="cod" />
 </label>
 <button type="submit">OK </button>
 </form>
 <p> </p>
</div>
<form action="carrinho.php?acao=modifica" method="post">
<table width="100%" border="1" cellspacing="0" cellpadding="0">
 <tr>
   <th width="36%" scope="col"><div align="left">PRODUTO</div></th>
   <th width="22%" scope="col">PREÇO</th>
   <th width="13%" scope="col">QUANTIDADE</th>
   <th width="14%" scope="col">SUBTOTAL</th>
   <th width="15%" scope="col"> </th>
 </tr>

 <?
 $sql_meu_carrinho = "SELECT * FROM tbl_carrinho WHERE  sessao = '".session_id()."' ORDER BY nome ASC";
 $exec_meu_carrinho =  mysql_query($sql_meu_carrinho, $conn) or die(mysql_error());
 $qtd_meu_carrinho = mysql_num_rows($exec_meu_carrinho);

 if ($qtd_meu_carrinho > 0)
 {
 	$soma_carrinho = 0;
 	while ($row_rs_produto_carrinho = mysql_fetch_assoc($exec_meu_carrinho))
{
	$soma_carrinho += ($row_rs_produto_carrinho['preco']*$row_rs_produto_carrinho['qtd']);
 ?>
   <tr>

   <td><span class="style3">
     <?=$row_rs_produto_carrinho['nome']?>
   </span></td>
   <td><div align="center" class="style3"><?= number_format($row_rs_produto_carrinho['preco'],2,",","."); ?></div></td>
   <td><div align="center" class="style3"><input type"text" size="2" name="qtd[<?=$row_rs_produto_carrinho['cod']?>]" value="<?=$row_rs_produto_carrinho['qtd']?>" /></div></td>
   <td><div align="center" class="style3"><?= number_format($row_rs_produto_carrinho['preco']*$row_rs_produto_carrinho['qtd'],2,",","."); ?></div></td>
   <td><div align="center"><a href="carrinho.php?cod=<?=$row_rs_produto_carrinho['cod']?>&acao=excluir"><img src="imgs/del_carrinho.jpg" width="110" height="21" border="0" /></a></div></td>
 </tr>
   <?
 }
}
 ?>
   <tr>
     <td colspan="3"><div align="right"><strong>TOTAL:</strong>  </div>        <div align="right"></div>        <div align="right"></div></td>
     <td><div align="center" class="style3 style4">
     <?= number_format($soma_carrinho,2,",","."); ?></div></td>
     <td> </td>
   </tr>
   <tr>
     <td colspan="5"><table width="100%" border="0" cellspacing="0" cellpadding="0">
       <tr>
         <th width="33%" height="60" scope="col"><span class="style3"><a href="produtos.php"><img src="imgs/comprando.jpg" width="287" height="40" border="0" /></a></span></th>
         <th width="33%" scope="col"> </th>
         <th width="34%" scope="col"><label>
           <input type="image" name="imageField" src="imgs/atualizar.jpg" />
         </label></th>
       </tr>
     </table></td>
   </tr>
</table>
</form>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, perdao, postei meu codigo errado, o que eu tinha feito para uso no sistema e esse aqui, e nao esta funcionando ele ja adicionar ao carrinho automaticamente pelo leitor de codigo de barras.

 

<?php
include "includes/conecta.php";
include "versessao.php";

switch(@$_GET["acao"]) {
case "add_item":
	{
		addItem($_GET['id'], $_GET['qtd'], $_GET['preco']); //valores que vieram da página produtos.php
		showCart(); //função que lista os produtos
		break;
	}
case "verifica":
	{
		verifica($_GET['id'], $_GET['qtd']);
		break;
	}
case "update_item":
	{
		updateItem($_GET['id'], $_GET['qtd']);
		showCart();
		break;
	}
case "remove_item":
	{
		removeItem($_GET['id']);
		showCart();
		break;
	}
default:
	{
		showCart();
	}
} // fim do switch

function addItem($itemid, $qtd, $preco) {
	$coockie = $_COOKIE["id_card"];
	// argumentos - itemid := id, e qtd := qtde

	$result 	= mysql_query("select count(*) from pedido_itens where id_coockie= '$coockie'
									and id_produto = '$itemid'
									and   pedido_itens.finalizada = 'n'") or die(mysql_error());
			$rowDados   = mysql_fetch_row($result);
			$numRows = $rowDados[0];
			if($numRows == 0) {
				$variavel = mysql_query("insert into pedido_itens (id_coockie, id_produto, qtd, preco, finalizada, data)
						values('$coockie', '$itemid', '$qtd', '$preco', 'n', now())") or die("erro na insercao");
			} 

} // fim função

function verifica($itemid, $qtd) {
$coockie = $_COOKIE["id_card"];
	$verifica = mysql_query("select id_produto, qtde from produto
								where id_produto = $itemid");
			$qtde = mysql_result($verifica, 0, "qtde");
			if ($qtde < $qtd) {
			echo "Produto com estoque insuficiente, constamos em nosso 
					estoque com $qtde peça(s) deste produto, a quantidade será substituí­da por esse
					valor em seu carrinho de compras. Pedimos desculpas pela ausência do mesmo e estaremos repondo
					o mesmo em breve para melhor atende-lo(a).
					A página atualizará em alguns segundos.";

					mysql_query("update pedido_itens set
					qtd = '$qtde'
					where id_coockie = '$coockie'
					and id_produto = '$itemid'");

					echo"<meta http-equiv=refresh content=15;url='compras.php?i=carrinhocompras.php'>";

			} else {
			updateItem($itemid, $qtd);
			showCart(); }
		} //fim função

function  updateItem($itemid, $qtd) {
$coockie = $_COOKIE["id_card"];
	if ($qtd == "0") {
		removeItem($itemid);
	}  else {			
		mysql_query("update pedido_itens set
					qtd = '$qtd'
					where id_coockie = '$coockie'
					and id_produto = '$itemid'");
			} //end else
	} // end function

function removeItem($itemid) {
$coockie = $_COOKIE["id_card"];

	mysql_query("delete from pedido_itens where id_coockie = '$coockie' and id_produto = '$itemid'");
	} // end function

function showCart() {
$coockie = $_COOKIE["id_card"];

	$custototal = "0";

	$query = mysql_query("select * from pedido_itens 
						 inner join produto  on pedido_itens.id_produto = produto.id_produto 
						 where pedido_itens.id_coockie = '$coockie'  
						 and   pedido_itens.finalizada = 'n'
						 order by produto.nome asc");


?>	
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
<style type="text/css">
<!--
.style11 {font-size: 12px}
-->
</style>
</head>
<script language="javascript">
function updateQtd(item) {
	var itemId = item.name;
	var newqtd = item.options[item.selectedIndex].text;
	document.location.href = 'compras.php?i=carrinhocompras.php&acao=verifica&id='+itemId+'&qtd='+newqtd;
}


//abrir menu pop com imagem do produto
function abre_pop(x){
window.open("pop.php?id='"+ x + "'","janela","width=300 , height=300,resizable=yes"); //resizable deixa abrir a tela de pop-up
}

</script>



<style type="text/css">
<!--
.style5 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
.style9 {color: #990000; font-weight: bold; }
.style10 {font-family: Verdana, Arial, Helvetica, sans-serif}
-->
</style>
<body>
 <form action="carrinhocompras.php" method="get">
 <label for="codBar">Passe o leitor pelo código de barras
 <input type="text" id="codBar" name="cod" />
 </label>
 <input type="hidden" id="add_item" name="add_item" value="incluir" />
 <button type="submit">OK </button>
 </form>
 <?
 		if(mysql_num_rows($query)>0) {
 ?>

<form name="form1" method="get" action="">
 <table width="100%" border="0" cellpadding="0">
   <tr bgcolor="#CCCCCC">
     <td><div align="left" class="style9"><span class="style5">QTD</span></div></td>
     <td><div align="left" class="style9"><span class="style5">Nome do produto</span></div></td>
     <td><div align="left" class="style9"><span class="style5">Valor Un.</span></div></td>
     <td><div align="left" class="style9"><span class="style5">Sub. Valor</span></div></td>
     <td><div align="left" class="style9"><span class="style5">Excluir</span></div></td>
   </tr>
   <?php
	while($row = mysql_fetch_array($query)){

 $custototal = $custototal + ($row['qtd'] * $row['preco']);
 ?>
   <tr bgcolor="e8e8e8">
     <td><select name="<?=$row['id_produto']?>" class="style10 style11" onChange="updateQtd(this)">
     <?
  	for($u=1; $u<10; $u++) {
		echo "<option ";
		if($row['qtd'] == $u)
			{
				echo " SELECTED";
			}
		echo ">" . $u . "</option>";
  }
  ?>
     </select> </td>
     <td><span class="resultado style10 style11">
       <?=$row['nome']?>
     </span></td>
     <td><span class="resultado style10 style11">R$ <? echo number_format($row['preco'],2,".",",");?></span></td>
     <td><span class="style10 style11">R$
       <? $v = $row['preco'] * $row['qtd']; echo number_format($v,2,".",",");?>
     </span></td>
     <td><a href="compras.php?i=carrinhocompras.php&acao=remove_item&id=<?=$row['id_produto']?>"  class="resultado link style10 style11">Excluir</a>      </td>
     <?
	} // end while
?>
   </tr>
 </table>
 <table width="100%" border="0" cellpadding="0">
   <tr>
     <td><font face="verdana" size="2" color="black"><b>Total: 
     R$ <?php echo number_format($custototal, 2, ".", ","); ?></b></font></td>
   </tr>
 </table>
 <table width="100%" border="0" cellpadding="0">
   <tr>
     <td width="48%"><a href="compras.php?i=produtos.php"><img src="img/continuar_comprando.gif" width="140" height="25" border="0"></a></td>
     <td width="38%"> </td>
     <td width="14%"><a href="compras.php?i=carrinhofinal.php"><img src="img/finalizar_compra.gif" width="140" height="25" border="0"></a></td>
   </tr>
 </table>
</form>
<?
} else { echo "Seu Carrinho de Compras está vazio...";}
?>
<?
} //fecha showcart
?>
</body>
</html>

 

quando eu vou passar la na pagina produtos, no botao comprar o link vem assim:

 

carrinhocompras.php&acao=add_item&id=<?=$vetor['id_produto']?>&qtd=1&preco=<?=$vetor['preco']?>

 

como eu faria para funcionar assim puxando do leitor?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, faça algo mais simples, algo com SESSION gravando no BD, se estiver interessado eu vendo para você um script de loja virtual Desenvolvido por mim.

 

PHP

JQuery

Super dinâmico

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.