Olá Pessoal,

Bem quem nunca comprou pela internet que não tenha colocado seu produto num carrinho de compras, pois é. Mas uma coisa que muito gente talvez não saiba é que o ambiente web é stateless, ou seja, na web não se guarda informações entre as requisições de uma ou mais páginas.

Você deve estar se perguntando: Como então o item não e removido do carrinho? Ai é que entra, na maioria das vezes a sessão.

Sessão na vardade é a grosso modo uma àrea na memoria do servidor onde podemos guardar valores para recuperar depois. Cada usuario que se conecta ao nosso site recebe uma sessão. Os dados colocados ali so são removidos quando a sessão é encerrada (Browser é fechado) ou quando a sessão expira por um periodo de inatividade configurado pelo programador (Como é o caso dos bancos).

Mas e no PHP como criarmos uma variavel na sessão por exemplo. Bem segundo o manual do PHP:

O suporte a sessão permite a você registrar um número arbritrário de variáveis que serão preservadas entre as requisições. Quando um visitante acessar o seu site, o PHP irá conferir automaticamente (se session.auto_start estiver definido como 1) ou quando você pedir (explicitamente atráves de session_start() ou implicitamente através de session_register()) quando um id de sessão específico for enviado com a requisição. Se este for o caso, o ambiente anteriormente salvo é recriado.

A partir do PHP 4.1.0, $_SESSION está disponível como uma variável global como $_POST, $_GET, $_REQUEST e assim por diante. Diferentemente de $HTTP_SESSION_VARS, $_SESSION é sempre global. Entretanto, você não precisa usar a palavra global para $_SESSION. por favor note que esta documentação foi modifcada para usar $_SESSION em todos os lugares. Você pode substituir $HTTP_SESSION_VARS por $_SESSION, se você prefirir. Também note que você precisa começar a sua sessão usando session_start() antes que $_SESSION esteja disponível.

As chaves para a array associativa $_SESSION estão sujeitas ao mesmas limitações que as os nomes de variáveis regulares do PHP, ex elas não podem começar com um numero e devem começar com uma letra ou sublinhado;. Para maiores detalhes veja a sessão sobre variaveis neste manual.


Como vimos temos uma super global especifica para criar variaveis na sessão o codigo abaixo mostra como criar um contador na sessão:

session_start();

if (!isset($_SESSION['count'])) {
  $_SESSION['count'] = 0;
} else {
  $_SESSION['count']++;
}

?>


Para Exibir o contrúdo você poderá usar o código abaixo:

session_start();
if (isset($_SESSION['count'])) {
  echo $_SESSION['count'];
}
?>


Abraços pessoal e até a próxima !!!