SlideShare uma empresa Scribd logo
Programação Web
 Fatec Ipiranga
 Análise e Desenvolvimento de Sistemas


 Aula 11 – Controle de sessão de usuário




     Dalton Martins
   dmartins@gmail.com

São Paulo, Novembro, 2011
Importância do controle de sessão
O protocolo HTTP, utilizado para trocar dados com um servidor web, não
 faz controle de estado de conexão;
Ou seja, a cada nova requisição para um servidor, o protocolo não
 considera o que ocorreu anteriormente;
Isso traz um problema quando queremos customizar o comportamento de
  aplicações ao perfil de determinados usuários.
Umas das primeiras soluções para esse problema foi a utilização de
 cookies → informações que são gravadas na máquina do usuário e
 podem ser recuperadas por uma aplicação posteriormente;
No entanto, os cookies possuem limitações e fragilidades em termos de
 segurança, não sendo o modo mais adequado par
Surge uma outra solução → gerenciamento de sessões!
Gerenciamento de sessões
É um dispositivo utilizado por alguns servidores e linguagens
  de programação Web que:
  → cada visitante de um site recebe um identificador único, chamado
   de SID (session ID);
  → o SID pode ser correlacionado com qualquer outro conjunto de
   informações, como por exemplo, a cor de fundo do site, níveis de
   permissão de acesso, módulos disponíveis, etc...
  → em termos de um banco de dados relacional, o SID pode ser uma
   chave primária que correlaciona os dados de um usuário.


  No entanto, como o SID é mantido fixo relacionado a um usuário se
   o protocolo HTTP não guarda estado de conexão?
2 modos de atribuir SID
1. Cookies:
  Ao invés de guardar as preferências do usuário num
   cookie em sua máquina, o novo mecanismo de
   gerenciamento de sessão armazena apenas o SID
   do usuário em um cookie local, ficando todo o resto
   da informação a critério de controle da aplicação;


2. Reescrita da URL:
  É um mecanismo que incorpora na URL o código SID
   de um usuário. É um modo mais frágil.
Trabalhando com gerenciamento de
             sessão
Alguns recursos fundamentais:
  → session_start() : inicializa uma sessão e, se já inicializada,
   recupera as variáveis de sessão atuais numa página;
  → session_destroy() : finaliza a sessão, destruindo todas as
   variáveis em utilização;
  → variáveis estilo $_SESSION['nome'] : é o mecanismo que
   permite criarmos variáveis de sessão. Podemos utilizar
   quantas acharmos necessário;
  → session_encode() : codifica as variáveis de sessão é uma
   única linha string. Facilita gravar logs em banco de dados;
  → session_decode() : decodifica as variáveis, permitindo
   separá-las novamente;
Exemplo – parte 1
<?php
    session_start();

     if (! isset($_SESSION['usuario'])) {

            if (isset($_POST['usuario'])) {

              $_SESSION['usuario']=$_POST['usuario'];
                echo "Usuario registrado! Recarregue a página para ver o que ocorre!";
            }
            else
             {
         require_once('login.html');
     }
     }
     else
     {
            echo "O seu identificador de sessão é ".session_id()."<br>";

            $_SESSION['usuario']="pedro";
            $_SESSION['datalogin']= date("M d Y H:i:s");

            echo "<br>";
            echo "Nome de usuario..: ".$_SESSION['usuario']."<br>";
            echo "Data de login....: ".$_SESSION['datalogin']."<br><br>";

            $codificasessao = session_encode();
            echo $codificasessao."<br><br>";
            echo "<a href="outroarquivo.php">Acessar outro arquivo para testar variaveis de sessao</a>";
     }
?>
Exemplo – parte 2
<?php
    session_start();

     if (isset($_SESSION['usuario'])) {

            echo "Sessao previamente iniciada <br>";
            echo "Usuario logado...: ".$_SESSION['usuario']."<br>";
            echo "Finalizando a sessao...<br>";

            session_destroy();

            echo "<a href="controleteste.php">Acessar arquivo inicial para testar variaveis de sessao</a>";
     }
     else
     {
            echo "A sessao nao foi previamente iniciada!";
     }
?>
Exemplo – parte 3

