Ir para conteúdo

POWERED BY:

Arquivado

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

emiliosansou

Retorno de dados em duplicidade

Recommended Posts

Olá Pessoal, nossa estou usando esse recurso Fórum pois realmente estou sem saber como solucionar este problema, talvez não seja tão complicado, mas como sou inciante esta difícil pra burro.

 

Estou fazendo o fechamento do meu carrinho de compras, com isso na tela onde realizo a seleção de itens estou trazendo o dados e informações do usuário logado, para que quando for finalizado a compra o pedido seja impresso em pdf além do envio de email e salvo em banco de dados, essa é a próxima etapa que ainda não iniciei, pois o problema esta nesta parte.

 

Quando inicio o pedido já está trazendo os dados do usuário logado, porém quando eu seleciono o produto no mesmo campo que traz os dados do usuário está sendo substituído pelos itens do pedido quando clicado no Inserir

 

Será que podem me ajudar?

 

Estou deixando o código da página abaixo;

<?php 
session_start();
$_SESSION['detalle'] = array();


require_once 'Config/conexion.php';
require_once 'Model/Producto.php';
require_once 'Model/Cliente.php';


$objProducto = new Producto();
$resultado_producto = $objProducto->get();

$objCliente = new Cliente();
$resultado_cliente = $objCliente->busca();

