SlideShare uma empresa Scribd logo
1 de 55
falecomigo@neto.eti.br
Faculdade Marista
2010.2
Aula - 02
O que veremos hoje?
1. Strings
2. Arrays
3. Formulários
String
Em diversas situações precisaremos tratar uma String seja:
Dividindo;
Realizando parsers;
Substituindo valores;
Criptografando;
Formatando;
Etc..
O PHP fornece dezenas de funções relacionadas a String, é importante
conhecê-las para tornar mais práticos e simples os códigos-fontes do
seu projeto.
Obtendo o tamanho de uma String
O comando strlen permite ao desenvolvedor descobrir qual o
tamanho de uma string passada por parâmetro.
(int) strlen(<string>);
Retorno: o tamanho da string, caso seja vazia
retornará 0.
Obs. Dentre os vários usos podemos citar a validação se o tamanho da
string está de acordo com os parâmetros de armazenamentos definidos
em suas tabelas no MySQL.
Exemplo do strlen
<?php
$tamanho = strlen(‘Brasil’);
echo ($tamanho. ‘<BR>’);
// Resultado: 6
echo (strlen(‘ ’).’<BR>’);
// Resultado: 0
?>
Localizar uma substring dentro de
uma string(strpos,strchr e strrchr)
O comando strpos retorna a posição numérica da primeira
ocorrência da substring que está sendo procurada na string principal, ou
zero em caso de não haver resultados para a busca realizada.
(int) strpos(<string>,<busca>[,<posicao_de_inicio_de busca>]);
Exemplo do strpos
<?php
echo(strpos(‘Brasil Pentacampeao’, ‘a’). ‘<BR>’);
//Resultado: 2
echo(strpos(‘Brasil Pentacampeao’, ‘a’, 3). ‘<BR>’);
//Resultado: 11
//exibindo todas ocorrências
$offset = 0;
while(($offset = strpos(‘Brasil Pentacampeao’, ‘a’, $offset + 1)) != 0){
echo($offset. ‘,’);
}
//Resultado: 2, 11, 13, 17
?>
strchr e strrch
Os comandos strchr e strrchr localizam a primeira e a última
ocorrência da busca respectivamente.
(string) strch(<string>,<busca>);
(string) strrch(<string>,<busca>);
Retorno: a substring formada pela posição de localização da busca
até o final da string principal. Caso não haja resultados, será
retornado FALSE.
Exemplo de strchr e strrch
<?php
echo(strchr(‘Brasil Pentacampeao’, ‘a’). ‘<BR>’);
//Resultado: asil Pentacapeao
echo(strrchr(‘Brasil Pentacampeao’, ‘a’). ‘<BR>’);
//Resultado: ao
echo(strrchr(‘Brasil Pentacampeao’, ‘y’). ‘<BR>’);
//Resultado:
?>
Substituição de substring com
str_replace
O comando str_replace substitui todas as ocorrências de uma
busca em string pelo valor informado.
(mixed) str_replace(<busca>,<substituicao>,<string_original>);
Retorno: a nova string com suas alterações.
Exemplo de str_replace
<?php
echo(str_replace(‘penta’,’hexa’, ‘Brasil penta’). ‘<BR>’);
// Resultado: Brasil hexa
echo(str_replace(‘USUARIO’,’Neto’, ‘Bem vindo USUARIO ao site!’). ‘<BR>’);
// Resultado: Bem vindo Neto ao site!
?>
Caixa alta e baixa com stroupper,
strolower e ucfirt
A formatação de strings para caixa alta e caixa baixa pode ser realizada
por meio dos comandos stroupper e strolower,
respectivamente. Existe também o ucfirst que torna maiúscula a
primeira letra da string.
(string) stroupper(<string>);
(string) strlower(<string>);
(string) ucfirst(<string>);
Retorno: a nova string com suas alterações.
Exemplo de stroupper, strolower e
ucfirst
<?php
echo(strlower(‘jose NETO’). ‘<BR>’);
//Resultado: jose neto
echo(stroupper(‘jose NETO’).’<BR>’);
//Resultado: JOSE NETO
echo(ucfirst(‘andre MILANI’).’<BR>’);
//Resultado: Andre MILANI
?>
Inverter string com strrev
A função strrev, inverte a string passada como parâmetro.
(string) strrev(<string>);
Retorno: a nova string com suas invertida.
Exemplo de strrev
<?php
echo(strrev(‘Brasil’));
Resultado: lisarB
?>
Criptografia de string com crypt,
sha1 e md5
As funções crypt, sha1 e md5, são utilizadas para gerar os
códigos hash das string passadas por parâmetro.
Este recurso tem diversas aplicações, entre elas o armazenamento de
senha em tabelas do banco de dados.
O código hash é gerado a partir de algoritmos conhecidos como one-way(única
direção), pois seus resultados não são reversíveis a ponto de se chegar a string
original.”
(string) crypt(<string>);
(string) sha1(<string>);
(string) md5(<string>);
Retorno: código hash gerado a partir da string informada.
ATENÇÃO MUITO USADO!
Exemplo de crypt, sha1 e md5
<?PHP
$senhaCadastrada = 'minhaSenhaSeguraDeInternet';
echo(crypt($senhaCadastrada).'<BR>');
// Resultado: $1$eRl.t3cN$87toVnnbrp52Qo5N5LrH50
echo(sha1($senhaCadastrada).'<BR>');
// Resultado: bb8b564b31d1c4a736dbbca0fd3512a5246f3cd8
Exemplo de crypt, sha1 e md5
echo(md5($senhaCadastrada).'<BR>');
// Resultado: 852b340fd8be477f0418cdcf32450fa7
// Valor que deve ser armazenado no banco de dados
$valorArmazenadoNoBanco = crypt($senhaCadastrada);
// Autenticando um usuario
$senhaInformadaNoLogin = 'minhaSenhaSeguraDeInternet';
if(crypt($senhaInformadaNoLogin) == $valorArmazenadoNoBanco)
{
echo('Sucesso!');
}
?>
Transformar string em arrays com
explode e implode
O explode, separa a string com base em um caractere divisor, que pode
ser qualquer caracter.
(array) explode(<divisor>,<string>[, numero_de_divisoes_maximo]);
Retorno: array com cada parte da string em uma posição.
Exemplo de explode
<?PHP
$resultado = explode(' ', 'Brasil penta campeao');
echo $resultado[0].'<BR>'; // Resultado: Brasil
echo $resultado[1].'<BR>'; // Resultado: penta
$resultado = explode(' ', 'Brasil penta campeao', 2);
echo $resultado[0].'<BR>'; // Resultado: Brasil
echo $resultado[1].'<BR>'; // Resultado: penta campeao
?>
Transformar string em arrays com
explode e implode
O implode, monta uma string com base nas posições existentes em um
array. Para organizar a string, é possível indicar qual o caractere de separação
entra as partes deve ser utilizado na string final
(array) implode(<divisor>,<string>);
Retorno: string com as partes do array.
Exemplo de implode
<?PHP
$meuArray = array('Alpha', 'Beta', 'Gama');
$minhaString = implode(' - ', $meuArray);
echo($minhaString);
// Resultado: Alpha - Beta - Gama
?>
Remover espaços em branco com
trim, ltrim e rtrim
Os comandos trim, ltrim e rtrim removem o excesso de espaços em
branco em diferentes partes da string passada por parâmetro.
(string) trim(<string>);
(string) ltrim(<string>);
(string) rtrim(<string>);
Retorno: string alterada.
Exemplo de trim, ltrim e rtim
<?PHP
echo(trim(' Brasil penta campeao ').'<BR>');
// Resultado: _Brasil penta campeao_
echo(ltrim(' Brasil penta campeao ').'<BR>');
// Resultado: _Brasil penta campeao _
echo(rtrim(' Brasil penta campeao ').'<BR>');
// Resultado: _ Brasil penta campeao_
?>
ARRAY
Imprimindo um array
O comando print_r é utilizado para exibir todo o conteúdo do array
passado como parâmetro a essa função.
O formato da impressão do array pelo comando print_r é de exibir sempre a
chave e o valor correspondente de cada elemento do array.
(mixed) print_r(<array>);
Retorno: imprime no html as chaves e valores contidos no array.
Exemplo imprimindo um array
<?PHP
$meuArray = array('alpha' => 'valor1', 2, 'tres');
$meuArray[5] = 'Novo valor';
print_r($meuArray);
// Resultado:
// Array ( [alpha] => valor1 [0] => 2 [1] => tres [5] => Novo valor )
?>
Arrays Multidimensionais
<?PHP
$arrayAlpha = array('a', 'b', 'c');
$arrayBeta = array('d', 'e', 'f');
$arrayMulti = array($arrayAlpha, $arrayBeta);
echo($arrayMulti[0][2].'<BR>'); // Resultado: c
echo($arrayMulti[1][2].'<BR>'); // Resultado: f
?>
Removendo elementos do array
O comando unset destrói a posição do array em questão ou variável
informada.
(void) unset(<variavel_ou_posicao_do_array>);
Retorno: void.
Exemplo do unset
<?PHP
$meuArray = array('a', 'b', 'c', 'd', 'e');
unset($meuArray[3]);
print_r($meuArray);
// Resultado:
// Array ( [0] => a [1] => b [2] => c [4] => e )
?>
Obtendo número de elementos do
array
É possível obter o número de elementos existentes em um array por meio das
funções count e sizeof.
(int) count(<variavel>);
(int) sizeof(<variavel>);
Retorno: número de elementos da variável ou array.
Exemplo do count e sizeof
<?PHP
$meuArray = array('a', 'b', 'c', 'd', 'e');
echo (count($meuArray).'<BR>'); // Resultado: 5
unset($meuArray[0]);
echo (sizeof($meuArray).'<BR>'); // Resultado: 4
?>
Navegação nos arrays
(mixed) current(<array>)
(mixed) key(<array>)
(mixed) prev(<array>)
(mixed) next(<array>)
(mixed) end(<array>)
(mixed) reset(<array>)
Retorno Descrição
current Retorna o elemento da posição atual do array.
key Retorna a chave da posição atual do array.
next Avança o índice do array para a próxima posição e retorna
o valor do elemento na posição em questão.
prev Retrocede o índice do array para a posição anterior e
retorna o valor do elemento na posição em questão.
end Avança o índice do array para a última posição e retorna o
valor do elemento na posição em questão.
reset Retrocede o índice do array para a primeira posição e
retorna o valor do elemento na posicão em questão
Exemplo navegação em arrays
<?PHP
$meuArray = array('a', 'b', 'c', 'd', 'e', 'f', 'g');
foreach($meuArray as $valor) {
echo($valor." ");
}
// Resultado: a b c d e f g
end($meuArray);
prev($meuArray);
prev($meuArray);
prev($meuArray);
next($meuArray);
echo(key($meuArray)); // Resultado: 4
echo(current($meuArray)); // Resultado: e
?>
array_push e array_pop
o array_push insere um valor no final de um arrray e o array_pop
remove o último elemento de um array.
(int) array_push(<array>,<elemento>);
(mixed) array_pop(<variavel>);
Retorno Descrição
array_push Retorna o novo número de elementos do array.
array_pop Retornao último elemento do array, eliminando-o do array.
Exemplo array_push e array_pop
<?PHP
$minhaPilha = array();
array_push($minhaPilha, 'a');
array_push($minhaPilha, 'b');
echo(array_push($minhaPilha, 'c').'<BR>'); // Resultado: 3
echo(array_pop($minhaPilha).'<BR>'); // Resultado: c
print_r($minhaPilha); // Resultado: Array ( [0] => a [1] => b )
?>
Enviar todos os elementos de um
array para uma função com array_map
Em determinados momentos pode ser necessário que todos os elementos de
um array sejam enviados para uma função específica.
A função array_map recebe um array como parâmetro e uma função e
automatiza o envio de todos os elementos do array para tal instrução.
(array) array_map(<nome_da_funcao>,<array>);
Retorno: um novo array com os retornos da função para cada posição do
array enviado como parâmetro.
Exemplo array_map
<?PHP
function calcularDobro($numero) {
return $numero * 2;
}
$meuArray = array(1, 2, 3);
$arrayAlterado = array_map('calcularDobro', $meuArray);
print_r($arrayAlterado);
// Resultado: Array ( [0] => 2 [1] => 4 [2] => 6 )
?>
Achar uma chave com array_key e
array_key_exists
O comando array_keys retorna um novo array, em que cada posição é
uma chave disponível no array mencionado no comando.
Pode ser útil em situações nas quais não sabemos quais os elementos e quais
chaves existem em um array.
(array) array_keys(<array>);
Achar uma chave com array_key e
array_key_exists
Caso o você tenha uma determinada chave e precise descobrir se um array
em particular contém um registro atribuído a essa chave, é possivel utilizar a
função array_key_exists
(bool) array_key_exists(<chave>,<array>);
Exemplo com array_key e
array_key_exists
<?PHP
$meuArray = array('alfa' => 0, 1 => 1, 'dois' => 2);
print_r(array_keys($meuArray));
// Resultado: Array ( [0] => alfa [1] => 1 [2] => dois )
echo(array_key_exists('dois', $meuArray));
// Resultado: 1
?>
Localizar valores em arrays com
array_search e in_array
Para saber se um determinado valor está contido em um array utilie o
array_search
(mixed) array_search(<elemento>,<array>);
Retorno: retorna a chave referente ao valor procurado, no caso de
encontrá-lo se não retorna FALSE.
Exemplo array_search e in_array
<?PHP
$meuArray = array('aaa', 'bb', 'Chave do c' => 'c', 'ddd');
echo(array_search('aaa', $meuArray).'<BR>'); // Resultado: 0
echo(array_search('c', $meuArray).'<BR>'); // Resultado: Chave do c
echo(array_search('nenhum', $meuArray).'<BR>'); // Resultado: <vazio>
?>
Obs. Similar a função array_search, o comando in_array retorna TRUE
caso encontre e FALSE caso não.
Misturar e ordenar arrays
É possível ordenar arrays por ordem crescente(sort) e decrescente (rsort),
bem como podemos embaralhá-lo(shuffle).
(bool) sort(<array>);
(bool) rsort(<array>);
(bool) shuffle(<array>);
Exemplo misturar e ordenar arrays
<?PHP
$meuArray = array('a', 1, 'b', 'c', 2, '0', '4');
sort($meuArray);
print_r($meuArray);
// Resultado:
// Array ( [0] => 0 [1] => 4 [2] => a [3] => b [4] => c [5] => 1 [6] => 2 )
echo('<BR>');
rsort($meuArray);
print_r($meuArray);
// Resultado:
// Array ( [0] => 2 [1] => 1 [2] => c [3] => b [4] => a [5] => 4 [6] => 0 )
echo('<BR>');
shuffle($meuArray);
print_r($meuArray);
// Resultado:
// Array ( [0] => c [1] => 0 [2] => 4 [3] => a [4] => 1 [5] => 2 [6] => b )
?>
Formulários
$_POST e $_GET
As supervariáves $_POST e $_GET são arrays que representam os dados
enviados ao servidor pelo método post e get. Estas variáveis estão diponíveis
em todas as partes em que forem requisitadas.
$_REQUEST
A supervariável $REQUEST reúne o conteúdo das supervariáveis $_POST,
$_GET e $COOKIES. A vantagem é que, independete do método de envio dos
dados de um formulário, é possível acessar o campo por seu nome.
Vamos
PRATICAR?
Fomulário
<HTML>
<HEAD>
<TITLE>EXEMPLO - Formul·rios</TITLE>
</HEAD>
<BODY>
<FORM method="POST" action="?action=save" name="meuForm">
Nome: <INPUT type=TEXT name=CAMPO_NOME>
<BR>Idade: <INPUT type=TEXT name=CAMPO_IDADE>
<BR>E-mail: <INPUT type=TEXT name=CAMPO_EMAIL>
<BR>Sexo: <INPUT type=RADIO name=CAMPO_SEXO value="M">Masculino
<INPUT type=RADIO name=CAMPO_SEXO value="F">Feminino
<BR>Curso: <SELECT name=CAMPO_CURSO>
<OPTION selected>Selecione...</OPTION>
<OPTION>CiÍncia da ComputaÁ„o</OPTION>
<OPTION>Bacharelado em Inform·tica</OPTION>
<OPTION>Engenharia da ComputaÁ„o</OPTION>
</SELECT>
<BR>Conhecimentos:
<INPUT type=CHECKBOX name=CAMPO_CONHECIMENTOS[] value="Word">Microsoft Word
<INPUT type=CHECKBOX name=CAMPO_CONHECIMENTOS[] value="HTML">HTML
<INPUT type=CHECKBOX name=CAMPO_CONHECIMENTOS[] value="JS">JavaScript
<INPUT type=CHECKBOX name=CAMPO_CONHECIMENTOS[] value="PHP">PHP
<BR>
<INPUT type=RESET value="Limpar">
<INPUT type=SUBMIT value="Enviar">
</FORM>
</BODY>
</HTML>
Validação de texto
$tamanho_nome = strlen($_POST["CAMPO_NOME"]);
if($tamanho_nome < 5 || $tamanho_nome > 64)
{
echo("O campo 'Nome' deve ter entre 5 e 64
caracteres.".$tamanho_nome);
$formValid = FALSE;
}
Validação número
$idade = (int)$_POST["CAMPO_IDADE"];
if(is_NaN($idade) || $idade < 4 || $idade > 120)
{
echo("O campo 'Idade' deve ter preenchido corretamente.");
$formValid = FALSE;
}
Validação email
$email = $_POST["CAMPO_EMAIL"];
$regex = "/^[^0-9][A-z0-9_]+([.][A-z0-9_]+)*[@][A-z0-9_]+([.][A-z0-
9_]+)*[.][A-z]{2,4}$/";
if(!preg_match($regex, $email))
{
echo("O campo 'E-mail' deve ter preenchido corretamente.");
$formValid = FALSE;
}
Validação de radio
$sexo = $_POST["CAMPO_SEXO"];
if($sexo != "M" && $sexo != "F")
{
echo("O campo 'Sexo' deve ser preenchido.");
$formValid = FALSE;
}
Validação lista de seleção
$curso = $_POST["CAMPO_CURSO"];
if($curso == "" || $curso == "Selecione...")
{
echo("O campo 'Curso' deve ser preenchido.");
$formValid = FALSE;
}
Cabousse…

