SlideShare uma empresa Scribd logo
1 de 26
Programação para WEB ,[object Object],[object Object],PHP: Sessões, Cookies e Cabeçalhos HTTP
Sessões ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
ID de Sessão ,[object Object],[object Object],[object Object],[object Object]
ID de Sessão via Cookie ,[object Object]
Iniciando uma Sessão ,[object Object],[object Object]
Armazenando algo na Sessão ,[object Object],[object Object],[object Object]
Armazenando algo na Sessão <?php   session_start(); $variavel_01   =   &quot;Programação&quot; ; $variavel_02   =   &quot;para WEB&quot; ; session_register( 'variavel_01' ); $_SESSION [ 'variavel_02' ]   =   $variavel_02 ; ?> < html > < head > < title > CEFET-PI PHB </ title > </ head > < body > < p > Informações sobre a sessão: </ p > <?php   echo   '<p>Session ID: ' .session_id(). '</p>' ; print_r( $_SESSION );   ?> </ p > </ body > </ html >
Eliminando algo da Sessão ,[object Object],[object Object],[object Object],[object Object]
Tempo de vida da Sessão ,[object Object],[object Object],[object Object],[object Object],[object Object]
Destruindo uma Sessão ,[object Object],[object Object],[object Object]
Cookie ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Informações contidas em um Cookie ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Cookie ,[object Object],[object Object],[object Object]
Adicionando Cookies <?php   /* dura até o fechamento do browser */ setcookie( 'meu_cookie1' ,   'PHP' ); /* dura 1 hora */ setcookie( 'meu_cookie2' ,   'WEB' ,   time()+ 3600 );   /* dura 1 hora */ setcookie( 'meu_cookie3' ,   'NOW' ,   time()+ 3600 ,   '/regis/' ,   '' ); ?>
Usando Cookies <?php echo   'meu_cookie1: ' ; echo  $_COOKIE [ 'meu_cookie1' ]. '<br/>' ; echo   'meu_cookie2: ' ; echo   $_COOKIE [ 'meu_cookie2' ]. '<br/>' ; echo   'meu_cookie3: ' ; echo   $_COOKIE [ 'meu_cookie3' ]. '<br/>' ; print_r( $_COOKIE ); ?>
Removendo Cookies <?php // configurar valor com string vazia setcookie   ( 'meu_cookie1' ,   '' ); setcookie   ( 'meu_cookie2' ,   '' ); // configurar a data de expiração para o passado setcookie   ( 'meu_cookie3' ,   '' ,   time()   -   3600 ); ?>
Adicionando Array em Cookies <?php setcookie( 'pessoa[0]' ,   'Maria' ); setcookie( 'pessoa[1]' ,   'João' ); setcookie( 'pessoa[2]' ,   'José' ); ?>
Contadores (session e cookie) <?php session_start(); $_SESSION [ 'contador_session' ]++; setcookie( 'contador_cookie' , $_COOKIE [ 'contador_cookie' ]   +   1 ); ?> < html > < head > < title > CEFET-PI PHB </ title > </ head > < body > < p > Contador Session:  <?php   echo   $_SESSION [ 'contador_session' ]   ?> < p /> < p > Contador Cookie:  <?php   echo   $_COOKIE [ 'contador_cookie' ]   +   1   ?> < p /> <?php   print_r( $_COOKIE );   ?> </ body > </ html >
Inserindo itens em um array <?php session_start(); if   (strlen(trim( $_POST [ 'nome' ]))   >   0 )   { if   (gettype( $_SESSION [ 'nomes' ])   ==   'array' )   { array_push( $_SESSION [ 'nomes' ],   $_POST [ 'nome' ]); }   else   { $_SESSION [ 'nomes' ]   =   array ( $_POST [ 'nome' ]); } } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < form  action = &quot;exemplo_session3.php&quot;  method = &quot;post&quot; > < p > Nome:  < input  name = &quot;nome&quot;  type = &quot;text&quot; /></ p > < input  type = &quot;submit&quot;  value = &quot;Inserir Nome&quot; /> </ form > <?php   if   (gettype( $_SESSION [ 'nomes' ])   ==   'array' )   { echo   '<p>Nomes inseridos na sessão:</p>' ; foreach   ( $_SESSION [ 'nomes' ]   as   $item )   { echo   $item . '<br/>' ; } } ?> </ body > </ html >
Inserindo itens em um array <?php session_start(); if   (strlen(trim( $_POST [ 'nome' ]))   >   0 )   { $tamanho   =   count( $_COOKIE [ 'nomes' ]); setcookie( &quot;nomes[ $tamanho ]&quot; ,   $_POST [ 'nome' ]); } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < form  action = &quot;exemplo_session3.php&quot;  method = &quot;post&quot; > < p > Nome:  < input  name = &quot;nome&quot;  type = &quot;text&quot; /></ p > < input  type = &quot;submit&quot;  value = &quot;Inserir Nome&quot; /> </ form > <?php   if   (gettype( $_COOKIE [ 'nomes' ])   ==   'array' )   { echo   '<p>Nomes inseridos na sessão:</p>' ; foreach   ( $_COOKIE [ 'nomes' ]   as   $item )   { echo   $item . '<br/>' ; } echo   $_POST [ 'nome' ]. '<br/>' ; } ?> </ body > </ html >
Cabeçalhos HTTP ,[object Object],[object Object],<?php header( 'Location: http://localhost/xampp' ); exit ; ?> <?php $servidor   =   'http://'   .   $_SERVER [ 'HTTP_HOST' ]; header( 'Location: '   .   $servidor   .   '/xampp/' ); exit ; ?>
Redirecionamento via HTML < html > < head > < meta  http-equiv = &quot;refresh&quot;   content = &quot;0;url=http://localhost/xampp/&quot;  /> </ head > < body > < p > Redirecionando... </ p > </ body > </ html >
Autenticação HTTP ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Autenticação HTTP <?php function   authenticate()   { header( 'WWW-Authenticate: Basic realm=&quot;CEFET-PHB&quot;' ); header( 'HTTP/1.0 401 Unauthorized' ); echo   'Usuário ou senha invalido(s).' ; exit ; } if   (! isset ( $_SERVER [ 'PHP_AUTH_USER' ]))   { authenticate(); } if   ( $_SERVER [ 'PHP_AUTH_USER' ]   !=   'regis'   ||   $_SERVER [ 'PHP_AUTH_PW' ]   !=   '1234' )   { authenticate(); } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < p > Bem-vindo ao nosso site!!! </ p > </ body > </ html >
CAPTCHA <!-- exemplo_captcha.php --> < html > < head > < title > CEFET-PHB </ title > </ head > < body > < h1 > CAPTCHA </ h1 > < p > Completely Automated Public Turing test to tell Computers and Humans Apart </ p > < p > teste de Turing público completamente automatizado para diferenciar entre computadores e humanos </ p > < img  src = &quot;exemplo_captcha2.php&quot;  /> </ body > </ html >
CAPTCHA <?php // exemplo_captcha2.php header( 'Content-type: image/png' ); // Requisitos mínimos if (!function_exists( &quot;gd_info&quot; ))   { echo   &quot;Biblioteca GD não instalada.&quot; ; exit (); } // Criar a imagem $imagem   =   @imagecreate( 100 , 100 ); // Criar a paleta de cores $branco   =   @imagecolorallocate( $imagem , 0xFF , 0xFF , 0xFF ); $azulescuro   =   @imagecolorallocate( $imagem , 0x00 , 0x00 , 0x80 ); $verde   =   @imagecolorallocate( $imagem , 0x00 , 0xFF , 0x00 ); $verdeescuro   =   @imagecolorallocate( $imagem , 0x00 , 0x80 , 0x00 ); $vermelhoescuro   =   @imagecolorallocate( $imagem , 0x80 , 0x00 , 0x00 ); // Desenhar linhas aleatórias for ( $i   =   0 ; $i   <   3 ; $i ++) @imageline( $imagem ,rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ), $vermelhoescuro ); for ( $i   =   0 ; $i   <   3 ; $i ++) @imageline( $imagem ,rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ), $verdeescuro ); for ( $i   =   0 ; $i   <   3 ; $i ++) @imageline( $imagem ,rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ), $verde ); // Escrever palavra-passe aleatória for ( $i   =   0 ; $i   <   4 ; $i ++) @imagestring( $imagem , 6 , 32   +   10   *   $i , 32 +rand(- 5 , 5 ),rand( 1 , 9 ), $azulescuro ); // Rotacionar a imagem $imagem   =   @imagerotate( $imagem , 10 , $branco ); // Finalização da imagem @imagepng( $imagem ); ?>

