variaveis superglobais

11
Prof. Mauricio Garcia Nascimento Prof. Daniel Arndt Alves Introdução ao Desenvolvimento de Sistemas Web com PHP Programa de Verão IME-USP 2014 Variáveis Super-globais

Upload: daniel-arndt-alves

Post on 04-Jul-2015

1.026 views

Category:

Education


0 download

DESCRIPTION

Variáveis Superglobais em Linguagem PHP

TRANSCRIPT

Page 1: Variaveis Superglobais

Prof. Mauricio Garcia Nascimento Prof. Daniel Arndt Alves

Introdução ao Desenvolvimento de Sistemas Web com PHP Programa de Verão IME-USP 2014

Variáveis Super-globais

Page 2: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Definições

} Escopo global no script } Corpo principal } Dentro de funções e classes

} Sem a necessidade da palavra reservada global

} Criadas automaticamente pelo script PHP } Tipo: array } Principais variáveis Super-globais

} $_GET, $_POST, $_SESSION, $_COOKIE, $_SERVER

http://php.net/manual/language.variables.predefined.php

!2

Page 3: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Problema I

Lista de alunos !10. João 15. Maria 35. José ... 56. Antônio

pagina.joao.php pagina.10.php

pagina.maria.php pagina.15.php

pagina.jose.php pagina.35.php

pagina.antonio.php pagina.56.php

Informações do aluno

!3

Page 4: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Solução: passagem de valores na URL

} Sintaxe da QueryString

pagina.php[?param1=val1[&param2=val2]...]

lista.php

detalhe.php?id=10

noticia.php?cod=20&titulo=teste

principal.php?num=100&texto=abc&valor=20.2

$_GET[‘cod’] $_GET[‘titulo’]

$_GET[‘id’]

$_GET[‘num’] $_GET[‘texto’] $_GET[‘valor’]

!4

Page 5: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Passagem de valores na URL

Lista de alunos !10. João <a href=“aluno.php?id=10”> !15. Maria <a href=“aluno.php?id=15”> !35. José <a href=“aluno.php?id=35”> ... !56. Antônio <a href=“aluno.php?id=56”>

Informações do aluno

aluno.php

var_dump($_GET); !$_GET[‘id’];

!5

Page 6: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Problema II: formulários HTML

Nome:

Endereço:

Estado:

Sexo:

Enviar

Envio dos dados

masculino feminino

cadastro.php

!6

Page 7: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Formulários HTML

} Processo para envio dos dados } Dados são fornecidos pelo usuário } Formulário é submetido } Navegador envia dados na requisição, pelo método e para a

URL indicados na tag <form> } Script recebe dados em variável Super-global } Método mais frequente: POST !<form method="post" action="cadastro.php">

!7

Page 8: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Formulários HTML

Nome:

Endereço:

Estado:

Sexo:

masculino feminino

txt_nome

txt_endereco

sel_uf

rad_sexo

btn_submit

<form method=“post” action=“cadastro.php”>

Envio dos dados

cadastro.php

var_dump($_POST); !$_POST['txt_nome']; $_POST['txt_endereco']; $_POST['sel_uf']; $_POST['rad_sexo']; $_POST['btn_submit'];

Enviar

!8

Page 9: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Padrões para formulários

form.php

formuláriovalidar / gravar

dados

gravar.php

confirmação

ok.php

post

erro!

ok

!9

Page 10: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Padrões para formulários

!!!

validar / validar dados

form.php

formulárioconfirmação

ok.php

ok

post

!10

Page 11: Variaveis Superglobais

Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014 Prof. Mauricio Garcia Nascimento - [email protected] - todos os direitos reservados

Prof. Daniel Arndt Alves – [email protected]

Função header

} Envia um comando no cabeçalho da requisição HTTP } Deve ser utilizada antes de qualquer saída de impressão } Pode redirecionar o usuário para uma URL

header('Location: http://servidor/pagina.php');

Warning: Cannot modify header information - headers already sent

!11