<p>
  <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

       Usuario:<br /><input type="text" name="usuario" size="10" /><br />

       Senha:<br /><input type="password" name="senha" SIZE="10" /><br />

       <input type="submit" value="Login" />

  </form>

</p>

Mais conteúdo relacionado

Mais procurados

Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de SistemasGuilherme
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em JavaDenis L Presciliano
 
Aula13 - Estrutura de repetição (for e while) - PHP
Aula13 - Estrutura de repetição (for e while) - PHPAula13 - Estrutura de repetição (for e while) - PHP
Aula13 - Estrutura de repetição (for e while) - PHPJorge Ávila Miranda
 
Exemplo de documento de requisitos
Exemplo de documento de requisitosExemplo de documento de requisitos
Exemplo de documento de requisitosLeandro Rodrigues
 
Aprendizagem por reforço
Aprendizagem por reforçoAprendizagem por reforço
Aprendizagem por reforçoLuís Nunes
 
Identificação de Necessidades dos Usuários e Requisitos IHC
Identificação de Necessidades dos Usuários e Requisitos IHCIdentificação de Necessidades dos Usuários e Requisitos IHC
Identificação de Necessidades dos Usuários e Requisitos IHCAlanna Gianin
 
METODOS E TECNICA DE PESQUISA.pptx
METODOS E TECNICA DE PESQUISA.pptxMETODOS E TECNICA DE PESQUISA.pptx
METODOS E TECNICA DE PESQUISA.pptxCarla Dimarães
 
Bmg Canvas Estratégico
Bmg   Canvas EstratégicoBmg   Canvas Estratégico
Bmg Canvas EstratégicoLuis Rasquilha
 
Aps lista de exercícios
Aps lista de exercíciosAps lista de exercícios
Aps lista de exercíciosGuilherme
 
Interação Humano Computador Capítulo 11 - Análise de Atividades
Interação Humano Computador Capítulo 11 - Análise de AtividadesInteração Humano Computador Capítulo 11 - Análise de Atividades
Interação Humano Computador Capítulo 11 - Análise de AtividadesWellington Oliveira
 
Dinâmica de comunicação
Dinâmica de comunicaçãoDinâmica de comunicação
Dinâmica de comunicaçãoleonardo.clms
 
Resumo diagramas de classes
Resumo diagramas de classesResumo diagramas de classes
Resumo diagramas de classesMarco Coelho
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesRodrigo Cascarrolho
 
Exercicio de UML - Documentacao Restaurante
Exercicio de UML  - Documentacao RestauranteExercicio de UML  - Documentacao Restaurante
Exercicio de UML - Documentacao RestauranteJuliana Cindra
 

Mais procurados (20)

Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de Sistemas
 
Criando Bons Slides - Prof. Jiani Cardoso
Criando Bons Slides - Prof. Jiani CardosoCriando Bons Slides - Prof. Jiani Cardoso
Criando Bons Slides - Prof. Jiani Cardoso
 
Aula 5 - Cookies e Sessões em PHP
Aula 5 - Cookies e Sessões em PHPAula 5 - Cookies e Sessões em PHP
Aula 5 - Cookies e Sessões em PHP
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em Java
 
Aula13 - Estrutura de repetição (for e while) - PHP
Aula13 - Estrutura de repetição (for e while) - PHPAula13 - Estrutura de repetição (for e while) - PHP
Aula13 - Estrutura de repetição (for e while) - PHP
 
Exemplo de documento de requisitos
Exemplo de documento de requisitosExemplo de documento de requisitos
Exemplo de documento de requisitos
 
Programação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a ObjetosProgramação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a Objetos
 
Aprendizagem por reforço
Aprendizagem por reforçoAprendizagem por reforço
Aprendizagem por reforço
 
JAVA - Matrizes
JAVA - MatrizesJAVA - Matrizes
JAVA - Matrizes
 
Identificação de Necessidades dos Usuários e Requisitos IHC
Identificação de Necessidades dos Usuários e Requisitos IHCIdentificação de Necessidades dos Usuários e Requisitos IHC
Identificação de Necessidades dos Usuários e Requisitos IHC
 
METODOS E TECNICA DE PESQUISA.pptx
METODOS E TECNICA DE PESQUISA.pptxMETODOS E TECNICA DE PESQUISA.pptx
METODOS E TECNICA DE PESQUISA.pptx
 