Mais conteúdo relacionado

Mais procurados

HTML5 Básico: Formulários (aula 2)
HTML5 Básico: Formulários (aula 2)HTML5 Básico: Formulários (aula 2)
HTML5 Básico: Formulários (aula 2)Gustavo Zimmermann
 
Web Application Development Tools for Creating Perfect User Experience
Web Application Development Tools for Creating Perfect User ExperienceWeb Application Development Tools for Creating Perfect User Experience
Web Application Development Tools for Creating Perfect User ExperienceChromeInfo Technologies
 
Introduction to Columnstore Indexes
Introduction to Columnstore IndexesIntroduction to Columnstore Indexes
Introduction to Columnstore IndexesJason Strate
 
Apresentação visão computacional
Apresentação visão computacionalApresentação visão computacional
Apresentação visão computacionalEdvaldo Araújo
 
Introduction to NOSQL databases
Introduction to NOSQL databasesIntroduction to NOSQL databases
Introduction to NOSQL databasesAshwani Kumar
 
1. introduction to no sql
1. introduction to no sql1. introduction to no sql
1. introduction to no sqlAnuja Gunale
 
Lecture 12: React-Native Firebase Authentication
Lecture 12: React-Native Firebase AuthenticationLecture 12: React-Native Firebase Authentication
Lecture 12: React-Native Firebase AuthenticationKobkrit Viriyayudhakorn
 
