Tutorial PHP

PHP INÍCIO Introdução ao PHP Instalação do PHP Sintaxe PHP Comentários PHP Variáveis ​​PHP PHP Eco/Impressão Tipos de dados PHP Strings PHP Números PHP Matemática PHP Constantes PHP Operadores PHP PHP If...Else...Elseif Chave PHP Loops PHP Funções PHP Matrizes PHP PHP Superglobais PHP RegEx

Formulários PHP

Manipulação de formulários PHP Validação de formulário PHP Formulário PHP obrigatório URL/e-mail do formulário PHP Formulário PHP completo

PHP Avançado

Data e hora do PHP Incluir PHP Manipulação de arquivos PHP Arquivo PHP Abrir/Ler Arquivo PHP Criar/Gravar Upload de arquivo PHP Cookies PHP Sessões PHP Filtros PHP Filtros PHP Avançados Funções de retorno de chamada do PHP PHP JSON Exceções do PHP

PHP OOP

PHP O que é POO Classes/objetos PHP Construtor PHP Destruidor PHP Modificadores de acesso PHP Herança PHP Constantes PHP Classes abstratas PHP Interfaces PHP Características PHP Métodos estáticos PHP Propriedades estáticas do PHP Namespaces PHP Iteráveis ​​PHP

Banco de dados MySQL

Banco de dados MySQL MySQL Connect MySQL Criar banco de dados MySQL Criar Tabela Dados de inserção do MySQL MySQL Obter Último ID MySQL Inserir Múltiplo Preparado para MySQL Dados de seleção do MySQL MySQL Onde MySQL Ordenar por Dados de exclusão do MySQL Dados de atualização do MySQL Dados de limite do MySQL

PHP XML

Analisadores XML PHP Analisador PHP SimpleXML PHP SimpleXML - Obter PHP XML Expatriado PHP XML DOM

PHP - AJAX

Introdução AJAX PHP AJAX Banco de dados AJAX XML AJAX Pesquisa em tempo real AJAX Enquete AJAX

Exemplos PHP

Exemplos PHP Compilador PHP Teste PHP Exercícios PHP Certificado PHP

Referência PHP

Visão geral do PHP Matriz PHP Calendário PHP Data do PHP Diretório PHP Erro PHP Exceção PHP Sistema de arquivos PHP Filtro PHP PHP FTP PHP JSON Palavras-chave PHP PHP Libxml Correio PHP Matemática PHP PHP Diversos PHP MySQLi Rede PHP Controle de saída PHP PHP RegEx PHP SimpleXML Fluxo PHP String PHP Manipulação de variáveis ​​PHP Analisador XML PHP PHP Zip Fusos horários PHP

Sessões PHP


Uma sessão é uma maneira de armazenar informações (em variáveis) para serem usadas em várias páginas.

Ao contrário de um cookie, as informações não são armazenadas no computador do usuário.


O que é uma Sessão PHP?

Quando você trabalha com um aplicativo, você o abre, faz algumas alterações e depois o fecha. Isso é muito parecido com uma Sessão. O computador sabe quem você é. Ele sabe quando você inicia o aplicativo e quando você termina. Mas na internet há um problema: o servidor web não sabe quem você é ou o que você faz, porque o endereço HTTP não mantém o estado.

As variáveis ​​de sessão resolvem esse problema armazenando informações do usuário para serem usadas em várias páginas (por exemplo, nome de usuário, cor favorita etc.). Por padrão, as variáveis ​​de sessão duram até que o usuário feche o navegador.

Assim; As variáveis ​​de sessão contêm informações sobre um único usuário e estão disponíveis para todas as páginas em um aplicativo.

Dica: Se você precisar de um armazenamento permanente, talvez queira armazenar os dados em um banco de dados .


Iniciar uma sessão PHP

Uma sessão é iniciada com a session_start()função.

As variáveis ​​de sessão são definidas com a variável global do PHP: $_SESSION.

Agora, vamos criar uma nova página chamada "demo_session1.php". Nesta página, iniciamos uma nova sessão PHP e definimos algumas variáveis ​​de sessão:

Exemplo

<?php
// Start the session
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Set session variables
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"] = "cat";
echo "Session variables are set.";
?>

</body>
</html>

Nota: Asession_start()função deve ser a primeira coisa em seu documento. Antes de qualquer tag HTML.



Obter valores de variáveis ​​de sessão PHP

Em seguida, criamos outra página chamada "demo_session2.php". A partir desta página, acessaremos as informações da sessão que definimos na primeira página ("demo_session1.php").

Observe que as variáveis ​​de sessão não são passadas individualmente para cada nova página, mas sim recuperadas da sessão que abrimos no início de cada página ( session_start()).

Observe também que todos os valores das variáveis ​​de sessão são armazenados na variável global $_SESSION:

Exemplo

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Echo session variables that were set on previous page
echo "Favorite color is " . $_SESSION["favcolor"] . ".<br>";
echo "Favorite animal is " . $_SESSION["favanimal"] . ".";
?>

</body>
</html>

Outra maneira de mostrar todos os valores das variáveis ​​de sessão para uma sessão de usuário é executar o seguinte código:

Exemplo

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
print_r($_SESSION);
?>

</body>
</html>

Como funciona? Como ele sabe que sou eu?

A maioria das sessões define uma chave de usuário no computador do usuário que se parece com isso: 765487cf34ert8dede5a562e4f3a7e12. Então, quando uma sessão é aberta em outra página, ela verifica o computador em busca de uma chave de usuário. Se houver correspondência, ele acessa essa sessão, caso contrário, inicia uma nova sessão.


Modificar uma variável de sessão PHP

Para alterar uma variável de sessão, basta sobrescrevê-la:

Exemplo

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// to change a session variable, just overwrite it
$_SESSION["favcolor"] = "yellow";
print_r($_SESSION);
?>

</body>
</html>

Destruir uma sessão PHP

Para remover todas as variáveis ​​de sessão globais e destruir a sessão, use session_unset() e session_destroy():

Exemplo

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// remove all session variables
session_unset();

// destroy the session
session_destroy();
?>

</body>
</html>

Exercícios PHP

Teste-se com exercícios

Exercício:

Crie uma variável de sessão chamada "favcolor".

session_start();
["favcolor"] = "green";