Em primeiro lugar vc precisa sacar por que elas são necessárias. Quando um browser termina de carregar determinada página, a conexão entre ele e o servidor é desfeita. Não confunda conexão de internet com a conexão entre browser e servidor, esta última refere-se a comunicação entre eles. Assim após o carregamento browser e servidor ficam separados, um não sabe o que o outro está fazendo. Então, quando vc solicitar outra página, o servidor não tem nem idéia mais do que vc fez na última conexão, pois para pedir esta nova página o browser se reconecta ao mesmo endereço do servidor e pede a outra página, detonando com a conexão assim que esta também carregar. Digo isto levando em consideração que as 2 páginas são do mesmo site e pertencem ao mesmo servidor.
A sessão não é uma coisa do PHP, mas do servidor. É uma área na memória do servidor que guarda o IP, da máquina que a acessou e qual browser que se conectou, a esta área de memória podem ser associadas outras informações que vc queira guardar, no estilo de variáveis. O PHP, é claro, possui uma ferramenta para manipular sessões do servidor. Assim, em um caso de login por exemplo, vc se loga e guarda numa sessão informações que indiquem aquele usuário está logado. Aí mesmo que a conexão seja desfeita, ao reconectar para carregar a próxima página, o servidor pode recorrer a sessão e ver que informações estão lá guardadas, como no caso, esta informação, pode dizer ao servidor: “sim ele está logado, e pode acessar esta página”.
Exemplo:
Para manipular sessoes no PHP:
arquivo1.php
<?
session_start();//inicializa o serviço da sessão
//cria uma variável do tipo sessão com a informação “sim”
$_SESSION['esta_logado'] = “sim”;
?>
arquivo2.php
<?
session_start();//inicializa o serviço da sessão
echo $_SESSION['esta_logado'];//vai imprimir: “sim”
?>
Isto gera a ilusão de que a variável “esta_logado” foi passada de uma página para a outra, porém ela foi buscada da sessão no servidor. Simples, fácil… mas uma ferramenta útil e poderosa!
Até a próxima!
Tags: PHP, sessões, sessões php