Mais conteúdo relacionado

Mais procurados

Aula 02 - Introdução ao PHP - Programação Web
Aula 02  - Introdução ao PHP - Programação WebAula 02  - Introdução ao PHP - Programação Web
Aula 02 - Introdução ao PHP - Programação Web
Dalton Martins
 
Aprender Javascript e jQuery (UFCD
Aprender Javascript e jQuery (UFCDAprender Javascript e jQuery (UFCD
Aprender Javascript e jQuery (UFCD
Afonso Gomes
 

Mais procurados (20)

Poo com php
Poo com phpPoo com php
Poo com php
 
Introdução ao PHP - Criação de sites II
Introdução ao PHP - Criação de sites IIIntrodução ao PHP - Criação de sites II
Introdução ao PHP - Criação de sites II
 
Php 05 Mvc
Php 05 MvcPhp 05 Mvc
Php 05 Mvc
 
JasperReports
JasperReportsJasperReports
JasperReports
 
Aula 5 PHP - Criação de sites II
Aula 5 PHP - Criação de sites IIAula 5 PHP - Criação de sites II
Aula 5 PHP - Criação de sites II
 
Slides
SlidesSlides
Slides
 
Proxy, Man-In-The-Middle e testes
Proxy, Man-In-The-Middle e testesProxy, Man-In-The-Middle e testes
Proxy, Man-In-The-Middle e testes
 
Arrays PHP - Criação de sites II
Arrays PHP - Criação de sites IIArrays PHP - Criação de sites II
Arrays PHP - Criação de sites II
 
Lidando com Código Duplicado - DevInSantos 2013
Lidando com Código Duplicado - DevInSantos 2013Lidando com Código Duplicado - DevInSantos 2013
Lidando com Código Duplicado - DevInSantos 2013
 
PHP GERAL
PHP GERALPHP GERAL
PHP GERAL
 
Lidando com Código Duplicado - PHP Conference Brasil 2013
Lidando com Código Duplicado - PHP Conference Brasil 2013Lidando com Código Duplicado - PHP Conference Brasil 2013
Lidando com Código Duplicado - PHP Conference Brasil 2013
 
M5 php rc
M5 php rcM5 php rc
M5 php rc
 
PHP Jedi - Boas Práticas e Alta Performance
PHP Jedi - Boas Práticas e Alta PerformancePHP Jedi - Boas Práticas e Alta Performance
PHP Jedi - Boas Práticas e Alta Performance
 
Pesquisa tipos de entrada de dados php
Pesquisa tipos de entrada de dados phpPesquisa tipos de entrada de dados php
Pesquisa tipos de entrada de dados php
 
PHP Day - PHP para iniciantes
PHP Day - PHP para iniciantesPHP Day - PHP para iniciantes
PHP Day - PHP para iniciantes
 
Aula 02 - Introdução ao PHP - Programação Web
Aula 02  - Introdução ao PHP - Programação WebAula 02  - Introdução ao PHP - Programação Web
Aula 02 - Introdução ao PHP - Programação Web
 
Lista Exercicios 01
Lista Exercicios 01Lista Exercicios 01
Lista Exercicios 01
 
Aprender Javascript e jQuery (UFCD
Aprender Javascript e jQuery (UFCDAprender Javascript e jQuery (UFCD
Aprender Javascript e jQuery (UFCD
 
Introdução ao Shell Script (versão estendida)
Introdução ao Shell Script (versão estendida)Introdução ao Shell Script (versão estendida)
Introdução ao Shell Script (versão estendida)
 
Orientação a Objetos em PHP
Orientação a Objetos em PHPOrientação a Objetos em PHP
Orientação a Objetos em PHP
 

Destaque

incontro bloggers 19_3_09 il marketing della conversazione e proposte per nuo...
incontro bloggers 19_3_09 il marketing della conversazione e proposte per nuo...incontro bloggers 19_3_09 il marketing della conversazione e proposte per nuo...
incontro bloggers 19_3_09 il marketing della conversazione e proposte per nuo...
Flavia Rubino
 
Autenticação e Autorização (in portuguese)
Autenticação e Autorização (in portuguese)Autenticação e Autorização (in portuguese)
Autenticação e Autorização (in portuguese)
Bruno Pedro
 

Destaque (20)

incontro bloggers 19_3_09 il marketing della conversazione e proposte per nuo...
incontro bloggers 19_3_09 il marketing della conversazione e proposte per nuo...incontro bloggers 19_3_09 il marketing della conversazione e proposte per nuo...
incontro bloggers 19_3_09 il marketing della conversazione e proposte per nuo...
 
Ajax
AjaxAjax
Ajax
 
Calle tomada - Intervención urbana - Argentina
Calle tomada  - Intervención urbana - ArgentinaCalle tomada  - Intervención urbana - Argentina
Calle tomada - Intervención urbana - Argentina
 
Webtech 2010: twitter programming
Webtech 2010: twitter programmingWebtech 2010: twitter programming
Webtech 2010: twitter programming
 
Presentación[tesis] 21.10.2011
Presentación[tesis] 21.10.2011Presentación[tesis] 21.10.2011
Presentación[tesis] 21.10.2011
 
Recepción educa tv
Recepción educa tvRecepción educa tv
Recepción educa tv
 
Venezia 2010 Facebook Developer Garage Parte 2
Venezia 2010 Facebook Developer Garage Parte 2Venezia 2010 Facebook Developer Garage Parte 2
Venezia 2010 Facebook Developer Garage Parte 2
 
What's that Building? Using Google's Map API to Create a Campus Map
What's that Building?  Using Google's Map API to Create a Campus MapWhat's that Building?  Using Google's Map API to Create a Campus Map
What's that Building? Using Google's Map API to Create a Campus Map
 
Como Instalar O WordPress
Como Instalar O WordPressComo Instalar O WordPress
Como Instalar O WordPress
 
Progettazione e sviluppo di applicazioni web 2.0 con PHP e Ajax
Progettazione e sviluppo di applicazioni web 2.0 con PHP e AjaxProgettazione e sviluppo di applicazioni web 2.0 con PHP e Ajax
Progettazione e sviluppo di applicazioni web 2.0 con PHP e Ajax
 
Php y mysql
Php y mysqlPhp y mysql
Php y mysql
 
Drupal 7 : theming avanzato
Drupal 7 : theming avanzatoDrupal 7 : theming avanzato
Drupal 7 : theming avanzato
 
Xdebug
XdebugXdebug
Xdebug
 
Apostila php
Apostila phpApostila php
Apostila php
 
TAKING PHP SERIOUSLY - Keith Adams
TAKING PHP SERIOUSLY - Keith AdamsTAKING PHP SERIOUSLY - Keith Adams
TAKING PHP SERIOUSLY - Keith Adams
 
Autenticação e Autorização (in portuguese)
Autenticação e Autorização (in portuguese)Autenticação e Autorização (in portuguese)
Autenticação e Autorização (in portuguese)
 
Atendendo o Mercado Mobile usando PHP
Atendendo o Mercado Mobile usando PHPAtendendo o Mercado Mobile usando PHP
Atendendo o Mercado Mobile usando PHP
 
Aplicando SOLID com PHP7
Aplicando SOLID com PHP7Aplicando SOLID com PHP7
Aplicando SOLID com PHP7
 
Storybusters: l'intervista narrativa
Storybusters: l'intervista narrativaStorybusters: l'intervista narrativa
Storybusters: l'intervista narrativa
 
Dicas para aumentar a performance de um software PHP
Dicas para aumentar a performance de um software PHPDicas para aumentar a performance de um software PHP
Dicas para aumentar a performance de um software PHP
 

Semelhante a Aula 02 - Curso PHP e MySQL

Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
Regis Magalhães
 
Ecommerce, mais simples do que parece
Ecommerce, mais simples do que pareceEcommerce, mais simples do que parece
Ecommerce, mais simples do que parece
Impacta Eventos
 
LabMM4 (T13 - 12/13) - Funções
LabMM4 (T13 - 12/13) - FunçõesLabMM4 (T13 - 12/13) - Funções
LabMM4 (T13 - 12/13) - Funções
Carlos Santos
 
LabMM4 (T14 - 12/13) - Arrays
LabMM4 (T14 - 12/13) - ArraysLabMM4 (T14 - 12/13) - Arrays
LabMM4 (T14 - 12/13) - Arrays
Carlos Santos
 
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveisLabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
Carlos Santos
 
PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX
Sérgio Souza Costa
 

Semelhante a Aula 02 - Curso PHP e MySQL (20)

Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
PW03 - Programação Web PHP Arrays (Vetores)
PW03 - Programação Web PHP Arrays (Vetores)PW03 - Programação Web PHP Arrays (Vetores)
PW03 - Programação Web PHP Arrays (Vetores)
 
Strings em php
Strings em phpStrings em php
Strings em php
 
Php
PhpPhp
Php
 
Revisao php
Revisao phpRevisao php
Revisao php
 
Ecommerce, mais simples do que parece
Ecommerce, mais simples do que pareceEcommerce, mais simples do que parece
Ecommerce, mais simples do que parece
 
Ecommerce, mais simples do que parece
Ecommerce, mais simples do que pareceEcommerce, mais simples do que parece
Ecommerce, mais simples do que parece
 
Programação web ii aulas 06 e 07
Programação web ii   aulas 06 e 07Programação web ii   aulas 06 e 07
Programação web ii aulas 06 e 07
 
LabMM4 (T13 - 12/13) - Funções
LabMM4 (T13 - 12/13) - FunçõesLabMM4 (T13 - 12/13) - Funções
LabMM4 (T13 - 12/13) - Funções
 
Aula 4 php
Aula 4 phpAula 4 php
Aula 4 php
 
LabMM4 (T14 - 12/13) - Arrays
LabMM4 (T14 - 12/13) - ArraysLabMM4 (T14 - 12/13) - Arrays
LabMM4 (T14 - 12/13) - Arrays
 
apostila.pdf
apostila.pdfapostila.pdf
apostila.pdf
 
PHP Básico - Parte 3
PHP Básico - Parte 3PHP Básico - Parte 3
PHP Básico - Parte 3
 
Palestra de PDO
Palestra de PDOPalestra de PDO
Palestra de PDO
 
Introdução ao PHP Parte 2
Introdução ao PHP Parte 2Introdução ao PHP Parte 2
Introdução ao PHP Parte 2
 
Aula4
Aula4Aula4
Aula4
 
Manipulacao de arrays
Manipulacao de arraysManipulacao de arrays
Manipulacao de arrays
 
2ª aula php
2ª aula php2ª aula php
2ª aula php
 
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveisLabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
 
PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX
 

Mais de B&R Consultoria Empresarial

Capital intelectual o principal ativo de uma empresa familiar
Capital intelectual o principal ativo de uma empresa familiarCapital intelectual o principal ativo de uma empresa familiar
Capital intelectual o principal ativo de uma empresa familiar
B&R Consultoria Empresarial
 
Capital intelectual o principal ativo de uma empresa familiar
Capital intelectual o principal ativo de uma empresa familiarCapital intelectual o principal ativo de uma empresa familiar
Capital intelectual o principal ativo de uma empresa familiar
B&R Consultoria Empresarial
 
Gol se prepara para lançar voo para Nigéria em outubro.
Gol se prepara para lançar voo para Nigéria em outubro.Gol se prepara para lançar voo para Nigéria em outubro.
Gol se prepara para lançar voo para Nigéria em outubro.
B&R Consultoria Empresarial
 

Mais de B&R Consultoria Empresarial (20)

Workshop - Acreditação hospitalar para pequenas e médias unidades de saúde – ...
Workshop - Acreditação hospitalar para pequenas e médias unidades de saúde – ...Workshop - Acreditação hospitalar para pequenas e médias unidades de saúde – ...
Workshop - Acreditação hospitalar para pequenas e médias unidades de saúde – ...
 
Capital intelectual o principal ativo de uma empresa familiar
Capital intelectual o principal ativo de uma empresa familiarCapital intelectual o principal ativo de uma empresa familiar
Capital intelectual o principal ativo de uma empresa familiar
 
A gastança de dinheiro público
A gastança de dinheiro públicoA gastança de dinheiro público
A gastança de dinheiro público
 
Capital intelectual o principal ativo de uma empresa familiar
Capital intelectual o principal ativo de uma empresa familiarCapital intelectual o principal ativo de uma empresa familiar
Capital intelectual o principal ativo de uma empresa familiar
 
Inovação
InovaçãoInovação
Inovação
 
Gol se prepara para lançar voo para Nigéria em outubro.
Gol se prepara para lançar voo para Nigéria em outubro.Gol se prepara para lançar voo para Nigéria em outubro.
Gol se prepara para lançar voo para Nigéria em outubro.
 
A sustentabilidade e a geração y
A sustentabilidade e a geração yA sustentabilidade e a geração y
A sustentabilidade e a geração y
 
Shopping center
Shopping centerShopping center
Shopping center
 
Construção e incorporação
Construção e incorporaçãoConstrução e incorporação
Construção e incorporação
 
Estoquesconsiderações
EstoquesconsideraçõesEstoquesconsiderações
Estoquesconsiderações
 
Roadmapping
RoadmappingRoadmapping
Roadmapping
 
Novo modelo de aposentadoria
Novo modelo de aposentadoriaNovo modelo de aposentadoria
Novo modelo de aposentadoria
 
Ciclo de vida do produto
Ciclo de vida do produtoCiclo de vida do produto
Ciclo de vida do produto
 
O perfil do novo gestor
O perfil do novo gestorO perfil do novo gestor
O perfil do novo gestor
 
Implantação de Gestão Financeira / Clientes
Implantação de Gestão Financeira / ClientesImplantação de Gestão Financeira / Clientes
Implantação de Gestão Financeira / Clientes
 
Franchising
FranchisingFranchising
Franchising
 
Hospitalidade
HospitalidadeHospitalidade
Hospitalidade
 
Complaciance
ComplacianceComplaciance
Complaciance
 
Hospital Med 2013
Hospital Med 2013Hospital Med 2013
Hospital Med 2013
 
Análise Estratégica
Análise Estratégica Análise Estratégica
Análise Estratégica
 

Aula 02 - Curso PHP e MySQL

  • 2. O que veremos hoje? 1. Strings 2. Arrays 3. Formulários
  • 3. String Em diversas situações precisaremos tratar uma String seja: Dividindo; Realizando parsers; Substituindo valores; Criptografando; Formatando; Etc.. O PHP fornece dezenas de funções relacionadas a String, é importante conhecê-las para tornar mais práticos e simples os códigos-fontes do seu projeto.
  • 4. Obtendo o tamanho de uma String O comando strlen permite ao desenvolvedor descobrir qual o tamanho de uma string passada por parâmetro. (int) strlen(<string>); Retorno: o tamanho da string, caso seja vazia retornará 0. Obs. Dentre os vários usos podemos citar a validação se o tamanho da string está de acordo com os parâmetros de armazenamentos definidos em suas tabelas no MySQL.
  • 5. Exemplo do strlen <?php $tamanho = strlen(‘Brasil’); echo ($tamanho. ‘<BR>’); // Resultado: 6 echo (strlen(‘ ’).’<BR>’); // Resultado: 0 ?>
  • 6. Localizar uma substring dentro de uma string(strpos,strchr e strrchr) O comando strpos retorna a posição numérica da primeira ocorrência da substring que está sendo procurada na string principal, ou zero em caso de não haver resultados para a busca realizada. (int) strpos(<string>,<busca>[,<posicao_de_inicio_de busca>]);
  • 7. Exemplo do strpos <?php echo(strpos(‘Brasil Pentacampeao’, ‘a’). ‘<BR>’); //Resultado: 2 echo(strpos(‘Brasil Pentacampeao’, ‘a’, 3). ‘<BR>’); //Resultado: 11 //exibindo todas ocorrências $offset = 0; while(($offset = strpos(‘Brasil Pentacampeao’, ‘a’, $offset + 1)) != 0){ echo($offset. ‘,’); } //Resultado: 2, 11, 13, 17 ?>
  • 8. strchr e strrch Os comandos strchr e strrchr localizam a primeira e a última ocorrência da busca respectivamente. (string) strch(<string>,<busca>); (string) strrch(<string>,<busca>); Retorno: a substring formada pela posição de localização da busca até o final da string principal. Caso não haja resultados, será retornado FALSE.
  • 9. Exemplo de strchr e strrch <?php echo(strchr(‘Brasil Pentacampeao’, ‘a’). ‘<BR>’); //Resultado: asil Pentacapeao echo(strrchr(‘Brasil Pentacampeao’, ‘a’). ‘<BR>’); //Resultado: ao echo(strrchr(‘Brasil Pentacampeao’, ‘y’). ‘<BR>’); //Resultado: ?>
  • 10. Substituição de substring com str_replace O comando str_replace substitui todas as ocorrências de uma busca em string pelo valor informado. (mixed) str_replace(<busca>,<substituicao>,<string_original>); Retorno: a nova string com suas alterações.
  • 11. Exemplo de str_replace <?php echo(str_replace(‘penta’,’hexa’, ‘Brasil penta’). ‘<BR>’); // Resultado: Brasil hexa echo(str_replace(‘USUARIO’,’Neto’, ‘Bem vindo USUARIO ao site!’). ‘<BR>’); // Resultado: Bem vindo Neto ao site! ?>
  • 12. Caixa alta e baixa com stroupper, strolower e ucfirt A formatação de strings para caixa alta e caixa baixa pode ser realizada por meio dos comandos stroupper e strolower, respectivamente. Existe também o ucfirst que torna maiúscula a primeira letra da string. (string) stroupper(<string>); (string) strlower(<string>); (string) ucfirst(<string>); Retorno: a nova string com suas alterações.
  • 13. Exemplo de stroupper, strolower e ucfirst <?php echo(strlower(‘jose NETO’). ‘<BR>’); //Resultado: jose neto echo(stroupper(‘jose NETO’).’<BR>’); //Resultado: JOSE NETO echo(ucfirst(‘andre MILANI’).’<BR>’); //Resultado: Andre MILANI ?>
  • 14. Inverter string com strrev A função strrev, inverte a string passada como parâmetro. (string) strrev(<string>); Retorno: a nova string com suas invertida. Exemplo de strrev <?php echo(strrev(‘Brasil’)); Resultado: lisarB ?>
  • 15. Criptografia de string com crypt, sha1 e md5 As funções crypt, sha1 e md5, são utilizadas para gerar os códigos hash das string passadas por parâmetro. Este recurso tem diversas aplicações, entre elas o armazenamento de senha em tabelas do banco de dados. O código hash é gerado a partir de algoritmos conhecidos como one-way(única direção), pois seus resultados não são reversíveis a ponto de se chegar a string original.” (string) crypt(<string>); (string) sha1(<string>); (string) md5(<string>); Retorno: código hash gerado a partir da string informada. ATENÇÃO MUITO USADO!
  • 16. Exemplo de crypt, sha1 e md5 <?PHP $senhaCadastrada = 'minhaSenhaSeguraDeInternet'; echo(crypt($senhaCadastrada).'<BR>'); // Resultado: $1$eRl.t3cN$87toVnnbrp52Qo5N5LrH50 echo(sha1($senhaCadastrada).'<BR>'); // Resultado: bb8b564b31d1c4a736dbbca0fd3512a5246f3cd8
  • 17. Exemplo de crypt, sha1 e md5 echo(md5($senhaCadastrada).'<BR>'); // Resultado: 852b340fd8be477f0418cdcf32450fa7 // Valor que deve ser armazenado no banco de dados $valorArmazenadoNoBanco = crypt($senhaCadastrada); // Autenticando um usuario $senhaInformadaNoLogin = 'minhaSenhaSeguraDeInternet'; if(crypt($senhaInformadaNoLogin) == $valorArmazenadoNoBanco) { echo('Sucesso!'); } ?>
  • 18. Transformar string em arrays com explode e implode O explode, separa a string com base em um caractere divisor, que pode ser qualquer caracter. (array) explode(<divisor>,<string>[, numero_de_divisoes_maximo]); Retorno: array com cada parte da string em uma posição.
  • 19. Exemplo de explode <?PHP $resultado = explode(' ', 'Brasil penta campeao'); echo $resultado[0].'<BR>'; // Resultado: Brasil echo $resultado[1].'<BR>'; // Resultado: penta $resultado = explode(' ', 'Brasil penta campeao', 2); echo $resultado[0].'<BR>'; // Resultado: Brasil echo $resultado[1].'<BR>'; // Resultado: penta campeao ?>
  • 20. Transformar string em arrays com explode e implode O implode, monta uma string com base nas posições existentes em um array. Para organizar a string, é possível indicar qual o caractere de separação entra as partes deve ser utilizado na string final (array) implode(<divisor>,<string>); Retorno: string com as partes do array.
  • 21. Exemplo de implode <?PHP $meuArray = array('Alpha', 'Beta', 'Gama'); $minhaString = implode(' - ', $meuArray); echo($minhaString); // Resultado: Alpha - Beta - Gama ?>
  • 22. Remover espaços em branco com trim, ltrim e rtrim Os comandos trim, ltrim e rtrim removem o excesso de espaços em branco em diferentes partes da string passada por parâmetro. (string) trim(<string>); (string) ltrim(<string>); (string) rtrim(<string>); Retorno: string alterada.
  • 23. Exemplo de trim, ltrim e rtim <?PHP echo(trim(' Brasil penta campeao ').'<BR>'); // Resultado: _Brasil penta campeao_ echo(ltrim(' Brasil penta campeao ').'<BR>'); // Resultado: _Brasil penta campeao _ echo(rtrim(' Brasil penta campeao ').'<BR>'); // Resultado: _ Brasil penta campeao_ ?>
  • 24. ARRAY
  • 25. Imprimindo um array O comando print_r é utilizado para exibir todo o conteúdo do array passado como parâmetro a essa função. O formato da impressão do array pelo comando print_r é de exibir sempre a chave e o valor correspondente de cada elemento do array. (mixed) print_r(<array>); Retorno: imprime no html as chaves e valores contidos no array.
  • 26. Exemplo imprimindo um array <?PHP $meuArray = array('alpha' => 'valor1', 2, 'tres'); $meuArray[5] = 'Novo valor'; print_r($meuArray); // Resultado: // Array ( [alpha] => valor1 [0] => 2 [1] => tres [5] => Novo valor ) ?>
  • 27. Arrays Multidimensionais <?PHP $arrayAlpha = array('a', 'b', 'c'); $arrayBeta = array('d', 'e', 'f'); $arrayMulti = array($arrayAlpha, $arrayBeta); echo($arrayMulti[0][2].'<BR>'); // Resultado: c echo($arrayMulti[1][2].'<BR>'); // Resultado: f ?>
  • 28. Removendo elementos do array O comando unset destrói a posição do array em questão ou variável informada. (void) unset(<variavel_ou_posicao_do_array>); Retorno: void.
  • 29. Exemplo do unset <?PHP $meuArray = array('a', 'b', 'c', 'd', 'e'); unset($meuArray[3]); print_r($meuArray); // Resultado: // Array ( [0] => a [1] => b [2] => c [4] => e ) ?>
  • 30. Obtendo número de elementos do array É possível obter o número de elementos existentes em um array por meio das funções count e sizeof. (int) count(<variavel>); (int) sizeof(<variavel>); Retorno: número de elementos da variável ou array.
  • 31. Exemplo do count e sizeof <?PHP $meuArray = array('a', 'b', 'c', 'd', 'e'); echo (count($meuArray).'<BR>'); // Resultado: 5 unset($meuArray[0]); echo (sizeof($meuArray).'<BR>'); // Resultado: 4 ?>
  • 32. Navegação nos arrays (mixed) current(<array>) (mixed) key(<array>) (mixed) prev(<array>) (mixed) next(<array>) (mixed) end(<array>) (mixed) reset(<array>)
  • 33. Retorno Descrição current Retorna o elemento da posição atual do array. key Retorna a chave da posição atual do array. next Avança o índice do array para a próxima posição e retorna o valor do elemento na posição em questão. prev Retrocede o índice do array para a posição anterior e retorna o valor do elemento na posição em questão. end Avança o índice do array para a última posição e retorna o valor do elemento na posição em questão. reset Retrocede o índice do array para a primeira posição e retorna o valor do elemento na posicão em questão
  • 34. Exemplo navegação em arrays <?PHP $meuArray = array('a', 'b', 'c', 'd', 'e', 'f', 'g'); foreach($meuArray as $valor) { echo($valor." "); } // Resultado: a b c d e f g end($meuArray); prev($meuArray); prev($meuArray); prev($meuArray); next($meuArray); echo(key($meuArray)); // Resultado: 4 echo(current($meuArray)); // Resultado: e ?>
  • 35. array_push e array_pop o array_push insere um valor no final de um arrray e o array_pop remove o último elemento de um array. (int) array_push(<array>,<elemento>); (mixed) array_pop(<variavel>); Retorno Descrição array_push Retorna o novo número de elementos do array. array_pop Retornao último elemento do array, eliminando-o do array.
  • 36. Exemplo array_push e array_pop <?PHP $minhaPilha = array(); array_push($minhaPilha, 'a'); array_push($minhaPilha, 'b'); echo(array_push($minhaPilha, 'c').'<BR>'); // Resultado: 3 echo(array_pop($minhaPilha).'<BR>'); // Resultado: c print_r($minhaPilha); // Resultado: Array ( [0] => a [1] => b ) ?>
  • 37. Enviar todos os elementos de um array para uma função com array_map Em determinados momentos pode ser necessário que todos os elementos de um array sejam enviados para uma função específica. A função array_map recebe um array como parâmetro e uma função e automatiza o envio de todos os elementos do array para tal instrução. (array) array_map(<nome_da_funcao>,<array>); Retorno: um novo array com os retornos da função para cada posição do array enviado como parâmetro.
  • 38. Exemplo array_map <?PHP function calcularDobro($numero) { return $numero * 2; } $meuArray = array(1, 2, 3); $arrayAlterado = array_map('calcularDobro', $meuArray); print_r($arrayAlterado); // Resultado: Array ( [0] => 2 [1] => 4 [2] => 6 ) ?>
  • 39. Achar uma chave com array_key e array_key_exists O comando array_keys retorna um novo array, em que cada posição é uma chave disponível no array mencionado no comando. Pode ser útil em situações nas quais não sabemos quais os elementos e quais chaves existem em um array. (array) array_keys(<array>);
  • 40. Achar uma chave com array_key e array_key_exists Caso o você tenha uma determinada chave e precise descobrir se um array em particular contém um registro atribuído a essa chave, é possivel utilizar a função array_key_exists (bool) array_key_exists(<chave>,<array>);
  • 41. Exemplo com array_key e array_key_exists <?PHP $meuArray = array('alfa' => 0, 1 => 1, 'dois' => 2); print_r(array_keys($meuArray)); // Resultado: Array ( [0] => alfa [1] => 1 [2] => dois ) echo(array_key_exists('dois', $meuArray)); // Resultado: 1 ?>
  • 42. Localizar valores em arrays com array_search e in_array Para saber se um determinado valor está contido em um array utilie o array_search (mixed) array_search(<elemento>,<array>); Retorno: retorna a chave referente ao valor procurado, no caso de encontrá-lo se não retorna FALSE.
  • 43. Exemplo array_search e in_array <?PHP $meuArray = array('aaa', 'bb', 'Chave do c' => 'c', 'ddd'); echo(array_search('aaa', $meuArray).'<BR>'); // Resultado: 0 echo(array_search('c', $meuArray).'<BR>'); // Resultado: Chave do c echo(array_search('nenhum', $meuArray).'<BR>'); // Resultado: <vazio> ?> Obs. Similar a função array_search, o comando in_array retorna TRUE caso encontre e FALSE caso não.
  • 44. Misturar e ordenar arrays É possível ordenar arrays por ordem crescente(sort) e decrescente (rsort), bem como podemos embaralhá-lo(shuffle). (bool) sort(<array>); (bool) rsort(<array>); (bool) shuffle(<array>);
  • 45. Exemplo misturar e ordenar arrays <?PHP $meuArray = array('a', 1, 'b', 'c', 2, '0', '4'); sort($meuArray); print_r($meuArray); // Resultado: // Array ( [0] => 0 [1] => 4 [2] => a [3] => b [4] => c [5] => 1 [6] => 2 ) echo('<BR>'); rsort($meuArray); print_r($meuArray); // Resultado: // Array ( [0] => 2 [1] => 1 [2] => c [3] => b [4] => a [5] => 4 [6] => 0 ) echo('<BR>'); shuffle($meuArray); print_r($meuArray); // Resultado: // Array ( [0] => c [1] => 0 [2] => 4 [3] => a [4] => 1 [5] => 2 [6] => b ) ?>
  • 47. $_POST e $_GET As supervariáves $_POST e $_GET são arrays que representam os dados enviados ao servidor pelo método post e get. Estas variáveis estão diponíveis em todas as partes em que forem requisitadas. $_REQUEST A supervariável $REQUEST reúne o conteúdo das supervariáveis $_POST, $_GET e $COOKIES. A vantagem é que, independete do método de envio dos dados de um formulário, é possível acessar o campo por seu nome.
  • 49. Fomulário <HTML> <HEAD> <TITLE>EXEMPLO - Formul·rios</TITLE> </HEAD> <BODY> <FORM method="POST" action="?action=save" name="meuForm"> Nome: <INPUT type=TEXT name=CAMPO_NOME> <BR>Idade: <INPUT type=TEXT name=CAMPO_IDADE> <BR>E-mail: <INPUT type=TEXT name=CAMPO_EMAIL> <BR>Sexo: <INPUT type=RADIO name=CAMPO_SEXO value="M">Masculino <INPUT type=RADIO name=CAMPO_SEXO value="F">Feminino <BR>Curso: <SELECT name=CAMPO_CURSO> <OPTION selected>Selecione...</OPTION> <OPTION>CiÍncia da ComputaÁ„o</OPTION> <OPTION>Bacharelado em Inform·tica</OPTION> <OPTION>Engenharia da ComputaÁ„o</OPTION> </SELECT> <BR>Conhecimentos: <INPUT type=CHECKBOX name=CAMPO_CONHECIMENTOS[] value="Word">Microsoft Word <INPUT type=CHECKBOX name=CAMPO_CONHECIMENTOS[] value="HTML">HTML <INPUT type=CHECKBOX name=CAMPO_CONHECIMENTOS[] value="JS">JavaScript <INPUT type=CHECKBOX name=CAMPO_CONHECIMENTOS[] value="PHP">PHP <BR> <INPUT type=RESET value="Limpar"> <INPUT type=SUBMIT value="Enviar"> </FORM> </BODY> </HTML>
  • 50. Validação de texto $tamanho_nome = strlen($_POST["CAMPO_NOME"]); if($tamanho_nome < 5 || $tamanho_nome > 64) { echo("O campo 'Nome' deve ter entre 5 e 64 caracteres.".$tamanho_nome); $formValid = FALSE; }
  • 51. Validação número $idade = (int)$_POST["CAMPO_IDADE"]; if(is_NaN($idade) || $idade < 4 || $idade > 120) { echo("O campo 'Idade' deve ter preenchido corretamente."); $formValid = FALSE; }
  • 52. Validação email $email = $_POST["CAMPO_EMAIL"]; $regex = "/^[^0-9][A-z0-9_]+([.][A-z0-9_]+)*[@][A-z0-9_]+([.][A-z0- 9_]+)*[.][A-z]{2,4}$/"; if(!preg_match($regex, $email)) { echo("O campo 'E-mail' deve ter preenchido corretamente."); $formValid = FALSE; }
  • 53. Validação de radio $sexo = $_POST["CAMPO_SEXO"]; if($sexo != "M" && $sexo != "F") { echo("O campo 'Sexo' deve ser preenchido."); $formValid = FALSE; }
  • 54. Validação lista de seleção $curso = $_POST["CAMPO_CURSO"]; if($curso == "" || $curso == "Selecione...") { echo("O campo 'Curso' deve ser preenchido."); $formValid = FALSE; }