Bmg Canvas Estratégico
Bmg   Canvas EstratégicoBmg   Canvas Estratégico
Bmg Canvas Estratégico
 
Aps lista de exercícios
Aps lista de exercíciosAps lista de exercícios
Aps lista de exercícios
 
Aula02 - JavaScript
Aula02 - JavaScriptAula02 - JavaScript
Aula02 - JavaScript
 
Interação Humano Computador Capítulo 11 - Análise de Atividades
Interação Humano Computador Capítulo 11 - Análise de AtividadesInteração Humano Computador Capítulo 11 - Análise de Atividades
Interação Humano Computador Capítulo 11 - Análise de Atividades
 
Dinâmica de comunicação
Dinâmica de comunicaçãoDinâmica de comunicação
Dinâmica de comunicação
 
O que faz o formador? Quais os requisitos de acesso à profissão de formador...
O que faz o formador? Quais os requisitos de acesso à profissão de formador...O que faz o formador? Quais os requisitos de acesso à profissão de formador...
O que faz o formador? Quais os requisitos de acesso à profissão de formador...
 
Resumo diagramas de classes
Resumo diagramas de classesResumo diagramas de classes
Resumo diagramas de classes
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
Exercicio de UML - Documentacao Restaurante
Exercicio de UML  - Documentacao RestauranteExercicio de UML  - Documentacao Restaurante
Exercicio de UML - Documentacao Restaurante
 

Destaque

Manipulação de formulários com PHP. Uso de Cookies e Session com PHP.
Manipulação de formulários com PHP. Uso de Cookies e Session com PHP.Manipulação de formulários com PHP. Uso de Cookies e Session com PHP.
Manipulação de formulários com PHP. Uso de Cookies e Session com PHP.Leonardo Soares
 
Php 03 Sessoes Cookies Cabecalhos
Php 03 Sessoes Cookies CabecalhosPhp 03 Sessoes Cookies Cabecalhos
Php 03 Sessoes Cookies CabecalhosRegis Magalhães
 
PHP Aula 05 - E-mails, Cookies e Sessoes
PHP Aula 05 - E-mails, Cookies e SessoesPHP Aula 05 - E-mails, Cookies e Sessoes
PHP Aula 05 - E-mails, Cookies e SessoesDaniel Brandão
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHPPaulo Dayvson
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoLuiz Junior
 

Destaque (8)

Manipulação de formulários com PHP. Uso de Cookies e Session com PHP.
Manipulação de formulários com PHP. Uso de Cookies e Session com PHP.Manipulação de formulários com PHP. Uso de Cookies e Session com PHP.
Manipulação de formulários com PHP. Uso de Cookies e Session com PHP.
 
Php 03 Sessoes Cookies Cabecalhos
Php 03 Sessoes Cookies CabecalhosPhp 03 Sessoes Cookies Cabecalhos
Php 03 Sessoes Cookies Cabecalhos
 
Sessions in php
Sessions in php Sessions in php
Sessions in php
 
Php
PhpPhp
Php
 
PHP Aula 05 - E-mails, Cookies e Sessoes
PHP Aula 05 - E-mails, Cookies e SessoesPHP Aula 05 - E-mails, Cookies e Sessoes
PHP Aula 05 - E-mails, Cookies e Sessoes
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHP
 
Cookie and session
Cookie and sessionCookie and session
Cookie and session
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
 

Semelhante a Aula 11 - Controle de sessão em PHP - Programação Web

Semelhante a Aula 11 - Controle de sessão em PHP - Programação Web (20)

Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Sistema php
Sistema phpSistema php
Sistema php
 
Sessao
SessaoSessao
Sessao
 
Sessões
SessõesSessões
Sessões
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos Web
 
PHP MySQL Aula 08
PHP MySQL Aula 08PHP MySQL Aula 08
PHP MySQL Aula 08
 
Progweb Aula8
Progweb Aula8Progweb Aula8
Progweb Aula8
 
Aula 5 - Cookies e sessões em PHP
Aula 5 - Cookies e sessões em PHPAula 5 - Cookies e sessões em PHP
Aula 5 - Cookies e sessões em PHP
 
