Curso de PHP. FATEC - Jundiaí



Documentos relacionados
Programação web Prof. Wladimir

Programação WEB II. Sessions e Cookies. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Bool setcookie (string nome [, string valor [, int validade [, string caminho [, string dominio [, int seguro]]]]] )

PHP (Seções, Cookies e Banco de Dados)

Programando em PHP. Conceitos Básicos

Linguagem de Programação III Aula 2 Revisão Parte II

Curso De PHP. Aula 4. Formulários. Cookies. Session. Mail


PHP: Cookies e Sessões

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos

Linguagem de. Aula 06. Profa Cristiane Koehler

O que é uma sessão. maneira de preservar dados através de acessos subsequentes.

Programação Web Prof. Wladimir

LINGUAGEM DE PROGRAMAÇÃO WEB

O sistema está pedindo que eu faça meu login novamente e diz que minha sessão expirou. O que isso significa?

Programação para Internet I

2.3. PHP Tipos de dados e operadores

INTRODUÇÃO AO DESENVOLVIMENTO WEB

Internet e Programação Web

Programação Web Prof. Wladimir

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web

Introdução ao PHP. Prof. Késsia Marchi

Programação Web com PHP. Prof. Wylliams Barbosa Santos Optativa IV Projetos de Sistemas Web

2.9. PHP Cookies e variáveis de sessão

Desenvolvimento Web XHTML Formulários. Prof. Bruno E. G. Gomes

Programação WEB II. Formulários Em PHP. Métodos GET e POST progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

7. Recursos PHP para a Internet

Manual Integra S_Line

Web Design Aula 11: Site na Web


Scriptlets e Formulários

Mais sobre uso de formulários Site sem Ajax

Segurança em Sistemas Web. Addson A. Costa

Programação Web Prof. Wladimir

PHP. Hypertext Pre-Processor

Manual do Usuário. E-DOC Peticionamento Eletrônico TST

SISTEMA GERENCIAMENTO DE PRODUTOS PHP E MySQL 1. APRESENTAÇÃO

Programação para Internet I

Mini-curso de PHP. Aulas ministradas por: André Luis de Paula Arthur Kalsing Diego Silva

Portal Sindical. Manual Operacional Empresas/Escritórios

TECNOLOGIAS WEB AULA 7

02 - Usando o SiteMaster - Informações importantes

Procedimentos para Instalação do Sisloc

Procedimentos para Instalação do SISLOC

Sumário. Capítulo 1 Revisão de PHP Capítulo 2 Melhorando o processamento de formulários... 46

Cookies. Krishna Tateneni Jost Schenck Tradução: Lisiane Sztoltz


ASP Active Server Pages. ASP (Active Server Pages)

Smart Laudos 1.9. A Forma Inteligente de Criar seus Laudos Médicos. Manual do Usuário

Tecnologias Web. Lista de Exercícios AV02. Luiz Leão

IFSC-Programação para a WEB - prof. Herval Daminelli

Ferramentas para Multimídia e Internet

Estrutura do exemplo

Prova de pré-requisito

1 Sumário O Easy Chat Conceitos Perfil Categoria Instalação O Aplicativo HTML...

HTML / JAVASCRIPT. A versão atual é o HTML5 (seus predecessores imediatos são HTML 4.01, XHTML 1.1, etc.).

Manual Xerox capture EMBRATEL

WEBDESIGN. Professor: Paulo Trentin Escola CDI de Videira

MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA

Cenários do CEL. Acessar ao sistema

Site do Advogado Manual

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br Escola CDI de Videira

Desenvolvedor Web Docente André Luiz Silva de Moraes

Desenvolvimento de Sites com PHP e Mysql Docente André Luiz Silva de Moraes

Omega Tecnologia Manual Omega Hosting

UNIVERSIDADE TECNOLOGIA FEDERAL DO PARANÁ. Owncloud SERVIÇO DE COMPARTILHAMENTO EM NUVEM. Manual

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

Desenvolvendo Websites com PHP

Manual de Utilização do PLONE (Gerenciador de página pessoal)

Procedimentos para Reinstalação do Sisloc

PHP: Formulários e upload de múltiplos arquivos Por Alfred Reinold Baudisch 28 de fevereiro de 2006.

Tutorial do Sistema de Gestão de Conteúdos para Web - SYSWEB