?>
<!DOCTYPE html>
<html lang="pt-br">
<meta charset="utf-8">
  <head>
    <title>Pedido de Produtos</title>

    <!-- Bootstrap -->
    <link href="libs/css/bootstrap.css" rel="stylesheet">
    <script src="libs/js/jquery.js"></script>
    <script src="libs/js/jquery-1.8.3.min.js"></script>
    <script src="libs/js/bootstrap.min.js"></script>
   	
    <script type="text/javascript" src="libs/ajax.js"></script>
	
	 <!-- Alertity -->
    <link rel="stylesheet" href="libs/js/alertify/themes/alertify.core.css" />
	<link rel="stylesheet" href="libs/js/alertify/themes/alertify.bootstrap.css" id="toggleCSS" />
    <script src="libs/js/alertify/lib/alertify.min.js"></script>
    
   </head>

  <body>
 	<div class="container">
 		
 		<div class="page-header">
			<h1>Pedido de Produtos</h1>
		</div>
 		<div class="row">
			<div class="col-md-4">	
				<div>Produto
				<select name="cbo_producto" id="cbo_producto" class="col-md-2 form-control">
					<option value="0">Selecione um produto</option>
					<?php foreach($resultado_producto as $producto):?>
						<option value="<?php echo $producto['id_prod']?>"><?php echo $producto['titulo']?>. - .<?php echo $producto['descricao']?></option>
					<?php endforeach;?>
				</select>
				</div>
			</div>
			<div class="col-md-2">
				<div>Quantidade
				  <input id="txt_cantidad" name="txt_cantidad" type="text" class="col-md-2 form-control" placeholder="Insira a quantidade" autocomplete="off" />
				</div>
			</div>
			<div class="col-md-2">
				<div style="margin-top: 19px;">
				<button type="button" class="btn btn-success btn-agregar-producto">Inserir</button>
				</div>
			</div>
		</div>
		
		<br>
		<div class="panel panel-info">
			 <div class="panel-heading">
		        <h3 class="panel-title">Produtos</h3>
		      </div>
			<div class="panel-body detalle-producto">
				<?php if(count($_SESSION['detalle'])>0){?>
					<table class="table">
					    <thead>
					        <tr>
					            <th>Descrição</th>
					            <th>Quantidade</th>
					            <th>Preço</th>
					            <th>Subtotal</th>
					        </tr>
					    </thead>
					    <tbody>
					    	<?php 
					    	foreach($_SESSION['detalle'] as $k => $detalle){ 
					    	?>
					        <tr>
					        	<td><?php echo $detalle['producto'];?></td>
					            <td><?php echo $detalle['cantidad'];?></td>
					            <td><?php echo $detalle['precio'];?></td>
					            <td><?php echo $detalle['subtotal'];?></td>
					        </tr>
					        <?php }?>
					    </tbody>
					</table>
				<?php }else{?>
				<div class="panel-body">Nenhum produto selecionado</div>
				<?php }?>
			</div>
		</div>
	

		<div class="row">
			<div class="col-md-12 text-right">
			   <button type="button" class="btn btn-sm btn-default guardar-carrito">Confirmar</button>
			</div>
		</div>
		<br>
		<br>
		<!--INFORMAÇÕES DO CLIENTE  -->
			<div class="col-md-10 panel panel-info" style="border:2px solid #eee;">
			<div class="painel" style="background:#f5f5f5;padding:10px;">
		        <h2 class="panel-title" style="text-align:center;color:#8c8c87;">Dados do Cliente</h2>
		    </div>
		      <div class="panel-body detalle-producto">
				<table class="table">
					<thead>
						<tr style="color:#8c8c87;" id="infocliente">
							<th>Nome</th>
							<th>Endereço</th>
							<th>Telefone</th>
							<th>Email</th>
						</tr>
					</thead>
					<tbody>
					<?php foreach($resultado_cliente as $cliente):?>
						<tr style="color:#888a8e;" id="infocliente">
							<td><?php echo $cliente['nome'];?></td>
					        <td><?php echo $cliente['endereco_cliente'];?>, <?php echo $cliente['numero_cliente'];?> - <?php echo $cliente['bairro_cliente'];?> / <?php echo $cliente['uf_cliente'];?></td>
					        <td><?php echo $cliente['telefone_cliente'];?></td>
					        <td><?php echo $cliente['email'];?></td>
						</tr>
					<?php endforeach;?>
					</tbody>
				</table>
				</div> <!-- panel -->			
			</div>
		</div>
 	
  </body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por aw10home
      Quando faço a consulta no phpMyadmim consigo o resultado esperado. Mas pelo visto não estou sabendo fazer direito em PHP. O que estou errando? Porque não consigo fazer a média (prtm) "aparecer"?
      abaixo meu código.
      <?php if (isset($_GET['$id_aluno'])){ $id_aluno = addslashes($_GET['$id_aluno']);} elseif (isset($_GET['id_aluno'])){ $id_aluno = addslashes($_GET['id_aluno']);}//addslashes evita sqlinjection else{ $id_aluno=(""); } $informacao=$con->prepare("SELECT a.id_aluno, a.nome, SUM(((b.prt*5)+(m.prt*3)+(v.prt*2))/10 ) as prtm FROM aluno a inner join avb1 b on a.id_aluno = b.id_aluno inner join avm2 m on a.id_aluno = m.id_aluno inner join avp v on a.id_aluno = v.id_aluno group by a.id_aluno, a.nome WHERE a.id_aluno = $id_usuario"); $informacao->execute(); ?> <!------------> <table class="cBolt"> <tr> <td>Avaliação</td> <td>Bim.</td> <td>Português</td> </tr> <?php while($linha=$informacao->fetch(PDO::FETCH_ASSOC)){ ?> <tr> <td>Média</td> <td>1º</td> <td><?php echo $linha['prtm'];?></td> </tr> <?php } ?> </table>  
    • Por lucianfpaula
      Galera tenha a seguinte duvida, tenho 3 tabelas onde estou trazendo os dados e preciso fazer um count em uma delas
       
      SELECT *  FROM tabela1 AS t1  INNER JOIN tabela2 AS t2 ON t1.idt1 = t2.idt2 INNER JOIN tabela3 AS t3 ON t3.idt3 = t1.idt1  
      a duvida é: quero manter o SELECT * mas também preciso de COUNT(t3.idT3)
      não sei se é possível fazer isso, mas gostaria de ter certeza antes de focar em outra solução
      desde já muito grato.
    • Por r.guerra
      Salve galera, boa tarde a todos.
      estou tendo um problema que ainda nao consegui enxergar... faço uma consulta mysql que funciona normalmente no proprio ambiente(mysql) mas ao solicitar a exibição do campo via php gera nao exibe e me tras um alerta.
       
      ****codigo php
      function monta_avaliacao($cpf){
          $query = mysqli_query($_SESSION["conector"],"SELECT c.*, a. cliente AS clientes FROM clientes AS c INNER JOIN avaliacoes AS a ON c.id = a.cliente WHERE c.cpf='$cpf'");
           $dados = mysqli_fetch_assoc($query);
          print $dados['c.cpf'];
           }
       
      *****sainda no html
      Notice: Undefined index: c.cpf in C:\xampp\htdocs\acus\inclusoes\funcoes.php on line 29
      Notice: Undefined index: a.pe in C:\xampp\htdocs\acus\inclusoes\funcoes.php on line 30
       
      tenho um arquivo com as funções, e apenas mando os parametros.
    • Por Omar~
      Então alguém teria uma ideia se existe uma forma mais correta (otimizada) para está executando uma query como essa:
      SELECT pages.p_hash, pages.p_title, pages.p_sector, pages.p_created, sectors.s_hash, sectors.s_title, sectors.s_link, users.u_hash, users.u_name FROM pages INNER JOIN sectors ON pages.p_sector = sectors.s_hash INNER JOIN users ON pages.p_created = users.u_hash  
      Não que venha ao caso mas por explicação mesmo.
      Entro na tabela páginas setores e usuários . Pois tenho que apresentar dados da página, o setor onde se encontra e quem foi o autor
    • Por Rodymb
      Bom dia!
      Estou fazendo um select em uma tabela de cupom fiscal e preciso que me mostre o operador do caixa e o supervisor que liberou a venda, que no caso é convênio.
      A consulta que montei é a seguinte:
       
      select  c.m00ad as CUPOM,
              c.m00ac as PDV,
              c.m02ak as VALOR,
              p.descricao as FINALIZADORA,
              c.m02ah as OPERADOR,
              f.nome as NOME_OP,
              c.m02ao as SUPERVISOR,
              f.nome as NOME_SUP
      from zan_m02 c inner join tab_funcionario f
      on c.m02ao = f.cod_funcionario
      inner join tab_finalizadora p
      on c.m02ai = p.cod_finalizadora
      where c.m00af = to_date('09/03/20','dd/mm/yy')
      and c.m00za = 3
      and c.m00ac = 9
      and c.m00ad = 379678
      group by c.m00ad,c.m00ac,c.m02ak,p.descricao,c.m02ah,f.nome,c.m02ao;
       
      A consulta me retorna o seguinte resultado:

       
      Como podem ver, repetiu o mesmo nome (operador e supervisor), sendo que o código é diferente.
       
      Isso acontece por que na tabela de funcionário o campo NOME serve para operador e supervisor e o que diferencia se é supervisor ou operador temos mais duas outras tabelas. A estrutura é assim:
       
      tab_funcionario -> temos o campo cod_funcionario e nome (todos os funcionários cadastrados são armazenados nessa tabela)
      tab_perfil -> temos os campos cod_perfil e descricao (todos os perfis cadastrados são armazenados nessa tabela)
      tab_perfil_funcionario -> temos os campos cod_funcionario e cod_perfil (tabela que relaciona as tabelas tab_funcionario e tab_perfil)
       
      A única coisa que preciso é que apareça no NOME_OP o nome do operador e não o nome do supervisor igual está aparecendo.
       
×

Informação importante

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