professor jefferson chaves [email protected] client-side ou tecnologias...
TRANSCRIPT
![Page 2: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/2.jpg)
“ Introdução ao Ambiente Cliente x Servidor;
“ Os métodos GET e POST;
“ Formulários HTML;
“ Validação de dados;
Jefferson de Oliveira Chaves
![Page 3: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/3.jpg)
Jefferson de Oliveira Chaves
![Page 4: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/4.jpg)
“ HTML, CSS e JavaScript (somente essas!) são tecnologias que podem ser executadas em navegador (browser);
“ A essas tecnologias damos o nome de tecnologias Client-Side ou tecnologias do lado do cliente;
![Page 5: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/5.jpg)
Cliente abre/requisita a página
Máquina Cliente com Web Browser
Navegador interpreta e executa o conteúdo do arquivo HTML, incluindo qualquer script
![Page 6: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/6.jpg)
Cliente solicita a página dinâmica
HTML concluído enviado ao cliente
Servidor Web
Máquina Cliente com Web Browser
HTML pronto para enviar
Servidor executa e interpreta o código.
Constrói o código HTML
Código HTML
Jefferson de Oliveira Chaves - IFC Araquari
![Page 7: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/7.jpg)
Então precisarei de um servidor?
![Page 8: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/8.jpg)
![Page 9: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/9.jpg)
Servidor é um programa de computador
responsável por aceitar pedidos HTTP de
clientes, geralmente os navegadores, e servi-los
com respostas HTTP, geralmente, páginas web,
tais como documentos HTML com objetos
incluídos (imagens, etc.)
![Page 10: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/10.jpg)
“ O servidor Apache (ou simplesmente:
Apache) é o mais bem sucedido servidor web
livre.
“ 66% dos sites do mundo estão
hospedados em servidores Apache;
“ Seu logotipo é uma pena!
![Page 11: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/11.jpg)
“ O servidor disponibiliza ao cliente, qualquer
arquivo solicitado desde que esteja em
sua pasta pública!
“ Cada instalação pode dar um nome diferente para essa pasta: “ public_html
“ htdocs
“ www
Jefferson de Oliveira Chaves
![Page 12: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/12.jpg)
“ Isso significa que, se você pretende executar um código PHP em um navegador:
“ ele deverá estar na pasta publica de seu servidor;
“ o acesso deverá ser feito por meio do endereço do servidor, geralmente, http://localhost/ ou http://127.0.0.1/ seguido no nome do seu arquivo ou pasta.
Jefferson de Oliveira Chaves
![Page 13: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/13.jpg)
![Page 14: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/14.jpg)
“ Para começar a programar em PHP para web
precisaremos de alguns pré-requisitos:
“ Ter o PHP instalado em nosso computador;
“ Pode ser baixada em: http://php.net/downloads.php
“ Ter um servidor HTTP (Apache) instalado e
rodando em nossa máquina;
“ Pode ser baixado em:
https://httpd.apache.org/download.cgi
![Page 15: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/15.jpg)
“ A fim de facilitar a instalação do PHP, Apache além de outras
configurações, um grupo de programadores criou o XAMPP, que é um pacote com tudo que precisamos.
“ Sua instalação é bem simples. Pode ser baixado em: https://www.apachefriends.org/pt_br/index.html
• O X significa que roda em qualquer sistema operacional;
• O A é de Apache;
• O M é o banco de dados;
• O P é de PHP;
• O P é de Pearl;
![Page 16: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/16.jpg)
‚Caixa de Ferramentas ‛ para Programação em PHP
Podemos instalar o PHP e o Apache separadamente, ou apenas instalar
o xampp, o que é altamente recomendado para iniciantes.
![Page 17: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/17.jpg)
![Page 18: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/18.jpg)
“ O PHP (um acrônimo recursivo para PHP:
Hypertext Preprocessor) é uma linguagem de
programação open source (livre), de uso geral,
interpretada, muito utilizada, atuantes
no lado do servidor e especialmente adequada
para o desenvolvimento web e que pode ser
escrita dentro do HTML.
![Page 19: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/19.jpg)
“ O PHP é uma linguagem flexível;
“ Escrever para Desktop (terminal) e para Web (navegador).
“ <?php e ?>
“ Permite ao PHP ser incluído em vários tipos de documentos, como uma página HTML, pois tudo que está fora dessas tags é ignorado pelo interpretador do PHP.
![Page 20: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/20.jpg)
![Page 21: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/21.jpg)
<!DOCTYPE HTML> <html lang="pt-br"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h1>olá visitante</h1> <p>Esperamos que goste do nosso site! </p> </body> </html>
![Page 22: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/22.jpg)
<!DOCTYPE HTML> <html lang="pt-br"> <head> <meta charset="UTF-8"> <title></title> </head> <body>
<h1><?php echo $titulo; ?></h1> <p><?php echo $texto ; ?></p> </body> </html>
![Page 23: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/23.jpg)
Jefferson de Oliveira Chaves
![Page 24: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/24.jpg)
“ Existem variáveis pré-definidas no PHP,
definidas como superglobais.
“ Isso significa dizer que elas estão disponível
em todos os escopos da aplicação. Elas
sempre existem!
“ Veremos duas: $_GET e $_POST;
Jefferson de Oliveira Chaves
![Page 25: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/25.jpg)
“ SUPERGLOBAL $_GET
“ Escrita toda em maiúscula: ela é especial!
“ Um array associativo de variáveis passadas para o script atual via o método HTTP GET;
“ Obtém os dados expostos na URL;
“ O envio repetidas vezes não tem efeitos colaterais;
“ Os dados podem ser usados para por nos favoritos;
Jefferson de Oliveira Chaves
![Page 26: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/26.jpg)
“ SUPERGLOBAL $_GET “ Os parâmetros disponíveis na URL tem seu
início indicado pelo sinal de interrogação (?);
“ Cada parâmetro vai ser formado pelo par
chave = valor;
“ Outros parâmetros podem ser adicionados
com o uso do símbolo & ;
Jefferson de Oliveira Chaves
![Page 27: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/27.jpg)
Jefferson de Oliveira Chaves
![Page 28: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/28.jpg)
“ Para obter os dados disponíveis na URL
usamos a variável $_GET;
“ O conteúdo de cada parâmetro visível na
URL fica disponível como índice de GET;
Jefferson de Oliveira Chaves
![Page 29: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/29.jpg)
“ O conteúdo de cada parâmetro visível na
URL fica disponível como índice de GET;
Jefferson de Oliveira Chaves
// ser quisermos testar antes: print_r($_GET);
$professor = $_GET[ “prof” ];
echo $professor; // O resultado será Katia
![Page 30: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/30.jpg)
“ Podemos enviar dados para a URL por meio de:
“ Links: <a href=‚endereco?parametro=valor‛></a>
“ Formulários, veremos com detalhes no próximo tópico;
Jefferson de Oliveira Chaves
![Page 31: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/31.jpg)
“ SUPERGLOBAIS $_POST
“ Um array associativo de variáveis passadas para o
script atual via o método HTTP POST;
“ Os dados ficam encapsulados dentro do corpo da
mensagem;
“ O usuário não “enxerga os parâmetros” enviados;
“ Normalmente usado em formulários de cadastros,
logins (envio de senhas), etc.;
Jefferson de Oliveira Chaves
![Page 32: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/32.jpg)
“ Geralmente os dados do tipo POST são enviados por formulários com o método POST definido;
Jefferson de Oliveira Chaves
<form method=‚POST" action="">
<input type="text" name=‚busca‛ >
<input type="submit"> </form> print $_POST[‘busca’];
![Page 33: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/33.jpg)
Jefferson de Oliveira Chaves
<?php // normalmente recebemos os dados dessa forma
$nome = $_POST['nome']; $cidade = $_POST['cidade']; $endereco = $_POST['endereco']; echo $nome; echo $cidade; echo $endereco;
![Page 34: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/34.jpg)
“ É útil testar os dados das variáveis $_GET e $_POST
usando as funções print_r( ) e var_dump( );
“ As funções var_dump( ) e print_r( ) exibem o
conteúdo e o tipo da variável;
Jefferson de Oliveira Chaves
var_dump($_POST);
![Page 35: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/35.jpg)
Jefferson de Oliveira Chaves
![Page 36: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/36.jpg)
“ Como visto o PHP pode ser usado para criar
programas desktop ou para web.
“ Para programas de linha de comando, a
leitura de dados do teclado é feita pela
função fgets(STDIN);
Jefferson de Oliveira Chaves
![Page 37: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/37.jpg)
“ Mas quando se programa para web o cenário
é diferente e a interface entre o usuário e o
PHP é feita por meio dos formulários
HTML.
Jefferson de Oliveira Chaves
![Page 38: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/38.jpg)
Jefferson de Oliveira Chaves
<form method=" " action=" " >
<input type="text" name="nome" required />
<input type="submit" value="cadastrar" />
</form>
![Page 39: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/39.jpg)
Jefferson de Oliveira Chaves
![Page 40: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/40.jpg)
“ Os formulários HTML são a principal forma de
entrada para qualquer aplicação para web.
“ Cadastros, logins e buscas são exemplos de
usos de formulários;
“ O google.com é um site que possui um único
campo de formulário e nada mais.
Jefferson de Oliveira Chaves
![Page 41: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/41.jpg)
“ O formulário deve conter os atributos:
• Method: define a forma com que os dados serão enviados. São aceitos os métodos GET e POST.
• Action: define qual arquivos processará o conteúdo do formulário;
Jefferson de Oliveira Chaves
![Page 42: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/42.jpg)
“ O principal elemento de um formulário é o input (entrada);
“ Os formulários possuem diferentes tipos de input’s (entradas de dados) como:
“ caixa de texto (type text);
“ caixa de senha (type password);
“ botão de enviar (type submit);
Jefferson de Oliveira Chaves
![Page 43: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/43.jpg)
“ Para mudar o tipo de input basta dizer qual o tipo desejado no campo type:
Jefferson de Oliveira Chaves
<form method=‚POST‛> <input type="text" name=‚nome‛ > <input type=‚number" name=‚idade‛ > <input type="submit"> </form> print $_POST[‘name’];
![Page 44: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/44.jpg)
“ O HTML5 trouxe um número expressivo de novos campos: color, date, datetime, datetime-local, email, month, number, range, search, tel, time, url, week, entre outros.
Jefferson de Oliveira Chaves
Dica: Saiba mais sobre os formulários em http://www.w3schools.com/html/html_form_input_types.asp. Pesquise sobre como usar expressões regulares em campos de formulários
![Page 45: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/45.jpg)
“ O parâmetro action em formulários:
“ Define para onde os dados do formulários
serão enviados quando os dados forem
submetidos;
“ Se o parâmetro action estiver vazio, o
formulário enviará os dados para a própria
página;
Jefferson de Oliveira Chaves
![Page 46: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/46.jpg)
“ O parâmetro action:
Jefferson de Oliveira Chaves
<form method=‚POST" action=‚valida.php">
<input type="text" name=‚busca‛ > <input type="submit"> </form> print $_POST[‘name’];
![Page 47: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/47.jpg)
Jefferson de Oliveira Chaves
![Page 48: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/48.jpg)
“ Obter os dados direto de formulários, e uma
prática inadequada e sujeito a erros;
“ Os dados não são tratados (higienizados, filtrados);
“ Sql Injection;
“ Já conhecemos as seguintes práticas:
“ $id = (int) $_GET['id']; #operacao cast
“ $cidade =trim ($_GET['id']); #elimina caracteres indesejados
Jefferson de Oliveira Chaves
![Page 49: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/49.jpg)
“ O recomendados é usarmos a função filter_input:
“ filter_input(INPUT_GET, ‘variavel', SANITIZE_SPECIAL_CHARS)
“ filter_input(INPUT_GET, variavel ', FILTER_VALIDATE_INT);
“ Um caso conhecido (link)
Jefferson de Oliveira Chaves
![Page 50: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/50.jpg)
“ O método isset( );
“ Is set? (está definida?)
“ Verifica se a variável foi definida.
“ Retorna TRUE se var existe; FALSE caso
contrário.
Jefferson de Oliveira Chaves
![Page 51: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/51.jpg)
“ O método empty( );
“ Verifica se a variável está vazia.
“ Retorna TRUE se estiver vazia; FALSE caso a
variável testada esteja preenchida.
Jefferson de Oliveira Chaves
![Page 52: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/52.jpg)
“ Os métodos is_:
“ O método is_bool ($variavel );
“ O método is_int ($variavel );
“ O método is_float ($variavel );
“ O método is_numeric ($variavel );
“ O método is_string ($variavel );
“ O método is_null ($variavel );
Jefferson de Oliveira Chaves
![Page 53: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/53.jpg)
Jefferson de Oliveira Chaves
![Page 54: Professor Jefferson Chaves jefferson.chaves@ifc-araquari.edutecnologias Client-Side ou tecnologias do lado do cliente; Cliente abre/requisita a página Máquina Cliente ... para o](https://reader036.vdocuments.mx/reader036/viewer/2022081607/5f01be367e708231d400d27b/html5/thumbnails/54.jpg)
1. Crie um formulário para cadastro de clientes, contendo os campos:
Nome(text), a idade(number), o salário(?), e um para informar se o cliente é maior de idade(?)
2. Processe os dados em um arquivo chamado processa.php
3. Indique se o TIPO DE DADO de cada campo é uma texto ou numérico.
4. Se algum campo não for preenchido, exiba a mensagem: ‚nenhum campo pode ficar em branco‛
Jefferson de Oliveira Chaves