OURO MODERNO Web Designer APOSTILA DE EXEMPLO. (Esta é só uma reprodução parcial do conteúdo)

Formulário (Send & Recieve) Prof. Celso H. Masotti

O Webconference é uma ferramenta para realizar reuniões online.

Sistema de Gerenciamento Remoto

LINGUAGEM DE PROGRAMAÇÃO WEB

O programa Mysql acompanha o pacote de instalação padrão e será instalado juntamente com a execução do instalador.

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. Programação WEB

Desenvolvimento de Aplicações para Internet Aula 11

APOSTILA PHP. Parte 2

Web. Até a década de 1990, a Internet era utilizada. por pesquisadores, acadêmicos e universitários, para troca de arquivos e para correio eletrônico.

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique.

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

Aula 03 - Projeto Java Web

Di gitação de Eventos Versão Fevereiro/2015

MERCADOR Ver rev. 02

GERADOR DE RELATÓRIOS

Claudio Damasceno. Avançar

Sumário. Capítulo 2 Iniciando o TR Como efetuar o login... 8

PHP Material de aula prof. Toninho (8º Ano)

Manual de Atualização MATERIAL DE APOIO - KB IMÓVEIS

Documentação. Programa de Evolução Contínua Versão 1.72

Sumário. Capítulo 1 O que é o PHP? Capítulo 2 Instalação do PHP Capítulo 3 Noções básicas de programação... 25

Curso Introdução à Educação Digital - Carga Horária: 40 horas (30 presenciais + 10 EaD)

Transcrição:

Curso de PHP FATEC - Jundiaí Cookies Cookies são arquivos texto que podem ser armazenados no computador or do usuário, para serem recuperados posteriormente pelo servidor no qual seu site está hospedado. Com os cookies podemos: Descobrir quantas vezes determinado usuário acessou seu site; Verificar se o usuário tem autorização para acessar uma página; p Descobrir o nome de usuário dele e fazer o preenchimento automático tico do formulário rio de login (entrada em áreas restritas). Podemos dividir a autenticação do usuário em três etapas: Criação de uma página p de login, que recebe os dados do usuário, verifica se ele está cadastrado e cria os cookies. Criação de uma rotina de validação para ser utilizada nas páginas p que fazem parte das áreas restritas. Criação de uma página p de logout para os usuários que estão autenticados (realizar exclusão dos cookies).

Cookies Cookies são formas de armazenar informações a respeito de uma sessão dentro do disco rígido r do usuário cliente. O comando setcookie armazena um cookie com as informações que se desejam recuperar em seguida. Quando não for declarado um tempo de vida, o cookie se auto-destr destrói quando a sessão é encerrada (quando o browser for fechado). Sintaxe setcookie(nome, valor, validade, caminho, nome_dominio, seguro) Nome: indica o nome do cookie que está sendo enviado, e é o único parâmetro obrigatório. rio. Valor: deve ser enviado quando estamos incluindo um valor para um determinado cookie. Validade: deve ser expresso no formato-padrão de tempo do Unix (número de segundos após s o 1º 1 de janeiro de 1970, às s 0h). Caminho: especifica o diretório rio (ou o nome inicial dos diretórios) rios) em que o cookie é válido. Nome_dominio: indica o nome do domínio onde está hospedado seu site. Seguro: é um valor inteiro (0 ou 1), que indica se o cookie é seguro. Se for utilizado o valor 1, o cookie sós será transmitido se a conexão for segura (HTTPS). Cookies Para incluir um cookie na máquina m do usuário: setcookie( nome nome, PHP ); Para exclui o cookie acima, basta aplicar este comando: setcookie( nome nome ); Para criar um cookie válido v por 2 dias (48 horas), podemos utilizar como auxílio a função time do PHP. setcookie( nome nome, PHP,time()+172800); Obs.: o envio de cookies deve ser a primeira coisa a ser feita na execução da página, p ou seja, a função setcookie deve ser utilizada antes de qualquer tag HTML, como por exemplo, a tag <HTML>. Se for enviada após, o PHP gerará um erro. Devemos lembrar que os cookies não poderão ser utilizados dentro da própria pria página p que os criou, somente a partir da próxima solicitação de página p vinda do navegador do usuário.

