SlideShare uma empresa Scribd logo
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

Cookies and sessions
Cookies and sessionsCookies and sessions
Cookies and sessionsSukrit Gupta
 
Lecture 10 - Java Server Faces (JSF)
Lecture 10 - Java Server Faces (JSF)Lecture 10 - Java Server Faces (JSF)
Lecture 10 - Java Server Faces (JSF)
Fahad Golra
 
13 Java Script - Validação de formulário
13 Java Script  - Validação de formulário13 Java Script  - Validação de formulário
13 Java Script - Validação de formulário
Centro Paula Souza
 
Networking in Java
Networking in JavaNetworking in Java
Networking in Java
Tushar B Kute
 
Authentication and Authorization in Asp.Net
Authentication and Authorization in Asp.NetAuthentication and Authorization in Asp.Net
Authentication and Authorization in Asp.Net
Shivanand Arur
 
Deskpool making vdi cost effective for smb
Deskpool making vdi cost effective for smbDeskpool making vdi cost effective for smb
Deskpool making vdi cost effective for smb
DongLiwu
 
Php tutorial(w3schools)
Php tutorial(w3schools)Php tutorial(w3schools)
Php tutorial(w3schools)Arjun Shanka
 
TOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO coreTOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO core
Pascal Flamand
 
PHP Cookies and Sessions
PHP Cookies and SessionsPHP Cookies and Sessions
PHP Cookies and Sessions
Nisa Soomro
 
Crear Usuarios Masivamente, Rápido y Sencillo - Active Directory
Crear Usuarios Masivamente, Rápido y Sencillo - Active DirectoryCrear Usuarios Masivamente, Rápido y Sencillo - Active Directory
Crear Usuarios Masivamente, Rápido y Sencillo - Active Directory
RaGaZoMe
 
Enterprise java unit-2_chapter-3
Enterprise  java unit-2_chapter-3Enterprise  java unit-2_chapter-3
Enterprise java unit-2_chapter-3
sandeep54552
 
HTTP Request and Response Structure
HTTP Request and Response StructureHTTP Request and Response Structure
HTTP Request and Response Structure
BhagyashreeGajera1
 
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Helder da Rocha
 
CNIT 129S: Ch 7: Attacking Session Management
CNIT 129S: Ch 7: Attacking Session Management CNIT 129S: Ch 7: Attacking Session Management
CNIT 129S: Ch 7: Attacking Session Management
Sam Bowne
 
Introduction to mvc architecture
Introduction to mvc architectureIntroduction to mvc architecture
Introduction to mvc architecture
ravindraquicsolv
 
Caching
CachingCaching
Caching
Nascenia IT
 
Trabalho sobre Proxy
Trabalho sobre ProxyTrabalho sobre Proxy
Trabalho sobre Proxy
Anderson Zardo
 
React - Introdução
React - IntroduçãoReact - Introdução
React - Introdução
Jefferson Mariano de Souza
 

Mais procurados (20)

Cookies and sessions
Cookies and sessionsCookies and sessions
Cookies and sessions
 
Lecture 10 - Java Server Faces (JSF)
Lecture 10 - Java Server Faces (JSF)Lecture 10 - Java Server Faces (JSF)
Lecture 10 - Java Server Faces (JSF)
 
13 Java Script - Validação de formulário
13 Java Script  - Validação de formulário13 Java Script  - Validação de formulário
13 Java Script - Validação de formulário
 
Networking in Java
Networking in JavaNetworking in Java
Networking in Java
 
Authentication and Authorization in Asp.Net
Authentication and Authorization in Asp.NetAuthentication and Authorization in Asp.Net
Authentication and Authorization in Asp.Net
 
Deskpool making vdi cost effective for smb
Deskpool making vdi cost effective for smbDeskpool making vdi cost effective for smb
Deskpool making vdi cost effective for smb
 
Php tutorial(w3schools)
Php tutorial(w3schools)Php tutorial(w3schools)
Php tutorial(w3schools)
 
TOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO coreTOC training KeyCloak Redhat SSO core
TOC training KeyCloak Redhat SSO core
 
PHP Cookies and Sessions
PHP Cookies and SessionsPHP Cookies and Sessions
PHP Cookies and Sessions
 
