Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas
-
Upload
cjr-unb -
Category
Technology
-
view
1.049 -
download
0
description
Transcript of Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas
![Page 1: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/1.jpg)
![Page 2: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/2.jpg)
Mas O que é
PHP?
![Page 3: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/3.jpg)
Php é uma linguagem de programação desenvolvida para gerar páginas da Web interativamente com o servidor
![Page 4: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/4.jpg)
![Page 5: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/5.jpg)
Mas cOmo
surgiu o
PHP?
![Page 6: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/6.jpg)
1994
• Rasmus Lerdorf criou um conjunto de scritps em Perl• Depois esses scripts foram passados para C, dando muito mais potencial ao PHP• Disponibilizou o seu código para que pudessem ver e usá-lo
![Page 7: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/7.jpg)
1994
1998
• Versão que se assemelha a atual •Lançamento da 3º Versão do PHP• Forte capacidade de extensibilidade• Assemelha-se a verão atual
![Page 8: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/8.jpg)
1994
1998
• O PHP 3.0 não foi projetado para lidar com aplicações complexas eficientemente• Características-chave:• Sessões HTTP• Maneiras mais seguras de manipular input dos
usuários
1999
![Page 9: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/9.jpg)
1994
1998
• PHP 4: Principal inovação é a Orientação a Objetos!
1999
2004
![Page 10: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/10.jpg)
![Page 11: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/11.jpg)
1. HelloWorld
![Page 12: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/12.jpg)
1. HelloWorld
<html><head>
<title> Hello World </title></head><body>
<?php$frase = “Hello World ”;$apresentacao = “meu nome é Fulano e tenho ”;$idade = 15;
echo $frase.$apresentacao.$idade.” anos!”;?>
</body></html>
![Page 13: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/13.jpg)
1. HelloWord
<html><head>
<title> Hello Word </title></head><body>
<?php$frase = “Hello Word ”;$apresentacao = “meu nome é Fulano e tenho ”;$idade = 15;
echo $frase.$apresentacao.$idade.” anos!”;?>
</body></html>
Uma variável é definida colocando-se o símbolo $
![Page 14: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/14.jpg)
1. HelloWord
<html><head>
<title> Hello Word </title></head><body>
<?php$frase = “Hello Word ”;$apresentacao = “meu nome é Fulano e tenho ”;$idade = 15;
echo $frase.$apresentacao.$idade.” anos!”;?>
</body></html>
Uma variável pode representar qualquer
tipo de dado
![Page 15: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/15.jpg)
1. HelloWord
<html><head>
<title> Hello Word </title></head><body>
<?php$frase = “Hello Word ”;$apresentacao = “meu nome é Fulano e tenho ”;$idade = 15;
echo $frase.$apresentacao.$idade.” anos!”;?>
</body></html>
Exibe strings na tela
![Page 16: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/16.jpg)
1. HelloWord
<html><head>
<title> Hello Word </title></head><body>
<?php$frase = “Hello Word ”;$apresentacao = “meu nome é Fulano e tenho ”;$idade = 15;
echo $frase.$apresentacao.$idade.” anos!”;?>
</body></html>
Operador “.” concatena Strings
![Page 17: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/17.jpg)
![Page 18: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/18.jpg)
Hora de Colocar a mão na massa!
![Page 19: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/19.jpg)
2. Formulários
![Page 20: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/20.jpg)
Conheça o
Senhor
Joaqui
m
![Page 21: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/21.jpg)
Esse é o senhor Joaquim, grande empresário de roupas de Brasília. Para controlar a sua loja ele precisa que você construa um pequeno sistema no qual ele possa cadastrar as roupas que chegam de seus fornecedores
Formulários > História do Sr. Joaquim
![Page 22: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/22.jpg)
Para cadastrar uma roupa ele precisa dos seguintes dados:• Nome do Fornecedor• Marca• Tipo de roupa
• Blusa• Calça• Moleton• Calção• Saia
• Quantidade• Precisa o tamanho das peças
Construa um formulário que atenda a esse pedido!
Formulários > Exercício
![Page 23: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/23.jpg)
E como eu vou
armazenar esses
dados?
![Page 24: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/24.jpg)
3. Banco de Dados
![Page 25: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/25.jpg)
Banco de dados > Definição
Um banco de dados é um conjunto de dados que se relacionam mutuamente e estão inseridos em determinado contexto.
![Page 26: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/26.jpg)
Banco de dados > Definição
O banco de dados que utilizaremos durante o curso será o MySQL, que possui uma interface muito boa com o PHP.
![Page 27: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/27.jpg)
Banco de dados > Conexão
“Comofas” pra se
comunicarem?
![Page 28: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/28.jpg)
Banco de dados > Conexão
Uma conexão com o banco de dados precisa de 4 coisas:
1 2 3 4
O endereço do Host
![Page 29: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/29.jpg)
Banco de dados > Conexão
Uma conexão com o banco de dados precisa de 4 coisas:
1 2 3 4
Nome do Banco de Dados
![Page 30: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/30.jpg)
Banco de dados > Conexão
Uma conexão com o banco de dados precisa de 4 coisas:
1 2 3 4
Nome do usuário
![Page 31: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/31.jpg)
Banco de dados > Conexão
Uma conexão com o banco de dados precisa de 4 coisas:
1 2 3 4
A senha
![Page 32: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/32.jpg)
Banco de dados > Conexão
Para fazer isso no PHP:
<?php$db_host = ‘nome do host do servidor’;$db_name = ‘nome do banco de dados’;$db_username = ‘nome do usuário’;$db_password = ‘password’;
?>
Jogue os dados necessários em variáveis
![Page 33: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/33.jpg)
Banco de dados > Conexão
Para fazer isso no PHP:
<?php$db_host = ‘nome do host do servidor’;$db_database = ‘nome do banco de dados’;$db_username = ‘nome do usuário’;$db_password = ‘password’;
$connection = mysql_connect ($db_host, $db_username, $db_password);if (!connection) {
die (“Não foi possível conectar com o BD: </br>”.mysql_error());}
?>
![Page 34: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/34.jpg)
Banco de dados > Conexão
Para fazer isso no PHP:
<?php$db_host = ‘nome do host do servidor’;$db_database = ‘nome do banco de dados’;$db_username = ‘nome do usuário’;$db_password = ‘password’;
$connection = mysql_connect ($db_host, $db_username, $db_password);if (!$connection) {
die (“Não foi possível conectar com o BD: </br>”.mysql_error());}
$db_select = mysql_select_db ($db_database, $connection),;
?>
![Page 35: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/35.jpg)
Banco de dados > Conexão
Para fazer isso no PHP:
<?php...$connection = mysql_connect ($db_host, $db_username, $db_password);if (!$connection) {
die (“Não foi possível conectar com o BD: </br>”.mysql_error());}
$db_select = mysql_select_db ($db_database, $connection);
if (!$db_select) {die (“Não foi possível selecionar o BD:</br>”.mysql_error());
}
?>
![Page 36: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/36.jpg)
Banco de dados > Exercício 1
Vamos criar uma conexão com o banco de dados para o senhor Joaquim!
![Page 37: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/37.jpg)
E agora?
![Page 38: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/38.jpg)
Banco de dados > Criando o BD
Vamos criar nosso banco de dados utilizando o PHPMyAdmin:
“O PHP My Admin é uma ferramenta que te permite administrar o seu banco de dados MySQL através do seu browser. Tudo o que ele exige é um servidor web com PHP instalado e um banco de dados MySQL pra adminstrar”
(Aprendendo PHP e MySQL,)
![Page 39: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/39.jpg)
Banco de dados > SQL
Mas afinal, o que é SQL?
É uma linguagem padronizada de comunicação com uma base de dados. É constituída por uma sequência de comandos. Esses comandos, por sua vez são constituídos por um conjunto de termos (tokens) e são finalizados com ponto-e-vírgula (‘;’).
![Page 40: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/40.jpg)
Banco de dados > SQL
Dicas básicas de SQL:
1. Para criar um banco de dados novo usa-se o comando CREATE DATABASE:
Ex: CREATE DATABASE banco_do_joaquim;
2. Para criar tabelas no banco de dados usa-se o comando CREATE TABLE:
Ex: CREATE TABLE roupa (id INT NOTNULL AUTOINCREMENT PRIMARY KEY(id), nome VARCHAR(50), nome_fornecedor VARCHAR(50));
![Page 41: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/41.jpg)
Banco de dados > SQL
Dicas básicas de SQL:
3. Criado o seu BD e sua tabela, para inserir elementos nela use o comando INSERT
Ex: INSERT INTO roupa (nome, nome_fornecedor) VALUES (“blusa Hering”, “Roupas SA”)
4. Com a sua tabela em mãos para selecionar seus dados use os comandos SELECT e FROM
Ex: SELECT * FROM roupa;
![Page 42: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/42.jpg)
Banco de dados > SQL
Dicas básicas de SQL:
5. Se quiser selecionar elementos do banco de dados de acordo com uma condição usa-se o comando WHERE
Ex: SELECT nome FROM roupa WHERE nome LIKE “%blusa%”;
6. Se quiser deletar uma tupla (linha) da tabela usa-se o comando DELETE
Ex: DELETE FROM roupa WHERE id = 1;
7. Se houver cadastrado uma entrada de forma errada e quiser corrigir o erro usa-se o comando UPDATE
Ex: UPDATE roupa SET nome = “saia Hering” WHERE id = 1
![Page 43: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/43.jpg)
Requisições SQL: hora de produzirmos algumas Queries
![Page 44: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/44.jpg)
Banco de dados > Query
Lembra do formulário que fizemos para o sr. Joaquim? Pois é hora de colocarmos as informações ali presentes no banco de dados que criamos.
![Page 45: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/45.jpg)
Banco de dados > Query
Vamos acrescentar mais algumas linhas de código em php ao nosso arquivo:
<?php ...
$db_select = mysql_select_db ($db_database);if (!$db_select) {
die (“Não foi possível encontrar o BD:</br>”.mysql_error());}
$query = “SELECT * FROM roupa”;
$result = mysql_query($query, $connection);if (!$result) {
die (“Não foi possível realizar consulta!</br>”.mysql_error());}
?>
![Page 46: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/46.jpg)
Banco de dados > Exercício 1
Que bonito, agora o seu Joaquim pode ver seus dados cadastrados através do PHP My Admin. Mas como ele é bem velhinho, não entende muito bem das tecnologias mais atuais. Dessa forma, por que então não criamos uma página só para listagem dos dados cadastrados?
![Page 47: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/47.jpg)
Banco de dados > Exercício 2
O seu Joaquim achou super bonitinho o trabalho que você fez de listagem de suas roupas cadastradas. Ele ficou muito feliz! Mas e se ele quiser vender uma roupa? Essa peça deve sair da listagem de dados pois não constará mais no estoque da sua loja. Vamos então construir uma Query para deletar uma entrada do banco de dados. Essa função deve ser externada ao sr. Joaquim através de um botão de vendas na tabela que é mostrado e cada linha da tabela.
![Page 48: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/48.jpg)
Banco de dados > Exercício 3
Nossa! Que tenso! O sr. Joaquim tem mal de Parkinson! Ele cadastrou uma das suas roupas de forma errônea. E agora?
Temos que ajudá-lo!!
Crie uma Query que permita a edição de dados pelo sr. Joaquim. A exibição dessa funcionalidade deve seguir a mesma formatação da função do exercício 2
![Page 49: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/49.jpg)
VIXE!Será que o seu sistema tá
Seguro?
![Page 50: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/50.jpg)
4. Segurança
Hey, you, modafóca
STOP!!
![Page 51: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/51.jpg)
Segurança > SQL Injection
O que é SQL Injection?
É um tipo de ameaça de segurança que atua através de limitações existentes na linguagem SQL.
O SQL Injection consiste em inserir sintaxe SQL dentro de uma Query através da manipulação das entradas de dados de seu programa (campos de formulário, por exemplo).
![Page 52: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/52.jpg)
Segurança > SQL Injection
Exemplo de SQL Injecton
Query:SELECT id, nome, sobrenome FROM autores WHERE nome = $nome AND sobrenome = $sobrenome;
Input:$nome = o'; DROP TABLE autores ; --$sobrenome= silva
Query resultante:SELECT id, nome, sobrenome FROM autores WHERE nome = 'jo'; DROP TABLE autores ; --' AND sobrenome = 'silva‘;
![Page 53: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/53.jpg)
Segurança > SQL Injection
Oh, e agora, quem poderá me salvar?
CALMA CALMA!!
Para evitar o SQL Injection siga algumas regras:
![Page 54: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/54.jpg)
Segurança > SQL Injection
Oh, e agora, quem poderá me salvar?
1Nunca conecte ao banco de dados como um super-usuário ou como o dono do banco de dados. Use sempre usuários personalidados com privilégios bem limitados.
2Não imprima qualquer informação específica do banco de dados, especialmente sobre o esquema, custe o que custar
![Page 55: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/55.jpg)
Segurança > SQL Injection
Oh, e agora, quem poderá me salvar?
3Adicione aspas para cada valor não numérico especificado pelo usuário que será passado para o banco de dados com as funções de caracteres de escape (ex.: mysql_real_escape_string(), sqlite_escape_string(), etc.).
4Verifique se uma entrada qualquer tem o tipo de dados experado. O PHP tem um grande número de funções de validação de entrada, (ex.: is_numeric(), ctype_digit() respectivamente) além de usar o suporte a Expressões Regulares
![Page 56: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/56.jpg)
![Page 57: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/57.jpg)
Segurança > Expressões Regulares
O que são Expressões Regulares - RegEx?
Em poucas palavras, expressões regulares são uma maneira robusta de se definir um padrão textual.
É feita através de um conjunto de símbolos e caracteres que são postos sequencialmente e são interpretados como um regra que deve ser seguida.
No PHP, podem ser usadas para definir que tipo de caracteres ou expressões são permitidas dentro de um campo
![Page 58: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/58.jpg)
Segurança > Expressões Regulares
Como é a sintaxe de uma RegEx?
Meta Caracter Descrição[ ] Indica uma lista de caracteres. Casa os caracteres
presentes na lista. Ex:[abc] = seleciona “a”,”b” ou “c”; [a-z]=seleciona os caracteres de “a” a “z”
[^ ] Nega a lista de caracteres
\( \) Grupo de captura. Marca uma subexpressão
* Casa o elemento precedente zero ou mais vezes. Ex: ab*c = seleciona “ac”, “abc”, “abbc”...
\ Casa o elemento x vezes, sendo m<x<n. Ex: a\{3,5\} casa somente "aaa", "aaaa", e "aaaaa"
![Page 59: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/59.jpg)
Segurança > Expressões Regulares
Como é a sintaxe de uma RegEx?
Meta Caracter Descrição? Pega o elemento anterior zero ou uma vez. Ex: 12? =
seleciona 1 ou 12
+ Igual ao “*”
| Pega a expressão que antecede OU a que sucede. Ex: tuv|145 = seleciona “tuv” OU 145
![Page 60: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/60.jpg)
Segurança > Expressões Regulares
Como implementar uma RegEx em PHP?
O PHP disponibiliza algumas funções para lidar com RegEx:• ereg_replace() – substituição através de RegEx• ereg() – casando expressões regulares• split() – separa strings em array utilizando RegEx
![Page 61: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/61.jpg)
Segurança > Expressões Regulares
Como implementar uma RegEx em PHP?
Exemplo:
<?php...if (ereg ([ch]?at$[0-9]^[pmg] [ \t\r\n\v\f]), $variavel){
$erro = “O input preenchido possui caracteres inválidos!”;
}...
?>
![Page 62: Aula 1 - Curso de PHP/CI e Tecnologias Relacionadas](https://reader033.fdocumentos.com/reader033/viewer/2022061210/5491415fb479596d528b4866/html5/thumbnails/62.jpg)
Segurança > Expressões Regulares
Que legal, agora você sabe como validar os campos de seu formulário! Agora é a hora então de sentar e colocar a mão na massa! Valide todos os campos do formulário que forem do tipo input. Use as regras que melhor lhe convierem