Programação Server Side I - Aula 2
Programação Server Side I - Aula 2Programação Server Side I - Aula 2
Programação Server Side I - Aula 2
 
Aula 5
Aula 5Aula 5
Aula 5
 
Php12
Php12Php12
Php12
 
Aula 5 - Cookies e Sessões em PHP
Aula 5 - Cookies e Sessões em PHPAula 5 - Cookies e Sessões em PHP
Aula 5 - Cookies e Sessões em PHP
 
Play Framework - FLISOL
Play Framework - FLISOLPlay Framework - FLISOL
Play Framework - FLISOL
 
Autenticação e Controle de Acesso
Autenticação e Controle de AcessoAutenticação e Controle de Acesso
Autenticação e Controle de Acesso
 
Segurança e Controle de errros
Segurança e Controle de errrosSegurança e Controle de errros
Segurança e Controle de errros
 
ASP.NET - Segurança
ASP.NET - SegurançaASP.NET - Segurança
ASP.NET - Segurança
 
Framework Codeigniter - Sessão
Framework Codeigniter - SessãoFramework Codeigniter - Sessão
Framework Codeigniter - Sessão
 
Bloco 5.4
Bloco 5.4Bloco 5.4
Bloco 5.4
 
HTML5 - Web storage
HTML5 - Web storageHTML5 - Web storage
HTML5 - Web storage
 

Mais de Dalton Martins

Computação cognitiva e políticas culturais
Computação cognitiva e políticas culturaisComputação cognitiva e políticas culturais
Computação cognitiva e políticas culturaisDalton Martins
 
Humanidades digitais e ciência de dados: novos métodos, perspectivas e desaf...
Humanidades digitais e ciência de dados: novos métodos, perspectivas e desaf...Humanidades digitais e ciência de dados: novos métodos, perspectivas e desaf...
Humanidades digitais e ciência de dados: novos métodos, perspectivas e desaf...Dalton Martins
 
Cultura digital, museus e acervos em rede
Cultura digital, museus e acervos em redeCultura digital, museus e acervos em rede
Cultura digital, museus e acervos em redeDalton Martins
 
Digitalização da cultura brasileira - as motivações do projeto Tainacan
Digitalização da cultura brasileira - as motivações do projeto TainacanDigitalização da cultura brasileira - as motivações do projeto Tainacan
Digitalização da cultura brasileira - as motivações do projeto TainacanDalton Martins
 
Processos colaborativos de produção de ontologias - I Fórum Nacional de Sist...
Processos colaborativos de produção de ontologias  - I Fórum Nacional de Sist...Processos colaborativos de produção de ontologias  - I Fórum Nacional de Sist...
Processos colaborativos de produção de ontologias - I Fórum Nacional de Sist...Dalton Martins
 
Do documento às ontologias: uma visão sobre sistemas de organização do conhec...
Do documento às ontologias: uma visão sobre sistemas de organização do conhec...Do documento às ontologias: uma visão sobre sistemas de organização do conhec...
Do documento às ontologias: uma visão sobre sistemas de organização do conhec...Dalton Martins
 
Análise de Redes Sociais para educação à distância na plataforma ELGG para o ...
Análise de Redes Sociais para educação à distância na plataforma ELGG para o ...Análise de Redes Sociais para educação à distância na plataforma ELGG para o ...
Análise de Redes Sociais para educação à distância na plataforma ELGG para o ...Dalton Martins
 
Criança, mídia e consumo na formação de professores
Criança, mídia e consumo na formação de professoresCriança, mídia e consumo na formação de professores
Criança, mídia e consumo na formação de professoresDalton Martins
 
Jornalismo de Dados - Fontes de Informação para produção de Mapas Informacion...
Jornalismo de Dados - Fontes de Informação para produção de Mapas Informacion...Jornalismo de Dados - Fontes de Informação para produção de Mapas Informacion...
Jornalismo de Dados - Fontes de Informação para produção de Mapas Informacion...Dalton Martins
 
In search of a model of human dynamics analysis applied to social sciences
In search of a model of human dynamics analysis applied to social sciencesIn search of a model of human dynamics analysis applied to social sciences
In search of a model of human dynamics analysis applied to social sciencesDalton Martins
 