Real Time Communication using Node.js and Socket.io
Real Time Communication using Node.js and Socket.ioReal Time Communication using Node.js and Socket.io
Real Time Communication using Node.js and Socket.ioMindfire Solutions
 
1-01: Introduction To Web Development
1-01: Introduction To  Web  Development1-01: Introduction To  Web  Development
1-01: Introduction To Web Developmentapnwebdev
 
Palestra: Robótica com Arduino
Palestra: Robótica com ArduinoPalestra: Robótica com Arduino
Palestra: Robótica com ArduinoFelipe Martins
 
Introdução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxIntrodução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxMarceloRosenbrock1
 
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxGetting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxIlesh Mistry
 
How To Get a 100% Lighthouse Performance Score
How To Get a 100% Lighthouse Performance Score How To Get a 100% Lighthouse Performance Score
How To Get a 100% Lighthouse Performance Score Polly Pospelova
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development PresentationTurnToTech
 
How UI Framework improves design process
How UI Framework improves design processHow UI Framework improves design process
How UI Framework improves design processMarian Mota
 

Mais procurados (20)

HTML5 Básico: Formulários (aula 2)
HTML5 Básico: Formulários (aula 2)HTML5 Básico: Formulários (aula 2)
HTML5 Básico: Formulários (aula 2)
 
Laravel
LaravelLaravel
Laravel
 
Web Application Development Tools for Creating Perfect User Experience
Web Application Development Tools for Creating Perfect User ExperienceWeb Application Development Tools for Creating Perfect User Experience
Web Application Development Tools for Creating Perfect User Experience
 
Introduction to Columnstore Indexes
Introduction to Columnstore IndexesIntroduction to Columnstore Indexes
Introduction to Columnstore Indexes
 
Apresentação visão computacional
Apresentação visão computacionalApresentação visão computacional
Apresentação visão computacional
 
Web vitals
Web vitalsWeb vitals
Web vitals
 
4. hbase overview
4. hbase overview4. hbase overview
4. hbase overview
 
Introduction to NOSQL databases
Introduction to NOSQL databasesIntroduction to NOSQL databases
Introduction to NOSQL databases
 
1. introduction to no sql
1. introduction to no sql1. introduction to no sql
1. introduction to no sql
 
