Ir para conteúdo

POWERED BY:

Arquivado

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

Rob_Bor

Adicionar Dados no array vindo de um SESSION

Recommended Posts

Fala ae galera do imaster. Tudo bom ?

 

Estou com uma dúvida chata demais... ja bati a cabeça e não tenho mais idéias, então resolvi apelar pra vocês.

 

Creio que estou perto do resultado.. haha

 

La vai.

 

Estou passando por session um nome. ex:

 

Página que envia SESSION

  session_start();
  $_SESSION["nome_tamanho"] = $nome_tamanho; // Variável $nome_tamanho está vindo de um post

 

Pagina que recebe Session,

 

nesta página estou querendo verificar, se a SESSION ainda nao foi gravada, ele grava ela em um array, se ja estiver sido gravada ela adiciona um valor no array

Estava tentando fazer dessa forma, mais não ta dando resultado nenhum.

 

é como se fosse um carrinho de compra, preciso que ele vai adicionando os valores dentro desse array.

 

 

<?php
       session_start();
$teste = $_SESSION['nome_tamanho'];

			if(!isset($teste)){
				$nome_tamanho = array($teste);
				}else{
				array_push($nome_tamanho, $teste);	
                                }
?>				

 

 

Se alguem puder me ajudar, agradeço MUITO... valew galera.. abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Voce pode gravar direto no array veja o exemplo abaixo:

session_start();

if(empt($_SESSION["nome_tamanho"]))
  $_SESSION["nome_tamanho"] = array();
else
  $_SESSION["nome_tamanho"][] = $nome_tamanho;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde, orbrigado pela resposta

 

mas desta forma.. deu o seguinte erro..

 

Fatal error: [] operator not supported for strings in E:\Servidor\wamp\www\sistema\templates_c\%%E0^E06^E065127C%%carrinho_compra.tpl.php on line 17

 

Gente, estou tentando aqui, não estou chegando a nenhum resultado...

 

Vou continuar tentando, se alguem tiver uma ideia, posta ai, por favor..

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php
session_start();
$_SESSION['nome_produto'][] = 'um teste somente';
echo '<pre>';
print_r($_SESSION['nome_produto']);
echo '</pre>';
?>

 

Depois de algumas atualizadas no navegador:

 

Array
(
   [0] => um teste somente
   [1] => um teste somente
   [2] => um teste somente
   [3] => um teste somente
   [4] => um teste somente
)

 

:seta: http://forum.imasters.com.br/topic/427288-resolvido-armazenando-varias-strings-em-uma-session/

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

É pra você postar o código até a linha 17.

Mas antes, declare no início da página $_SESSION["nome_tamanho"] = array();

 

O erro Fatal error: [] operator not supported for strings in E:\Servidor\wamp\www\sistema\templates_c\%%E0^E06^E065127C%%carrinho_compra.tpl.php on line 17

provavelmente $_SESSION["nome_tamanho"] está recebendo um valor do tipo string antes. da linha 17, se isso estiver acontecendo o erro vai persistir

Compartilhar este post


Link para o post
Compartilhar em outros sites

o codigo todo esta aii...

 

		session_start();
$_SESSION["nome_tamanho"] = array();

		if(empty($_SESSION["nome_tamanho"])){
		   $_SESSION["nome_tamanho"] = array();
		}else{
		   $_SESSION["nome_tamanho"][] = $nome_tamanho;}
		print_r($nome_tamanho);

 

agora ele parou de dar o erro.. mais nao consgio exibir nada na tela...

 

alguma diica ?

 

valew

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa Matheus, desculpa cara...

 

eu tentei da sua forma, e ele está criando a session em uma página;

 

$_SESSION["nome_tamanho"] = $nome_tamanho;

 

e estou pegando ele em outra página

 

		$_SESSION['nome_produto'][] = $_SESSION['nome_tamanho'];
		echo '<pre>';
		print_r($_SESSION['nome_produto']);
		echo '</pre>';

 

realmente ele está mostrando todos os valores a cada vez que eu entro na página. mais gostaria que ele adicionasse mais um item no array se o botão submit da primeira página for apertado e pressionado.

 

Pq se não toda vez que o usuário clicar em ver meu carrinho, ele vai adicionar o ultimo produto guardado na session...

 

Tem alguma ideia ?

 

Muito obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Existe outra forma de fazer isso, você armazena em uma matriz:

 

$_SESSION[$id]['nome_tamanho'] = $nome_tamanho;
$_SESSION[$id]['nome_produto'] = $nome_produto;
$_SESSION[$id]['cod_produto'] = $cod_produto;

 

O $id é a chave primária do produto na tabela do banco de dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe, mais não entendi dessa maneira... :(

 

Estou tentando de todas as formas, mais nada... se tivesse algum jeito de fazer ele adicionar o valor no array só se for dado o submit, meu problema estaria resolvido...

 

Alguém tem alguma nova idéia ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, estou tentando de outra forma.

 

se conseguir sucesso eu posto aqui, se vocês tiverem uma nova idéia, por favor, postem :)

 

Valew

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.