Novos caminhos da inclusão digital: experiências do projeto +Telecentros
Novos caminhos da inclusão digital: experiências do projeto +TelecentrosNovos caminhos da inclusão digital: experiências do projeto +Telecentros
Novos caminhos da inclusão digital: experiências do projeto +TelecentrosDalton Martins
 
Aula 01 introdução e conceitos básicos sobre gestão
Aula 01   introdução e conceitos básicos sobre gestãoAula 01   introdução e conceitos básicos sobre gestão
Aula 01 introdução e conceitos básicos sobre gestãoDalton Martins
 
Apresentação Semana de Humanização da Saúde: uma visão quantitativa
Apresentação Semana de Humanização da Saúde: uma visão quantitativaApresentação Semana de Humanização da Saúde: uma visão quantitativa
Apresentação Semana de Humanização da Saúde: uma visão quantitativaDalton Martins
 
Design da Informação - Aula 04 - Imagens que informam - design, legendas e di...
Design da Informação - Aula 04 - Imagens que informam - design, legendas e di...Design da Informação - Aula 04 - Imagens que informam - design, legendas e di...
Design da Informação - Aula 04 - Imagens que informam - design, legendas e di...Dalton Martins
 
Design da Informação - Aula 03 - Princípios do design de informação
Design da Informação - Aula 03 - Princípios do design de informaçãoDesign da Informação - Aula 03 - Princípios do design de informação
Design da Informação - Aula 03 - Princípios do design de informaçãoDalton Martins
 
Aula 04 - Tópicos em Gestão da Informação Medidas de posição relativa
Aula 04 - Tópicos em Gestão da Informação Medidas de posição relativaAula 04 - Tópicos em Gestão da Informação Medidas de posição relativa
Aula 04 - Tópicos em Gestão da Informação Medidas de posição relativaDalton Martins
 
Aula 02 - Design da Informação - História e princípios do design de informação
Aula 02 - Design da Informação - História e princípios do design de informaçãoAula 02 - Design da Informação - História e princípios do design de informação
Aula 02 - Design da Informação - História e princípios do design de informaçãoDalton Martins
 
Aula 03 - Identificando e tratando padrões
Aula 03 - Identificando e tratando padrõesAula 03 - Identificando e tratando padrões
Aula 03 - Identificando e tratando padrõesDalton Martins
 
Aula 02 - Estatística da vida cotidiana
Aula 02 - Estatística da vida cotidianaAula 02 - Estatística da vida cotidiana
Aula 02 - Estatística da vida cotidianaDalton Martins
 
Tópicos em Gestão da Informação II - Aula 01 - Desafios atuais da Gestão da I...
Tópicos em Gestão da Informação II - Aula 01 - Desafios atuais da Gestão da I...Tópicos em Gestão da Informação II - Aula 01 - Desafios atuais da Gestão da I...
Tópicos em Gestão da Informação II - Aula 01 - Desafios atuais da Gestão da I...Dalton Martins
 

Mais de Dalton Martins (20)

Computação cognitiva e políticas culturais
Computação cognitiva e políticas culturaisComputação cognitiva e políticas culturais
Computação cognitiva e políticas culturais
 
Humanidades digitais e ciência de dados: novos métodos, perspectivas e desaf...
Humanidades digitais e ciência de dados: novos métodos, perspectivas e desaf...Humanidades digitais e ciência de dados: novos métodos, perspectivas e desaf...
Humanidades digitais e ciência de dados: novos métodos, perspectivas e desaf...
 
Cultura digital, museus e acervos em rede
Cultura digital, museus e acervos em redeCultura digital, museus e acervos em rede
Cultura digital, museus e acervos em rede
 
Digitalização da cultura brasileira - as motivações do projeto Tainacan
Digitalização da cultura brasileira - as motivações do projeto TainacanDigitalização da cultura brasileira - as motivações do projeto Tainacan
Digitalização da cultura brasileira - as motivações do projeto Tainacan
 
Processos colaborativos de produção de ontologias - I Fórum Nacional de Sist...
Processos colaborativos de produção de ontologias  - I Fórum Nacional de Sist...Processos colaborativos de produção de ontologias  - I Fórum Nacional de Sist...
Processos colaborativos de produção de ontologias - I Fórum Nacional de Sist...
 