Lecture 12: React-Native Firebase Authentication
Lecture 12: React-Native Firebase AuthenticationLecture 12: React-Native Firebase Authentication
Lecture 12: React-Native Firebase Authentication
 
Real Time Communication using Node.js and Socket.io
Real Time Communication using Node.js and Socket.ioReal Time Communication using Node.js and Socket.io
Real Time Communication using Node.js and Socket.io
 
1-01: Introduction To Web Development
1-01: Introduction To  Web  Development1-01: Introduction To  Web  Development
1-01: Introduction To Web Development
 
Curso HTML e CSS Part1
Curso HTML e CSS Part1Curso HTML e CSS Part1
Curso HTML e CSS Part1
 
Palestra: Robótica com Arduino
Palestra: Robótica com ArduinoPalestra: Robótica com Arduino
Palestra: Robótica com Arduino
 
Introdução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxIntrodução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptx
 
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxGetting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
 
Curso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTMLCurso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTML
 
How To Get a 100% Lighthouse Performance Score
How To Get a 100% Lighthouse Performance Score How To Get a 100% Lighthouse Performance Score
How To Get a 100% Lighthouse Performance Score
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development Presentation
 
How UI Framework improves design process
How UI Framework improves design processHow UI Framework improves design process
How UI Framework improves design process
 

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
 
Aula 11 - Controle de sessão em PHP - Programação Web
Aula 11  - Controle de sessão em PHP - Programação WebAula 11  - Controle de sessão em PHP - Programação Web
Aula 11 - Controle de sessão em PHP - Programação WebDalton Martins
 
A Ilustração na Comunicação Visual das Empresas
A Ilustração na Comunicação Visual das EmpresasA Ilustração na Comunicação Visual das Empresas
A Ilustração na Comunicação Visual das EmpresasRodTramonte
 
Projeto gráfico para impressos jornalísticos
Projeto gráfico para impressos jornalísticosProjeto gráfico para impressos jornalísticos
Projeto gráfico para impressos jornalísticosGuilherme Carvalho
 
Projeto editorial e projeto gráfico
Projeto editorial e projeto gráficoProjeto editorial e projeto gráfico
Projeto editorial e projeto gráficoaulasdejornalismo
 

Destaque (9)

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
 
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.
 
Aula 11 - Controle de sessão em PHP - Programação Web
Aula 11  - Controle de sessão em PHP - Programação WebAula 11  - Controle de sessão em PHP - Programação Web
Aula 11 - Controle de sessão em PHP - Programação Web
 
Sessions in php
Sessions in php Sessions in php
Sessions in php
 
A Ilustração na Comunicação Visual das Empresas
A Ilustração na Comunicação Visual das EmpresasA Ilustração na Comunicação Visual das Empresas
A Ilustração na Comunicação Visual das Empresas
 
Entrevista MIE
Entrevista MIEEntrevista MIE
Entrevista MIE
 
Projeto gráfico para impressos jornalísticos
Projeto gráfico para impressos jornalísticosProjeto gráfico para impressos jornalísticos
Projeto gráfico para impressos jornalísticos
 
Projeto editorial e projeto gráfico
Projeto editorial e projeto gráficoProjeto editorial e projeto gráfico
Projeto editorial e projeto gráfico
 
Cookie and session
Cookie and sessionCookie and session
Cookie and session
 

Semelhante a Php 03 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_cabecalhosRegis Magalhães
 
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_cabecalhosRegis Magalhães
 
Puppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGilPuppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGiljefesrodrigues
 
Apresentacao codeigniter
Apresentacao codeigniterApresentacao codeigniter
Apresentacao codeigniterAndré Tagliati
 
Smarty Template Engine
Smarty Template EngineSmarty Template Engine
Smarty Template EngineDiego Tremper
 
Escrevendo códigos php seguros
Escrevendo códigos php segurosEscrevendo códigos php seguros
Escrevendo códigos php segurosDouglas V. Pasqua
 
Otimização e Escalabilidade
Otimização e EscalabilidadeOtimização e Escalabilidade
Otimização e Escalabilidademetzen
 