Cookies Existem duas maneiras de recuperar o valor de um cookie: 1) Usando o nome que foi dado dentro do comando setcookie, como uma variável vel global. setcookie( nome nome, PHP ); echo O O curso é de linguagem de programação em $nome<br> ; Obs.: o PHP define variáveis veis correspondentes a todos os cookies recebidos do navegador 2) Usando o array $HTTP_COOKIE_VARS, utilizando o nome do cookie como chave associativa. echo O O $HTTP_COOKIE_VARS[ nome nome ] é uma ótima linguagem<br> ; Obs.: muitos usuários consideram os cookies como formas de invadir a sua privacidade. Portanto, se o seu site depender de cookies para funcionar, declare isso explicitamente. Cookies Múltiplas chamadas à função setcookie serão executadas em ordem inversa; Cookies só podem ser gravados antes do envio de qualquer informação para o cliente. Portanto todas as chamadas à função setcookie devem ser feitas antes do envio de qualquer header ou texto. Um problema com cookies é a segurança a das informações, é extremamente fácil decifrar o conteúdo do cookie.. Podemos obter o nome do usuário e senha, simplesmente abrindo o arquivo relacionado em um editor de textos qualquer. userid teste teste www.tecspace.com.br/ www.tecspace.com.br/ 0 84234894 u8d88992 teste * senha 1234 1234 www.tecspace.com.br/ www.tecspace.com.br/ 0 84234894 u8d88992 teste * Os cookies no ambiente Windows são armazenados dentro do diretório rio cookies.