Do documento às ontologias: uma visão sobre sistemas de organização do conhec...
Do documento às ontologias: uma visão sobre sistemas de organização do conhec...Do documento às ontologias: uma visão sobre sistemas de organização do conhec...
Do documento às ontologias: uma visão sobre sistemas de organização do conhec...
 
Análise de Redes Sociais para educação à distância na plataforma ELGG para o ...
Análise de Redes Sociais para educação à distância na plataforma ELGG para o ...Análise de Redes Sociais para educação à distância na plataforma ELGG para o ...
Análise de Redes Sociais para educação à distância na plataforma ELGG para o ...
 
Criança, mídia e consumo na formação de professores
Criança, mídia e consumo na formação de professoresCriança, mídia e consumo na formação de professores
Criança, mídia e consumo na formação de professores
 
Jornalismo de Dados - Fontes de Informação para produção de Mapas Informacion...
Jornalismo de Dados - Fontes de Informação para produção de Mapas Informacion...Jornalismo de Dados - Fontes de Informação para produção de Mapas Informacion...
Jornalismo de Dados - Fontes de Informação para produção de Mapas Informacion...
 
In search of a model of human dynamics analysis applied to social sciences
In search of a model of human dynamics analysis applied to social sciencesIn search of a model of human dynamics analysis applied to social sciences
In search of a model of human dynamics analysis applied to social sciences
 
Novos caminhos da inclusão digital: experiências do projeto +Telecentros
Novos caminhos da inclusão digital: experiências do projeto +TelecentrosNovos caminhos da inclusão digital: experiências do projeto +Telecentros
Novos caminhos da inclusão digital: experiências do projeto +Telecentros
 
Aula 01 introdução e conceitos básicos sobre gestão
Aula 01   introdução e conceitos básicos sobre gestãoAula 01   introdução e conceitos básicos sobre gestão
Aula 01 introdução e conceitos básicos sobre gestão
 
Apresentação Semana de Humanização da Saúde: uma visão quantitativa
Apresentação Semana de Humanização da Saúde: uma visão quantitativaApresentação Semana de Humanização da Saúde: uma visão quantitativa
Apresentação Semana de Humanização da Saúde: uma visão quantitativa
 
Design da Informação - Aula 04 - Imagens que informam - design, legendas e di...
Design da Informação - Aula 04 - Imagens que informam - design, legendas e di...Design da Informação - Aula 04 - Imagens que informam - design, legendas e di...
Design da Informação - Aula 04 - Imagens que informam - design, legendas e di...
 
Design da Informação - Aula 03 - Princípios do design de informação
Design da Informação - Aula 03 - Princípios do design de informaçãoDesign da Informação - Aula 03 - Princípios do design de informação
Design da Informação - Aula 03 - Princípios do design de informação
 
Aula 04 - Tópicos em Gestão da Informação Medidas de posição relativa
Aula 04 - Tópicos em Gestão da Informação Medidas de posição relativaAula 04 - Tópicos em Gestão da Informação Medidas de posição relativa
Aula 04 - Tópicos em Gestão da Informação Medidas de posição relativa
 
Aula 02 - Design da Informação - História e princípios do design de informação
Aula 02 - Design da Informação - História e princípios do design de informaçãoAula 02 - Design da Informação - História e princípios do design de informação
Aula 02 - Design da Informação - História e princípios do design de informação
 
Aula 03 - Identificando e tratando padrões
Aula 03 - Identificando e tratando padrõesAula 03 - Identificando e tratando padrões
Aula 03 - Identificando e tratando padrões
 
Aula 02 - Estatística da vida cotidiana
Aula 02 - Estatística da vida cotidianaAula 02 - Estatística da vida cotidiana
Aula 02 - Estatística da vida cotidiana
 
Tópicos em Gestão da Informação II - Aula 01 - Desafios atuais da Gestão da I...
Tópicos em Gestão da Informação II - Aula 01 - Desafios atuais da Gestão da I...Tópicos em Gestão da Informação II - Aula 01 - Desafios atuais da Gestão da I...
Tópicos em Gestão da Informação II - Aula 01 - Desafios atuais da Gestão da I...
 

Último

CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptxCIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptxMariaSantos298247
 
Atividade português 7 ano página 38 a 40
Atividade português 7 ano página 38 a 40Atividade português 7 ano página 38 a 40
Atividade português 7 ano página 38 a 40vitoriaalyce2011
 
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdfARIANAMENDES11
 
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...cristianofiori1
 
Conteúdo sobre a formação e expansão persa
Conteúdo sobre a formação e expansão persaConteúdo sobre a formação e expansão persa
Conteúdo sobre a formação e expansão persafelipescherner
 
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptxSlides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptxLuizHenriquedeAlmeid6
 
PowerPoint Folha de cálculo Excel 5 e 6 anos do ensino básico
PowerPoint Folha de cálculo Excel 5 e 6 anos do ensino básicoPowerPoint Folha de cálculo Excel 5 e 6 anos do ensino básico
PowerPoint Folha de cálculo Excel 5 e 6 anos do ensino básicoPereira801
 
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....LuizHenriquedeAlmeid6
 
Apresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimentoApresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimentoPedroFerreira53928
 
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdfHans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdfLeandroTelesRocha2
 
Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Centro Jacques Delors
 
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptxDIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptxcleanelima11
 
Junho Violeta - Sugestão de Ações na Igreja
Junho Violeta - Sugestão de Ações na IgrejaJunho Violeta - Sugestão de Ações na Igreja
Junho Violeta - Sugestão de Ações na IgrejaComando Resgatai
 
curso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdfcurso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdfLeandroTelesRocha2
 
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfGRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfrarakey779
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxLuizHenriquedeAlmeid6
 
Obra - Curso de Direito Tributário - Doutrina Direito
Obra - Curso de Direito Tributário - Doutrina DireitoObra - Curso de Direito Tributário - Doutrina Direito
Obra - Curso de Direito Tributário - Doutrina Direitorarakey779
 
Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdf
Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdfCurso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdf
Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdfLeandroTelesRocha2
 
DESAFIO FILOSÓFICO - 1ª SÉRIE - SESI 2020.pptx
DESAFIO FILOSÓFICO - 1ª SÉRIE - SESI 2020.pptxDESAFIO FILOSÓFICO - 1ª SÉRIE - SESI 2020.pptx
DESAFIO FILOSÓFICO - 1ª SÉRIE - SESI 2020.pptxProfessor Liniker Santana
 
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...IsabelPereira2010
 

Último (20)

CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptxCIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
 
Atividade português 7 ano página 38 a 40
Atividade português 7 ano página 38 a 40Atividade português 7 ano página 38 a 40
Atividade português 7 ano página 38 a 40
 
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
 
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
 
Conteúdo sobre a formação e expansão persa
Conteúdo sobre a formação e expansão persaConteúdo sobre a formação e expansão persa
Conteúdo sobre a formação e expansão persa
 
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptxSlides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
 
PowerPoint Folha de cálculo Excel 5 e 6 anos do ensino básico
PowerPoint Folha de cálculo Excel 5 e 6 anos do ensino básicoPowerPoint Folha de cálculo Excel 5 e 6 anos do ensino básico
PowerPoint Folha de cálculo Excel 5 e 6 anos do ensino básico
 
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
 
Apresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimentoApresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimento
 
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdfHans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
 
Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)
 
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptxDIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
 
Junho Violeta - Sugestão de Ações na Igreja
Junho Violeta - Sugestão de Ações na IgrejaJunho Violeta - Sugestão de Ações na Igreja
Junho Violeta - Sugestão de Ações na Igreja
 
curso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdfcurso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdf
 
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfGRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
 
Obra - Curso de Direito Tributário - Doutrina Direito
Obra - Curso de Direito Tributário - Doutrina DireitoObra - Curso de Direito Tributário - Doutrina Direito
Obra - Curso de Direito Tributário - Doutrina Direito
 
Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdf
Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdfCurso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdf
Curso de Direito do Trabalho - Maurício Godinho Delgado - 2019.pdf
 
DESAFIO FILOSÓFICO - 1ª SÉRIE - SESI 2020.pptx
DESAFIO FILOSÓFICO - 1ª SÉRIE - SESI 2020.pptxDESAFIO FILOSÓFICO - 1ª SÉRIE - SESI 2020.pptx
DESAFIO FILOSÓFICO - 1ª SÉRIE - SESI 2020.pptx
 
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
 

