carrinho de compra session erro

13/06/2013

0

PHP

Ola pessoal ,
Estou com uma dificuldade que minha array de session não esta adicionando mais um no caso quando eu passo o id não ta criando outro array de session se alguem pode me ajudar estou postando meu codigo aqui para me ajudar agredeço.
<?php		    	
		 session_start();

		 require_once("../BD/conn_class.php"); 
		 $conn = new conndb(); 
		 $conn->Conecta();
		
		
		
		 $sql =	'SELECT CODI,DESCRI,UNIDADE,PRECOLISTA,PESOMEDIO, EST_ATU 
		 		from estoque where PRECOLISTA > 0 and CODI= '.mysql_real_escape_string((int)$_REQUEST['id']).' GROUP BY CODI ';	
		 
		 $res = $conn->seleciona($sql);
		 $ln = mysql_fetch_assoc($res);
		 
		 $id = (int)$_REQUEST['id'];
		 
		 if(isset($_SESSION['carrinho'][$id])){
		 	$_SESSION['carrinho'] = array();
		 }
		 
		 $_SESSION['carrinho'][$id]['codigo'] = $ln['CODI'];
		 $_SESSION['carrinho'][$id]['nome']   = $ln['DESCRI'];
		 $_SESSION['carrinho'][$id]['preco']  = $ln['PRECOLISTA'];
		 $_SESSION['carrinho'][$id]['qtd'];
		 
		$acao = $_REQUEST['acao'];
		
		switch($acao){
			 case 'adicionar':
			 	//ADICIONAR NO CARRINHO
			 	
					
			 	if(isset($_REQUEST['id'])){
			 		
			 		$id = intval($_REQUEST['id']);
			 		
			 		if($_SESSION['carrinho'][$id]['qtd'] != $ln['EST_ATU']){
			 			echo 'entro aqui';
			 			$_SESSION['carrinho'][$id]['qtd'] += 1;
			 		}
			 		
			 	}
			 	
			 break;
			 
			 case 'diminuir':
			 	
			 	$id = intval($_REQUEST['id']);
			 	$_SESSION['carrinho'][$id]['qtd']--;
			 	
			 
			 break;
			 
			 case 'remover':
			 
				$id = intval($_GET['id']);
			 	if(isset($_SESSION['carrinho'][$id])){
			 		unset($_SESSION['carrinho'][$id]);
			 	}
			 
			 break;
			 
			 case 'alterarValor':
			 
			 
			 break;
			
		}
		
		echo '<pre>';
		print_r($_SESSION['carrinho']);
		
		if(count($_SESSION['carrinho']) == 0){
			echo '<div class="item">Não a produto no carrinho</div>';
		}else{
			
			foreach($_SESSION['carrinho'] as $id => $values){
				echo $id.'<br/>';
				print_r($values);
				
			}
		}



?>
Cacio Silva

Cacio Silva

Responder

Posts

13/06/2013

Cacio Silva

Ola pessoal ,
Estou com uma dificuldade que minha array de session não esta adicionando mais um no caso quando eu passo o id não ta criando outro array de session se alguem pode me ajudar estou postando meu codigo aqui para me ajudar agredeço.
<?php		    	
		 session_start();

		 require_once("../BD/conn_class.php"); 
		 $conn = new conndb(); 
		 $conn->Conecta();
		
		
		
		 $sql =	'SELECT CODI,DESCRI,UNIDADE,PRECOLISTA,PESOMEDIO, EST_ATU 
		 		from estoque where PRECOLISTA > 0 and CODI= '.mysql_real_escape_string((int)$_REQUEST['id']).' GROUP BY CODI ';	
		 
		 $res = $conn->seleciona($sql);
		 $ln = mysql_fetch_assoc($res);
		 
		 $id = (int)$_REQUEST['id'];
		 
		 if(isset($_SESSION['carrinho'][$id])){
		 	$_SESSION['carrinho'] = array();
		 }
		 
		 $_SESSION['carrinho'][$id]['codigo'] = $ln['CODI'];
		 $_SESSION['carrinho'][$id]['nome']   = $ln['DESCRI'];
		 $_SESSION['carrinho'][$id]['preco']  = $ln['PRECOLISTA'];
		 $_SESSION['carrinho'][$id]['qtd'];
		 
		$acao = $_REQUEST['acao'];
		
		switch($acao){
			 case 'adicionar':
			 	//ADICIONAR NO CARRINHO
			 	
					
			 	if(isset($_REQUEST['id'])){
			 		
			 		$id = intval($_REQUEST['id']);
			 		
			 		if($_SESSION['carrinho'][$id]['qtd'] != $ln['EST_ATU']){
			 			echo 'entro aqui';
			 			$_SESSION['carrinho'][$id]['qtd'] += 1;
			 		}
			 		
			 	}
			 	
			 break;
			 
			 case 'diminuir':
			 	
			 	$id = intval($_REQUEST['id']);
			 	$_SESSION['carrinho'][$id]['qtd']--;
			 	
			 
			 break;
			 
			 case 'remover':
			 
				$id = intval($_GET['id']);
			 	if(isset($_SESSION['carrinho'][$id])){
			 		unset($_SESSION['carrinho'][$id]);
			 	}
			 
			 break;
			 
			 case 'alterarValor':
			 
			 
			 break;
			
		}
		
		echo '<pre>';
		print_r($_SESSION['carrinho']);
		
		if(count($_SESSION['carrinho']) == 0){
			echo '<div class="item">Não a produto no carrinho</div>';
		}else{
			
			foreach($_SESSION['carrinho'] as $id => $values){
				echo $id.'<br/>';
				print_r($values);
				
			}
		}



?>
Responder

13/06/2013

Cacio Silva

ressolvido o meu if da session tinha faltado o '!'
Responder

19/06/2013

José

Tendo entendido que a duvida inicial foi solucionada, estou dando este tópico como concluído.
Fique a vontade para abrir novos tópicos.
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar