A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Programação para Web I Aula 5 – Formulários GET – POST - REQUEST.

Apresentações semelhantes


Apresentação em tema: "Programação para Web I Aula 5 – Formulários GET – POST - REQUEST."— Transcrição da apresentação:

1 Programação para Web I Aula 5 – Formulários GET – POST - REQUEST

2 Entendendo os métodos GET – POST - REQUEST Sendo informal e direto, o HTTP – Hypertext Transfer Protocol(Protocolo de Transferência de Dados) é um protocolo ou padrão de rede implementado em cima do TCP para que browsers e servidores possam se comunicar. INTRODUÇÃO Um cliente HTTP: são softwares que se comunicam com servidores através do HTTP.

3 Podemos dizer também que são softwares os servidores: INTRODUÇÃO IIS ApacheIIS Micrsoft Eles precisam fazer também a comunicação entre o cliente e servidor Transmitir dados de um lado para o outro Entendendo os métodos GET – POST - REQUEST

4 Essas comunicações são feitas através de 3 variáveis pré-definidas principais no PHP: INTRODUÇÃO Entendendo os métodos GET – POST - REQUEST

5 Vamos entender a diferença entre o POST e GET, depois faremos um apanhado geral do REQUEST. DIFERENÇAS ? Entendendo os métodos GET – POST - REQUEST

6 DIFERENÇAS : VISIBILIDADE Entendendo os métodos GET – POST - REQUEST Uma requisição GET é enviada como string anexada a UR É encapsulada junto ao corpo da requisição HTTP e não pode ser vista.

7 Entendendo os métodos GET – POST - REQUEST Os valores das variáveis não aparecem na URL

8 Entendendo os métodos GET – POST - REQUEST Utilizado o mesmo exemplo: Analisem que as informações estão aparecendo na URL

9 Entendendo os métodos GET – POST - REQUEST DIFERENÇAS : TAMANHO GET é feita via URL, obviamente há uma limitação no tamanho da mensagem enviada. A string não pode conter mais que 255 caracteres(embora exista diferenças entre navegadores, mas em geral o limite é 255). Não há limitações de comprimento da mensagem, já que a mesma é enviada no corpo da requisição HTTP.

10 Entendendo os métodos GET – POST - REQUEST DIFERENÇAS : PERFORMANCE é relativamente mais rápida, já que ela é mais simples. há uma perda de tempo no encapsulamento da mensagem.

11 Entendendo os métodos GET – POST - REQUEST DIFERENÇAS : TIPOS Já que GET é enviado via URL, então nós sabemos que ela só transporta textos. Não tem restrições, pode transportar tanto texto, como dados binários.

12 Entendendo os métodos GET – POST - REQUEST DIFERENÇAS : FAVORITOS/BOOKMARKS Por se tratar apenas de uma URL, a requisição GET pode ser armazenada em cache, ou em um sistema de bookmark(favoritos). A mesma coisa não é possível para requisições POST.

13 Entendendo os métodos GET – POST - REQUEST DIFERENÇAS : METÓDO PADRÃO HTML GET é o método HTML padrão. Para submeter um formulário HTML usando POST é preciso especificar no atributo “method” o valor “POST”.

14 Entendendo os métodos GET – POST - REQUEST DIFERENÇAS : DADOS As requisições GET são limitadas ao padrão ASCII requisições POST também podem usar o atributo “enctype” com o valor “multipart/form-data”, que faz uso do padrão UCS(Universal Multiple-Octet Coded Character Set).

15 Variáveis de requisição HTTP Entendendo os métodos GET – POST - REQUEST Um array associativo que por padrão contém informações de $_GET, $_POST and $_COOKIE.array$_GET$_POST$_COOKIE Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

16 Entendendo os métodos GET – POST - REQUEST Resumindo, ele faz o papel de todos. Ele é mais pesado. Não há muita necessidade de utilizá-lo pois temos as var super globais $_POST, $_GET e $_COOKIE

17 FORMULÁRIOS FORMULÁRIOS + PHP Campos Text e Textarea

18 FORMULÁRIOS FORMULÁRIOS + PHP Campos Radio

19 FORMULÁRIOS FORMULÁRIOS + PHP Campos Checkbox Este formulário têm múltiplas escolhas, por isso é necessário a utilização do Laço de repetição para receber todas as informações selecionadas.

20 FORMULÁRIOS FORMULÁRIOS + PHP o isset é uma palavra reservada do php, que server para verificar se uma variável existe ou não Uma variável é destruída com unset()unset()

21 FORMULÁRIOS FORMULÁRIOS + PHP

22 FORMULÁRIOS FORMULÁRIOS + PHP Campos Select Os campos select permitem tratar uma variedade de opções, onde o usuário pode selecionar apenas uma opção ou múltiplas opções

23 FORMULÁRIOS FORMULÁRIOS + PHP

24 FORMULÁRIOS FORMULÁRIOS + PHP Utilizando HTML5

25 FORMULÁRIOS FORMULÁRIOS + PHP Formulários parte 2

26 FORMULÁRIOS FORMULÁRIOS + PHP range | Slider

27 FUNÇÕES de TRATAMENTOS | VALIDAÇÕES FORMULÁRIOS + PHP Segundo o formulário abaixo, iremos mostrar alguns tratamentos de formulários: Criando a primeira página que irá conter o HTML  Formulário

28 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Após isso, iremos criar uma outra página que irá receber o conteúdo digitado no formulário Vejam que estamos trabalhando com as seguintes funções para o tratamento:

29 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES htmlspecialchars() transforma caracteres que sejam especiais no HTML na sua forma codificada, de forma que não seja possível injetar tags HTML ou JavaScript em sua página. htmlspecialchars() O campo age (idade), por ser um número, pode-se simplesmente converterpara um integer que automaticamente eliminará qualquer letra. converterinteger

30 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Para tratamentos, podemos utilizar também a função FILTER filter_has_varfilter_has_var — Verifica se a variável é de um especificado tipo existente filter_idfilter_id — Retorna o ID de um dado nome de filtro filter_input_arrayfilter_input_array — Obtem variáveis externas e opcionalmente as filtra filter_inputfilter_input — Obtem a específica variável externa pelo nome e opcionalmente a filtra filter_listfilter_list — Retorna a lista de todos filtros suportados filter_var_arrayfilter_var_array — Obtêm múltiplas variáveis e opcionalmente as filtra filter_varfilter_var — Filtra a variável com um especificado filtro

31 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Vamos começar pela última: filter_var — Filtra a variável com um especificado filtrofilter_var Descrição Valor para filtrar. ID do Filtro Array associativo de opções ou disjunção binário de flags. Se o filtro aceita opções, flags podem ser providas no campo "flags" do array. Para o "callback" do filtro, o tipo callback pode ser passadocallback

32 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Exemplo Se eu mudar o email para um inválido: Vai me retornar um boolean:false

33 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Lista de Filter_Validate idDescrição FILTER_VALIDATE_BOOLEANReturns TRUE for "1", "true", "on" and "yes" Returns FALSE for "0", "false", "off" and "no" Returns NULL otherwise. FILTER_VALIDATE_EMAILValidação de email FILTER_VALIDATE_FLOATFloat FILTER_VALIDATE_INTInteiro FILTER_VALIDATE_IPIP FILTER_SANITIZE_STRINGRemove todas as tags HTML da String FILTER_SANITIZE_SPECIAL_CHARSRemove todos os caracteres especiais FILTER_SANITIZE_NUMBER_INTRemove todos os car ilegais de números

34 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Exemplos de cada um: Retorna true devido ao valor ser ‘yes’

35 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Validando um valor em float.

36 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Verificando se um número é um valor inteiro

37 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Verificando se um IP é válido

38 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Tirando tags HTML de uma string

39 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Tirando caracteres especiais do texto

40 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Tirando qualquer valor que não faça parte de números e cálculos

41 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Criando um sistema de validação na página do formulário Anter de mais nada, criaremos duas páginas: formulario.php e valida.php

42 FORMULÁRIOS + PHP Ficará assim o formulario.php:

43 FORMULÁRIOS + PHP FUNÇÕES de TRATAMENTOS | VALIDAÇÕES Agora o passo é criar as ações de validação de cada campo de formulário Iremos fazer isso para nome, email e sexo apenas Esta programação será feita na página valida.php

44 Iniciaremos a nossa programação fazendo com que todas as nossas variáveis e o campo de formulário inicie seus valores com EMPTY Isto serve para que quando o nosso formulário iniciar ele não dê erro por estes campos estarem sem informação.

45 Agora iremos criar uma função que contêm funções pré-definidas para tratamento de strings Trim( )  Retira espaço no ínicio e final de uma string Stripslashes( )  Desfaz o efeito de addslashes()  Adiciona barras invertidas a uma stringaddslashes() Htmlspecialchars ( )  Converte caracteres especiais para a realidade HTML Então quando esta função ser chamada irá retornar todos os dados ($data);

46 O próximo passo é criar toda a nossa validação mostrando os erros utilizando a função anteriormente criada. Verifico se o formulário veio vazio, senão eu armazeno na minha variável $nome as informações vindo do formulário. Faço isso para todos os campos; $_SERVER  Informação do servidor e ambiente de execução REQUEST_METHOD  Contém o método de request utilizando para acessar a página. Geralmente 'GET', 'HEAD', 'POST' ou 'PUT'.

47 Continuando... Então finalizamos a nossa página de validação. Agora retornaremos para o formulario.php e iremos adicionar os erros chamando as funções.

48 Iniciaremos a nossa programação fazendo com que todas as nossas variáveis e o campo de formulário inicie seus valores com EMPTY Iremos então incluir a página valida.php dentro da página formulario.php, ou seja, de agora em diante os códigos que estão dentro de valida.php começam a fazer parte do formulario.php require_once  o PHP irá verificar se o arquivo já foi incluído, e se já tiver sido incluído, não o incluirá novamente.

49 Iremos adicionar as mensagens de erro caso o campo de formulário não seja acionado PHP_SELF  O nome do arquivo do script que está executando, relativa à raiz do documento. Imprimindo os erros em cada campo do formulário chamando então as mensagens de erros.

50 Agora é só imprimir: Este código vai abaixo do formulário

51 Existe outra forma que iremos fazer quando aprendermos OO. $validator-> addValidation("Nome", "req", "Por favor, preencha seu name");

52 Anexos de exmplos. INDEX.PHP Anexos

53 Anexos de exmplos. VALIDA.PHP

54 Anexos Anexos de exmplos. INDEX.PHP

55 Anexos Anexos de exmplos. VALIDA.PHP

56 Anexos Anexos de exmplos. VALIDA.PHP

57 Anexos Anexos de exmplos. VALIDA.PHP

58 Anexos Anexos de exmplos. VALIDA.PHP

59 Anexos Anexos de exmplos. VALIDA.PHP

60 Anexos Anexos de exmplos. VALIDA.PHP

61 Anexos Anexos de exmplos. VALIDA.PHP

62 Anexos Anexos de exmplos. VALIDA.PHP


Carregar ppt "Programação para Web I Aula 5 – Formulários GET – POST - REQUEST."

Apresentações semelhantes


Anúncios Google