2009 05 20 Floripa Flex
2009 05 20 Floripa Flex2009 05 20 Floripa Flex
2009 05 20 Floripa FlexEduardo Kraus
 
Desenvolvimento de aplicativos para o Facebook
Desenvolvimento de aplicativos para o FacebookDesenvolvimento de aplicativos para o Facebook
Desenvolvimento de aplicativos para o FacebookRicardo Rodrigues Nunes
 
Programação Dinâmica para Web - Aula 2
Programação Dinâmica para Web - Aula 2Programação Dinâmica para Web - Aula 2
Programação Dinâmica para Web - Aula 2Thyago Maia
 
Desenvolvimento de web sites com php
Desenvolvimento de web sites com phpDesenvolvimento de web sites com php
Desenvolvimento de web sites com phpbrenod123
 
Desenvolvendo aplicações web com o framework cakephp
Desenvolvendo aplicações web com o framework cakephpDesenvolvendo aplicações web com o framework cakephp
Desenvolvendo aplicações web com o framework cakephpRodrigo Aramburu
 
Introdução ao framework CakePHP
Introdução ao framework CakePHPIntrodução ao framework CakePHP
Introdução ao framework CakePHPigorpimentel
 

Semelhante a Php 03 Sessoes Cookies Cabecalhos (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
 
Php 04 Mysql
Php 04 MysqlPhp 04 Mysql
Php 04 Mysql
 
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
 
Php 07 Cakephp
Php 07 CakephpPhp 07 Cakephp
Php 07 Cakephp
 
Hello SAFE World!!!
Hello SAFE World!!!Hello SAFE World!!!
Hello SAFE World!!!
 
PHP FrameWARks - FISL
PHP FrameWARks - FISLPHP FrameWARks - FISL
PHP FrameWARks - FISL
 
Puppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGilPuppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGil
 
Apresentacao codeigniter
Apresentacao codeigniterApresentacao codeigniter
Apresentacao codeigniter
 
Smarty Template Engine
Smarty Template EngineSmarty Template Engine
Smarty Template Engine
 
Escrevendo códigos php seguros
Escrevendo códigos php segurosEscrevendo códigos php seguros
Escrevendo códigos php seguros
 
Otimização e Escalabilidade
Otimização e EscalabilidadeOtimização e Escalabilidade
Otimização e Escalabilidade
 
2009 05 20 Floripa Flex
2009 05 20 Floripa Flex2009 05 20 Floripa Flex
2009 05 20 Floripa Flex
 
Desenvolvimento de aplicativos para o Facebook
Desenvolvimento de aplicativos para o FacebookDesenvolvimento de aplicativos para o Facebook
Desenvolvimento de aplicativos para o Facebook
 
nDeveloper Framework
nDeveloper FrameworknDeveloper Framework
nDeveloper Framework
 
Programação Dinâmica para Web - Aula 2
Programação Dinâmica para Web - Aula 2Programação Dinâmica para Web - Aula 2
Programação Dinâmica para Web - Aula 2
 
Desenvolvimento de web sites com php
Desenvolvimento de web sites com phpDesenvolvimento de web sites com php
Desenvolvimento de web sites com php
 
NotORM
NotORMNotORM
NotORM
 
Desenvolvendo aplicações web com o framework cakephp
Desenvolvendo aplicações web com o framework cakephpDesenvolvendo aplicações web com o framework cakephp
Desenvolvendo aplicações web com o framework cakephp
 
Sistema php
Sistema phpSistema php
Sistema php
 
Introdução ao framework CakePHP
Introdução ao framework CakePHPIntrodução ao framework CakePHP
Introdução ao framework CakePHP
 

Mais de Regis Magalhães

Mais de Regis Magalhães (20)

High Dimensional Data
High Dimensional DataHigh Dimensional Data
High Dimensional Data
 
Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
 
PHP 10 CodeIgniter
PHP 10 CodeIgniterPHP 10 CodeIgniter
PHP 10 CodeIgniter
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducao
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
 
Prog web 09-php-crud-mvc
Prog web 09-php-crud-mvcProg web 09-php-crud-mvc
Prog web 09-php-crud-mvc
 
Prog web 08-php-mvc
Prog web 08-php-mvcProg web 08-php-mvc
Prog web 08-php-mvc
 
Prog web 07-pdo
Prog web 07-pdoProg web 07-pdo
Prog web 07-pdo
 
Prog web 06-php-oo
Prog web 06-php-ooProg web 06-php-oo
Prog web 06-php-oo
 
Prog web 05-php-mysql
Prog web 05-php-mysqlProg web 05-php-mysql
Prog web 05-php-mysql
 
Prog web 04-php-gd
Prog web 04-php-gdProg web 04-php-gd
Prog web 04-php-gd
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducao
 
Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011
 
Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011
 
Curso Ruby
Curso RubyCurso Ruby
Curso Ruby
 
Easy Rails
Easy RailsEasy Rails
Easy Rails
 

Php 03 Sessoes Cookies Cabecalhos

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7. Armazenando algo na Sessão <?php session_start(); $variavel_01 = &quot;Programação&quot; ; $variavel_02 = &quot;para WEB&quot; ; session_register( 'variavel_01' ); $_SESSION [ 'variavel_02' ] = $variavel_02 ; ?> < html > < head > < title > CEFET-PI PHB </ title > </ head > < body > < p > Informações sobre a sessão: </ p > <?php echo '<p>Session ID: ' .session_id(). '</p>' ; print_r( $_SESSION ); ?> </ p > </ body > </ html >
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. Adicionando Cookies <?php /* dura até o fechamento do browser */ setcookie( 'meu_cookie1' , 'PHP' ); /* dura 1 hora */ setcookie( 'meu_cookie2' , 'WEB' , time()+ 3600 ); /* dura 1 hora */ setcookie( 'meu_cookie3' , 'NOW' , time()+ 3600 , '/regis/' , '' ); ?>
  • 15. Usando Cookies <?php echo 'meu_cookie1: ' ; echo $_COOKIE [ 'meu_cookie1' ]. '<br/>' ; echo 'meu_cookie2: ' ; echo $_COOKIE [ 'meu_cookie2' ]. '<br/>' ; echo 'meu_cookie3: ' ; echo $_COOKIE [ 'meu_cookie3' ]. '<br/>' ; print_r( $_COOKIE ); ?>
  • 16. Removendo Cookies <?php // configurar valor com string vazia setcookie ( 'meu_cookie1' , '' ); setcookie ( 'meu_cookie2' , '' ); // configurar a data de expiração para o passado setcookie ( 'meu_cookie3' , '' , time() - 3600 ); ?>
  • 17. Adicionando Array em Cookies <?php setcookie( 'pessoa[0]' , 'Maria' ); setcookie( 'pessoa[1]' , 'João' ); setcookie( 'pessoa[2]' , 'José' ); ?>
  • 18. Contadores (session e cookie) <?php session_start(); $_SESSION [ 'contador_session' ]++; setcookie( 'contador_cookie' , $_COOKIE [ 'contador_cookie' ] + 1 ); ?> < html > < head > < title > CEFET-PI PHB </ title > </ head > < body > < p > Contador Session: <?php echo $_SESSION [ 'contador_session' ] ?> < p /> < p > Contador Cookie: <?php echo $_COOKIE [ 'contador_cookie' ] + 1 ?> < p /> <?php print_r( $_COOKIE ); ?> </ body > </ html >
  • 19. Inserindo itens em um array <?php session_start(); if (strlen(trim( $_POST [ 'nome' ])) > 0 ) { if (gettype( $_SESSION [ 'nomes' ]) == 'array' ) { array_push( $_SESSION [ 'nomes' ], $_POST [ 'nome' ]); } else { $_SESSION [ 'nomes' ] = array ( $_POST [ 'nome' ]); } } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < form action = &quot;exemplo_session3.php&quot; method = &quot;post&quot; > < p > Nome: < input name = &quot;nome&quot; type = &quot;text&quot; /></ p > < input type = &quot;submit&quot; value = &quot;Inserir Nome&quot; /> </ form > <?php if (gettype( $_SESSION [ 'nomes' ]) == 'array' ) { echo '<p>Nomes inseridos na sessão:</p>' ; foreach ( $_SESSION [ 'nomes' ] as $item ) { echo $item . '<br/>' ; } } ?> </ body > </ html >
  • 20. Inserindo itens em um array <?php session_start(); if (strlen(trim( $_POST [ 'nome' ])) > 0 ) { $tamanho = count( $_COOKIE [ 'nomes' ]); setcookie( &quot;nomes[ $tamanho ]&quot; , $_POST [ 'nome' ]); } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < form action = &quot;exemplo_session3.php&quot; method = &quot;post&quot; > < p > Nome: < input name = &quot;nome&quot; type = &quot;text&quot; /></ p > < input type = &quot;submit&quot; value = &quot;Inserir Nome&quot; /> </ form > <?php if (gettype( $_COOKIE [ 'nomes' ]) == 'array' ) { echo '<p>Nomes inseridos na sessão:</p>' ; foreach ( $_COOKIE [ 'nomes' ] as $item ) { echo $item . '<br/>' ; } echo $_POST [ 'nome' ]. '<br/>' ; } ?> </ body > </ html >
  • 21.
  • 22. Redirecionamento via HTML < html > < head > < meta http-equiv = &quot;refresh&quot; content = &quot;0;url=http://localhost/xampp/&quot; /> </ head > < body > < p > Redirecionando... </ p > </ body > </ html >
  • 23.
  • 24. Autenticação HTTP <?php function authenticate() { header( 'WWW-Authenticate: Basic realm=&quot;CEFET-PHB&quot;' ); header( 'HTTP/1.0 401 Unauthorized' ); echo 'Usuário ou senha invalido(s).' ; exit ; } if (! isset ( $_SERVER [ 'PHP_AUTH_USER' ])) { authenticate(); } if ( $_SERVER [ 'PHP_AUTH_USER' ] != 'regis' || $_SERVER [ 'PHP_AUTH_PW' ] != '1234' ) { authenticate(); } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < p > Bem-vindo ao nosso site!!! </ p > </ body > </ html >
  • 25. CAPTCHA <!-- exemplo_captcha.php --> < html > < head > < title > CEFET-PHB </ title > </ head > < body > < h1 > CAPTCHA </ h1 > < p > Completely Automated Public Turing test to tell Computers and Humans Apart </ p > < p > teste de Turing público completamente automatizado para diferenciar entre computadores e humanos </ p > < img src = &quot;exemplo_captcha2.php&quot; /> </ body > </ html >
  • 26. CAPTCHA <?php // exemplo_captcha2.php header( 'Content-type: image/png' ); // Requisitos mínimos if (!function_exists( &quot;gd_info&quot; )) { echo &quot;Biblioteca GD não instalada.&quot; ; exit (); } // Criar a imagem $imagem = @imagecreate( 100 , 100 ); // Criar a paleta de cores $branco = @imagecolorallocate( $imagem , 0xFF , 0xFF , 0xFF ); $azulescuro = @imagecolorallocate( $imagem , 0x00 , 0x00 , 0x80 ); $verde = @imagecolorallocate( $imagem , 0x00 , 0xFF , 0x00 ); $verdeescuro = @imagecolorallocate( $imagem , 0x00 , 0x80 , 0x00 ); $vermelhoescuro = @imagecolorallocate( $imagem , 0x80 , 0x00 , 0x00 ); // Desenhar linhas aleatórias for ( $i = 0 ; $i < 3 ; $i ++) @imageline( $imagem ,rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ), $vermelhoescuro ); for ( $i = 0 ; $i < 3 ; $i ++) @imageline( $imagem ,rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ), $verdeescuro ); for ( $i = 0 ; $i < 3 ; $i ++) @imageline( $imagem ,rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ),rand( 0 , 99 ), $verde ); // Escrever palavra-passe aleatória for ( $i = 0 ; $i < 4 ; $i ++) @imagestring( $imagem , 6 , 32 + 10 * $i , 32 +rand(- 5 , 5 ),rand( 1 , 9 ), $azulescuro ); // Rotacionar a imagem $imagem = @imagerotate( $imagem , 10 , $branco ); // Finalização da imagem @imagepng( $imagem ); ?>