Crear Usuarios Masivamente, Rápido y Sencillo - Active Directory
Crear Usuarios Masivamente, Rápido y Sencillo - Active DirectoryCrear Usuarios Masivamente, Rápido y Sencillo - Active Directory
Crear Usuarios Masivamente, Rápido y Sencillo - Active Directory
 
Enterprise java unit-2_chapter-3
Enterprise  java unit-2_chapter-3Enterprise  java unit-2_chapter-3
Enterprise java unit-2_chapter-3
 
HTTP Request and Response Structure
HTTP Request and Response StructureHTTP Request and Response Structure
HTTP Request and Response Structure
 
Sending emails through PHP
Sending emails through PHPSending emails through PHP
Sending emails through PHP
 
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
 
POO - 22 - Tratamento de Exceções em Java
POO - 22 - Tratamento de Exceções em JavaPOO - 22 - Tratamento de Exceções em Java
POO - 22 - Tratamento de Exceções em Java
 
CNIT 129S: Ch 7: Attacking Session Management
CNIT 129S: Ch 7: Attacking Session Management CNIT 129S: Ch 7: Attacking Session Management
CNIT 129S: Ch 7: Attacking Session Management
 
Introduction to mvc architecture
Introduction to mvc architectureIntroduction to mvc architecture
Introduction to mvc architecture
 
Caching
CachingCaching
Caching
 
Trabalho sobre Proxy
Trabalho sobre ProxyTrabalho sobre Proxy
Trabalho sobre Proxy
 
React - Introdução
React - IntroduçãoReact - Introdução
React - Introdução
 

Destaque

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
 
Sessions in php
Sessions in php Sessions in php
Sessions in php
Mudasir Syed
 
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
RodTramonte
 
Entrevista MIE
Entrevista MIEEntrevista MIE
Entrevista MIE
Lurdes Cardoso
 
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
Guilherme Carvalho
 
Projeto editorial e projeto gráfico
Projeto editorial e projeto gráficoProjeto editorial e projeto gráfico
Projeto editorial e projeto gráficoaulasdejornalismo
 
Cookie and session
Cookie and sessionCookie and session
Cookie and session
Aashish Ghale
 

Destaque (7)

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
 
Hello SAFE World!!!
Hello SAFE World!!!Hello SAFE World!!!
Hello SAFE World!!!
Everaldo Wanderlei Uavniczak
 
PHP FrameWARks - FISL
PHP FrameWARks - FISLPHP FrameWARks - FISL
PHP FrameWARks - FISL
Marcio Albuquerque
 
Puppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGilPuppet – Torne Seu Datacenter áGil
Puppet – Torne Seu Datacenter áGil
jefesrodrigues
 
Apresentacao codeigniter
Apresentacao codeigniterApresentacao codeigniter
Apresentacao codeigniter
André Tagliati
 
Smarty Template Engine
Smarty Template EngineSmarty Template Engine
Smarty Template Engine
Diego Tremper
 
Escrevendo códigos php seguros
Escrevendo códigos php segurosEscrevendo códigos php seguros
Escrevendo códigos php seguros
Douglas 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 Facebook
Ricardo Rodrigues Nunes
 
nDeveloper Framework
nDeveloper FrameworknDeveloper Framework
nDeveloper Framework
Pedro Alves Jr.
 
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
Thyago Maia
 
Desenvolvimento de web sites com php
Desenvolvimento de web sites com phpDesenvolvimento de web sites com php
Desenvolvimento de web sites com php
brenod123
 
NotORM
NotORMNotORM
NotORM
Tiago Davi
 
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
Rodrigo Aramburu
 
Introdução ao framework CakePHP
Introdução ao framework CakePHPIntrodução ao framework CakePHP
Introdução ao framework CakePHP
igorpimentel
 

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

High Dimensional Data
High Dimensional DataHigh Dimensional Data
High Dimensional Data
Regis Magalhães
 
Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
Regis Magalhães
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducaoRegis Magalhães
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 
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_webRegis Magalhães
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 
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_webRegis Magalhães
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducaoRegis Magalhães
 
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
Regis Magalhães
 
Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Regis Magalhães
 
Curso Ruby
Curso RubyCurso Ruby
Curso Ruby
Regis Magalhães
 
Easy Rails
Easy RailsEasy Rails
Easy Rails
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 ); ?>