Aula 11 - Controle de sessão em PHP - Programação Web

  • 1. Programação Web Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 11 – Controle de sessão de usuário Dalton Martins dmartins@gmail.com São Paulo, Novembro, 2011
  • 2. Importância do controle de sessão O protocolo HTTP, utilizado para trocar dados com um servidor web, não faz controle de estado de conexão; Ou seja, a cada nova requisição para um servidor, o protocolo não considera o que ocorreu anteriormente; Isso traz um problema quando queremos customizar o comportamento de aplicações ao perfil de determinados usuários. Umas das primeiras soluções para esse problema foi a utilização de cookies → informações que são gravadas na máquina do usuário e podem ser recuperadas por uma aplicação posteriormente; No entanto, os cookies possuem limitações e fragilidades em termos de segurança, não sendo o modo mais adequado par Surge uma outra solução → gerenciamento de sessões!
  • 3. Gerenciamento de sessões É um dispositivo utilizado por alguns servidores e linguagens de programação Web que: → cada visitante de um site recebe um identificador único, chamado de SID (session ID); → o SID pode ser correlacionado com qualquer outro conjunto de informações, como por exemplo, a cor de fundo do site, níveis de permissão de acesso, módulos disponíveis, etc... → em termos de um banco de dados relacional, o SID pode ser uma chave primária que correlaciona os dados de um usuário. No entanto, como o SID é mantido fixo relacionado a um usuário se o protocolo HTTP não guarda estado de conexão?
  • 4. 2 modos de atribuir SID 1. Cookies: Ao invés de guardar as preferências do usuário num cookie em sua máquina, o novo mecanismo de gerenciamento de sessão armazena apenas o SID do usuário em um cookie local, ficando todo o resto da informação a critério de controle da aplicação; 2. Reescrita da URL: É um mecanismo que incorpora na URL o código SID de um usuário. É um modo mais frágil.
  • 5. Trabalhando com gerenciamento de sessão Alguns recursos fundamentais: → session_start() : inicializa uma sessão e, se já inicializada, recupera as variáveis de sessão atuais numa página; → session_destroy() : finaliza a sessão, destruindo todas as variáveis em utilização; → variáveis estilo $_SESSION['nome'] : é o mecanismo que permite criarmos variáveis de sessão. Podemos utilizar quantas acharmos necessário; → session_encode() : codifica as variáveis de sessão é uma única linha string. Facilita gravar logs em banco de dados; → session_decode() : decodifica as variáveis, permitindo separá-las novamente;
  • 6. Exemplo – parte 1 <?php session_start(); if (! isset($_SESSION['usuario'])) { if (isset($_POST['usuario'])) { $_SESSION['usuario']=$_POST['usuario']; echo "Usuario registrado! Recarregue a página para ver o que ocorre!"; } else { require_once('login.html'); } } else { echo "O seu identificador de sessão é ".session_id()."<br>"; $_SESSION['usuario']="pedro"; $_SESSION['datalogin']= date("M d Y H:i:s"); echo "<br>"; echo "Nome de usuario..: ".$_SESSION['usuario']."<br>"; echo "Data de login....: ".$_SESSION['datalogin']."<br><br>"; $codificasessao = session_encode(); echo $codificasessao."<br><br>"; echo "<a href="outroarquivo.php">Acessar outro arquivo para testar variaveis de sessao</a>"; } ?>
  • 7. Exemplo – parte 2 <?php session_start(); if (isset($_SESSION['usuario'])) { echo "Sessao previamente iniciada <br>"; echo "Usuario logado...: ".$_SESSION['usuario']."<br>"; echo "Finalizando a sessao...<br>"; session_destroy(); echo "<a href="controleteste.php">Acessar arquivo inicial para testar variaveis de sessao</a>"; } else { echo "A sessao nao foi previamente iniciada!"; } ?>
  • 8. Exemplo – parte 3 <p> <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> Usuario:<br /><input type="text" name="usuario" size="10" /><br /> Senha:<br /><input type="password" name="senha" SIZE="10" /><br /> <input type="submit" value="Login" /> </form> </p>