Ir para conteúdo

POWERED BY:

Arquivado

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

tigredonorte

problema com session

Recommended Posts

olá pessoal,

meu problema é o seguinte: Preciso registrar uma função dentro de um método, no entanto esta sessão só dura enquanto a página estiver carregada, ao dar um refresh percebe-se que não foi registrada a sessao, e olhando os cookies registrados também. Segue o código:

 

class carrinho
{
        static function setSession($Carrinho)
	{
		@session_start();
		if(!isset($_SESSION["carrinho"])) 
		{
			$_SESSION["carrinho"] = $Carrinho;
			echo "não estava setada";
		}
		else
		{
			echo "ja estava setada";
		}
		
	}
}
$obj = "abcd";
carrinho::setSession($obj);

saida:

não estava setada

 

saida após dar o refresh:

não estava setada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tira a arroba da frente do session_start e testa de novo. Veja o que acontece.

 

Carlos Eduardo

 

continua com problema desta vez eh por causa do fluxo, eu dou um echo antes do session_start(), isto que causa o erro, quero saber se é possível fazer com que funcione sem tirar o echo do topo

 

erro

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Documents and Settings\thom\Desktop\tmf\xampp\htdocs\Testes\Carrinho_Class.php:134) in C:\Documents and Settings\thom\Desktop\tmf\xampp\htdocs\Testes\Carrinho_Class.php on line 37

 

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Documents and Settings\thom\Desktop\tmf\xampp\htdocs\Testes\Carrinho_Class.php:134) in C:\Documents and Settings\thom\Desktop\tmf\xampp\htdocs\Testes\Carrinho_Class.php on line 37

não estava setada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem.. posso solucionar o problema trocando algumas linhas de codigo, por exemplo onde eu seto a sessao coloco primeiro, no entanto gostaria de saber se é possível, utilizando um outro comando, utilizar um echo antes do session_start(); pois desta forma o codigo ficaria mais livre

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.