Cookies <?php if (isset($http_post_vars['usuario'])) { $user = $HTTP_POST_VARS['usuario usuario']; setcookie("usuario usuario", $user$ user,, time()+3600); // Expira em uma hora $mensagem = "Usuário $user$ conectado.<p>"; else { Teste.php $mensagem = "Digite o seu nome de usuário<p>"; Index.php < <head> <title>teste PHP</title title> </head head> < < <?php <head> echo $mensagem; <title>página PHP</title title> </head head> <form method="post" action="teste. ="teste.php"> < Nome de Usuário: <input type=" ="text" name=" ="usuario"> <?php <br> $user = $_COOKIE["usuario usuario"]; <input type=" ="submit" value="enviar"> echo "O usuário $user$ está conectado."; </form form> Sessões Como o HTTP é um protocolo sem memória, cada invocação de cada script PHP é totalmente independente das outras invocações. Isto significa que, em uma aplicação composta por vários v scripts (o que é o normal), as variáveis veis não são preservadas de um script para o outro, e nem entre várias v invocações do mesmo script. Em vários v casos (como no exemplo da agenda) a passagem de parâmetros via URL ou campos escondidos é suficiente para manter o contexto da aplicação. Entretanto, em vários v casos (como um carrinho de compras) não é possível, elegante ou seguro passar todo o contexto via URL ou campos escondidos.

Sessões session_start() cria uma sessão ou carrega o contexto de uma sessão previamente criada. session_destroy() destrói i uma sessão. session_id() retorna o id da sessão corrente. session_register (var,...) registra uma ou mais variáveis veis globais como fazendo parte do contexto da sessão. session_unregister (var,...) retira uma ou mais variáveis veis globais do contexto da sessão. session_is_registered (var,...) verifica se as variáveis veis globais nomeadas fazem parte da sessão corrente. Como por default a sessão utiliza cookies (que são cabeçalhos alhos HTTP), devemos chamar session_start() antes de qualquer linha de texto fora do tag PHP Sessões Programa login.htm < <head> <title>login do Sistema</title title> </head head> < <form method= post post action= verifica_sessao verifica_sessao.php > Usuário: <input type= text text name= login login ><br><br> Senha: <input type= password password name= senha senha ><br><br> <input type= submit submit value= Enviar Enviar > </form form>

Sessões Programa verifica_sessao.php <? if (($_POST["login login"]==" "]=="claudio") && ($_POST["senha"]== fatec fatec")) { session_start(); $usuario[] = $login$ login; $usuario[] = $senha; session_register( usuario usuario ); echo <a href= sistema. sistema.php >Sistema</a> >Sistema</a> ; else { echo <a href= login.htm login.htm target= _parent parent >Usuário Inexistente ou senha invalida</a> ; Sessões Programa sistema.php <? session_start(); if (isset($_session['usuario'])) { echo Cadastro de Produtos<br br> ; echo --------------------------<br> <br> ; echo Inclusão de Produto<br br> ; echo Exclusão de Produto<br br> ; echo Alteração de Produto<br br> ; echo <a href= deslogar deslogar.php >Sair do Sistema</a> ; else { echo Usuário não está logado! ;

Sessões Programa deslogar.php <? session_start(); if (isset($_session['usuario'])) { session_unregister( usuario usuario ); session_destroy(); echo Usuário deslogado<br> <br> ; echo <a href= login.htm login.htm >Login do Sistema</a> ; Arrays Superglobais Nome $GLOBALS $_SERVER $_GET $_POST $_COOKIE $_FILES $_ENV $_REQUEST $_SESSION Descrição Contém uma referência para todas as variáveis disponíveis dentro do escopo global do script. Variáveis criadas pelo servidor web ou diretamente relacionadas ao ambiente de execução do script atual. Variáveis postadas para o script via método HTTP GET. Variáveis postadas para o script via método HTTP POST. Variáveis postadas para o script via cookies HTTP. Variáveis postadas para o script via transferência de arquivos HTTP. Variáveis disponíveis no script do ambiente de execução. Variáveis postadas para o script por todas os mecanismos de input, e que não podem ter seu conteúdo garantido de qualquer forma. Variáveis que estão atualmente registradas na sessão do script.

$GLOBALS A superglobal $GLOBALS, contém m um referência para todas as variáveis veis que são atualmente disponíveis dentro do escopo global do script. <? $a = 5; // ESCOPO GLOBAL $b = 3; // ESCOPO GLOBAL function mostra_valor() { $GLOBALS["soma"] = $GLOBALS["a"] + $GLOBALS["b"]; mostra_valor(); echo $soma; $_SERVER São nada mais que, variáveis veis criadas pelo servidor ou diretamente relacionado ao ambiente de execução do script atual. NOME PHP_SELF SERVER_NAME DESCRIÇÃO Nome do arquivo do script atualmente em uso. Nome do servidor onde o script atual é executado. SERVER_SOFTWARE String de identificação do servidor. SERVER_PORT Porta usada pelo servidor para comunicação. REQUEST_METHOD Método utilizado para acessar a página. p Exemplo: GET, HEAD, POST, PUT. QUERY_STRING String de solicitação pela qual a página p foi solicitada. DOCUMENT_ROOT Diretório rio raiz onde o script atual é executado. HTTP_REFERER Endereço o da página p do qual o usuário acessou a página p atual. HTTP_USER_AGENT Browser utilizado pelo usuário. REMOTE_ADDR Endereço o IP do usuário. REMOTE_PORT Porta TCP utilizada pelo usuário para comunicação com o servidor. SCRIPT_FILENAME Caminho absoluto do script atual em execução. SCRIPT_NAME Caminho completo do script atual.

$_SERVER <? //DADOS DO USUÁRIO echo "IP: $_SERVER[REMOTE_ADDR] <br< echo "NAVEGADOR: $_SERVER[HTTP_USER_AGENT] <br< echo "DIRETÓRIO RIO RAIZ: $_SERVER[DOCUMENT_ROOT] <br< echo "CAMINHO DO SCRIPT: $_SERVER[SCRIPT_NAME] <br< echo "CAMINHO ABSOLUTO DO SCRIPT: $_SERVER[SCRIPT_FILENAME] <br< echo "IDENTIFICAÇÃO DO SERVIDOR: $_SERVER[SERVER_SOFTWARE] <br< echo "NOME DO SERVIDOR: $_SERVER[SERVER_NAME] <br< echo "PORTA SERVIDOR: $_SERVER[SERVER_PORT] <br< Resultado no terminal seria: IP: 127.0.0.1 NAVEGADOR: Mozilla/4.0 (compatible( compatible; ; MSIE 6.0; Windows NT 5.1) DIRETORIO RAIZ: c:/www CAMINHO DO SCRIPT: /teste/teste.php CAMINHO ABSOLUTO DO SCRIPT: c:\\www www\\teste\\teste. teste.php IDENTIFICAÇÃO DO SERVIDOR: Apache 2.0.50 (Win32) NOME DO SERVIDOR: tecspace PORTA DO SERVIDOR: 80 Variáveis enviadas pelo navegador - $_GET O uso de parâmetros facilita a programação porque permite a passagem de dados entre o browser e o script ou entre scripts. A passagem de parâmetros entre o browser e o script é feita dentro da URL, por exemplo e é manipulada pela função $_GET. Nesse exemplo a seguir, cada um dos links envia um valor diferente para a página que é aberta (teste.php php). Para enviar um parâmetro, a sintaxe inclui um sinal de interrogação, o nome da variável, vel, um sinal de igual e o valor da variável. vel. < <head> <title>página PHP</title title> </head head> < <?php if (isset($_get["valor"])) { $valor = $_GET["valor"]; echo "Você clicou no link $valor <p>"; else { echo "Clique em um dos links abaixo:<p>"; ="teste.php?valor=1">link 1</a><br> ="teste.php?valor=2">link 2</a><br> ="teste.php?valor=3">link 3</a><br> ="teste.php?valor=4">link 4</a><br> ="teste.php?valor=5">link 5</a><br>

Variáveis enviadas pelo navegador - $_GET Caso exista necessidade de se passar mais de um parâmetro, deve-se separá-los através s de e e comercial (&) < <head> <title>página PHP</title title> </head head> < <?php if (isset($_get["produto"]) && isset($_get["tipo"])) { $produto = $_GET["produto"]; $tipo = $_GET["tipo"]; echo "O produto selecionado foi $produto $tipo<p>"; else { echo "Selecione um produto<p>"; ="teste.php?produto=maxtor&tipo=hd >Maxtor HD</a><br> ="teste.php?produto=lg&tipo=monitor">lg Monitor</a><br> Variáveis enviadas pelo navegador - $_POST Os valores enviados através s de um formulário rio podem ser recuperados pela variável vel pré-definida $_POST. Através s dela é possível obter os dados que foram enviados através s do método m POST do HTML, bastando indicar o nome do campo do formulário. rio. No comando action do formulário, rio, deve-se indicar a página p PHP que irá receber os valores. O mesmo documento pode conter o código c e o formulário. rio.

Variáveis enviadas pelo navegador - $_POST < <head> <title>página PHP</title title> </head head> < <?php if (isset($_post["pnome"]) && isset($_post[" ($_POST["snome"])) { $pnome = $_POST["pnome pnome"]; $snome = $_POST["snome snome"]; echo "Olá $pnome $snome.<p>"; else { echo "Digite o seu nome.<p>"; <form method="post" action="teste. ="teste.php"> Primeiro Nome: <input type=" ="text" name=" ="pnome"> <br> Sobrenome: <input type=" ="text" name=" ="snome"> <br><br> <input type=" ="submit" value="enviar"> </form form> File Uploads Formulários rios HTML, quando utilizando o método m POST, podem definir um <INPUT> do tipo file,, que exibe uma caixa de seleção de arquivos. < < <h1>enviar Arquivo</h1> <hr> <Form enctype= multipart multipart/form-data action= upload upload.php method= post post > Nome do arquivo: <input name= arquivo arquivo type= file file ><br><br> <input type= submit submit value= Enviar Enviar > </form form>

File Uploads O formulário rio é enviado junto com os dados do formulário, rio, codificado como se fosse um arquivo atachado em e-mail. e O script PHP pode manipular o arquivo por intermédio do array $HTTP_POST_VARS $HTTP_POST_FILES[ arquivo arquivo ][ ][ name ]] fornece o nome do arquivo enviado $HTTP_POST_FILES[ arquivo arquivo ][ ][ size ]] fornece o tamanho do arquivo $HTTP_POST_FILES[ arquivo arquivo ][ ][ tmp_name ]] fornece o nome do arquivo temporário rio onde o PHP salvou o arquivo enviado Note que arquivo é o nome (name( name) ) do tag <INPUT type= file file > Arquivo upload.php php < < <h1>dados do arquivo enviado:</h1> <table border=0> <tr> > <td< td>nome:</ >Nome:</td> <td><?= $HTTP_POST_FILES[ arquivo arquivo ][ ][ name ]] </td td></ ></tr> <tr> > <td< td>tamanho:</ >Tamanho:</td> <td><?= $HTTP_POST_FILES[ arquivo arquivo ][ ][ size ]] </td td></ ></tr> <tr> > <td< td>salvo como:</td td> <td><?= $HTTP_POST_FILES[ arquivo arquivo ][ ][ tmp_name ]] </td td></ ></tr> </table table>

Termino da aula