Rob_Bor 0 Denunciar post Postado Março 23, 2011 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
romabeckman 0 Denunciar post Postado Março 23, 2011 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
Rob_Bor 0 Denunciar post Postado Março 23, 2011 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
Matheus Tavares 167 Denunciar post Postado Março 23, 2011 <?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
romabeckman 0 Denunciar post Postado Março 23, 2011 Posta o código até a linha 17 Compartilhar este post Link para o post Compartilhar em outros sites
Rob_Bor 0 Denunciar post Postado Março 23, 2011 Linha 17: $_SESSION["nome_tamanho"][] = $nome_tamanho; Compartilhar este post Link para o post Compartilhar em outros sites
romabeckman 0 Denunciar post Postado Março 23, 2011 É 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
Rob_Bor 0 Denunciar post Postado Março 23, 2011 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
Matheus Tavares 167 Denunciar post Postado Março 23, 2011 Amigo, não ignore o post #4. Sua solução está ali. Compartilhar este post Link para o post Compartilhar em outros sites
romabeckman 0 Denunciar post Postado Março 23, 2011 você deveria prestar mais atenção no seu código, como disse o Matheus Tavares a solução está no post #4. Compartilhar este post Link para o post Compartilhar em outros sites
Rob_Bor 0 Denunciar post Postado Março 23, 2011 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
romabeckman 0 Denunciar post Postado Março 23, 2011 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
Rob_Bor 0 Denunciar post Postado Março 23, 2011 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
Rob_Bor 0 Denunciar post Postado Março 24, 2011 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