Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Programação para WEBRegis Pires Magalhãesregispiresmag@gmail.comPHP: PrimeirosPassos
“Olá, Mundo” em PHP<html><head><title>Exemplo</title></head><body><?phpecho "Olá, Mundo!";?></body></html>
Informações sobre o PHP<?phpphpinfo();?>
Delimitadores de CódigoO código deve estar contido entre osdelimitadores:<?php// ...?>
ComentáriosDe linha:De bloco:<?php// echo "a";# echo "a";?><?php/* echo "a";echo "b"; */?>
Comandos de Saídaecho – Exibe uma ou mais Stringsvoid echo ( string $arg1 [, string $...] )Sem parênteses: pode ter vários...
Comandos de Saídaprint – Mostra uma stringint print ( string $arg )Só permite um único parâmetroCom ou sem parêntesesRetor...
Comandos de saídaConcatenação de strings<?phpecho a, b, c, <br/>;echo a . b . c . <br/>;echo(a . b . c . <br/>);print a . ...
VariáveisSempre precedidas de $Case sensitive: $nome != $Nome<?php$nome = "João";$sobrenome = "da Silva";echo Sobrenome: $...
Variáveis<?php$a = 10;$A = 20;echo "O valor de $a é $a e o de $A é $A";?>
Variáveis<?php$a = 5;$b = $a;$b = 10;echo $a; // ???echo $b; // ????>
Variáveis<?php$a = 5;$b = &$a;$b = 10;echo $a; // ???echo $b; // ????>
Variáveis<html><head><title>CEFET-PI PHB</title></head><body><?php$data_de_hoje = date ("d/m/Y H:i:s",time());?><p>Data e ...
Variáveis<html><head><title>CEFET-PI PHB</title></head><body><?php$base = 10;$altura = 20;$area = $base * $altura;echo "Ba...
Variáveis<?php$a = PHP;echo $a;unset($a);echo $a;?>unset – destrói a variável especificada.
Valor e Referência<?php$p1 = João;$p2 = $p1;$p1 = Maria;echo "$p1<br/>";echo "$p2<br/>";?><?php$p1 = João;$p2 = &$p1;$p1 =...
Variáveis Geradas Dinamicamente$$ - permite utilizar o valor de uma variável paraservir como identificador para outra que ...
Saída de dadosprint_r – exibe informações sobre uma variávelvar_dump - Mostra informações mais detalhadas sobrea variável,...
Tipo Booleano<?php$exibir_nome = TRUE;if ($exibir_nome) {echo José da Silva<br/>;}$exibir_nome = false;if ($exibir_nome) {...
Tipo Booleano<?php$umidade = 91;$vai_chover = ($umidade > 90);if ($vai_chover) {echo Está chovendo;}?>
Tipo BooleanoValores considerados falsos:Inteiro 0Ponto flutuante 0.0Uma string vazia "" ou "0"Um array vazioUm objeto sem...
Tipos Numéricos<?php// número decimal$a = 1234;// um número negativo$a = -123;// número octal (83 em decimal)$a = 0123;// ...
Tipos Numéricos<?php$a = 0x1A; // 26 em decimal$b = -16;$c = $a + $b;echo "$a + $b = $c"?>
Tipos Numéricos - Operações<?php$x = 10;echo($x + 5);echo "<br/>";echo($x - 5);echo "<br/>";echo($x * 5);echo "<br/>";echo...
Operadores relacionais<, >, <=, >=, ==, !=, ====== (idêntico a)Verdadeiro se os operandos forem iguais e domesmo tipo.
Tipos numéricosFunções:floorceilroundabsminmaxrand / mt_rand (melhorado)
mt_rand<?phpecho mt_rand() . " ";echo mt_rand() . " ";echo mt_rand(5, 15);?>
Tipo String<?php$a = teste;$b = 1;echo Isto é um $a $b<br/>;echo "Isto é um $a $b<br/>";?>
Tipo String<?php$a = Programação para Web;echo $a,<br/>;echo Tamanho: .strlen($a),<br/>;echo Caixa Alta: .strtoupper($a),<...
Tipo StringHeredocOutra maneira para delimitar strings é utilizando asintaxe heredoc ("<<<").<?php$nome = "Maria";$str = <...
Tipo StringFormatação de Númerosnumber_formatstring number_format (float $numero [, int $decimais])string number_format(fl...
Tipo StringAlgumas funções:strlen – tamanhostrposstrcmpstrcasecmp – case insensitivestrstr / stristr (case insensitive)str...
Tipo Array<?php$carros = array(Palio, Corsa, Gol);echo $carros[1];?><?php$carros[] = Palio;$carros[] = Corsa;$carros[] = G...
Tipo Array (Associativo)<?php$estados = array(PI => Teresina,CE => Fortaleza,MA => São Luís);echo "$estados[PI]<br/>";echo...
Tipo Array<?php$vetor = array (10,50,100,150,200);echo "$vetor[2] <br/>";$vet = array (1, 2, 3, nome=>Joaquim);echo "$vet[...
Tipo Array<?php$est = array(Ceará => Fortaleza,Piauí => Teresina);echo "A capital do Piauí é $est[Piauí].<br/>";echo "A ca...
Dividindo uma String em Array<?php$str =  Esta é a minha casa2. ;$str .=  Oi, ela é muito bem dividida!!! ;$array = preg_s...
Tipo ArrayFunções:arrayis_arraycount / sizeofin_arrayIsSet($array[$key])unset -> remover elementoscurrent ou posnextprevre...
Laço - foreach<?php$vetor = array(banana,laranja,abacaxi,caju);foreach ($vetor as $item) {echo "$item <br/>";}?>
Escopo de variáveis<?php$num = 5000;function testa_escopo1() {$num += 5;echo "$num <br/>";}echo "$num <br/>";testa_escopo1...
Escopo de variáveis<?php$num = 5000;function testa_escopo1() {global $num;$num += 5;echo "$num <br/>";}echo "$num <br/>";t...
Escopo de variáveis<?phpfunction soma($a) {global $b;$b = $a + 5;}soma(10);echo "o valor de b é $b";?>
ConstantesValores predefinidos que não mudam aolongo da execução.A função define serve para definir umaconstante.bool defi...
Constantes<?phpdefine(CONSTANTE, Alô Mundo.);echo CONSTANTE . <br/>;echo Constante . <br/>;define(SAUDACAO, Alô Você.,TRUE...
ConstantesCONSTANTE DESCRIÇÃOTRUE Valor verdadeiro (utilizado para comparação).FALSE Valor falso.__FILE__ Contém o nome do...
Constantes<?phpecho Arquivo:  . __FILE__ . <br/>;echo Linha:  . __LINE__ . <br/>;echo Versão do PHP:  . PHP_VERSION . <br/...
Desvio<?php$a = True;if ($a) {echo Verdadeiro;} else {echo Falso;}?>
Desvio<?php$idade = 15;if ($idade < 18) {echo Não pode entrar;} else {echo Pode entrar;}?>
Desvio<?php$d = getdate();switch ($d[wday]) {case 0:$dia = Domingo; break;case 1:$dia = Segunda; break;case 2:$dia = Terça...
Laço contado<?phpecho Números ímpares de 1 a 100: <br/>;for ($i = 1; $i < 100; $i += 2) {echo "$i ";}?>
Laço condicional<?phpecho Números entre 1 e 10: <br/>;$i = 1;while($i <= 10) {echo "$i ";$i++;}?>
Laço condicional<?phpecho Números entre 1 e 10: <br/>;$i = 1;do {echo "$i ";$i++;} while($i <= 10)?>
Sintaxe alternativaExiste uma sintaxe alternativa para algumasestruturas de controle:if, while, for, foreach e switch.A...
Sintaxe alternativa<?phpif ($a == 5):echo "a igual a 5";echo "...";elseif ($a == 6):echo "a igual a 6";echo "!!!";else:ech...
Sintaxe alternativa...<ul><?php foreach($valores as $elemento): ?><li><?= $elemento ?></li><?php endforeach; ?></ul>...
Função<?phpfunction media($a, $b) {return ($a + $b) / 2;}echo A média entre 2 e 7 é:  . media(2,7);?>
Função<?phpfunction area_circulo($raio) {return M_PI * pow($raio, 2);}$meuRaio = 5;$area = area_circulo($meuRaio);echo "Ra...
Função<?phpfunction escreve_texto() {echo Já sei criar funções em PHP;}escreve_texto();?>
FunçãoO caracter @ poder ser usado imediatamente antes donome da função para suprimir possíveis mensagens deerro.<?phpfun...
include ou requireAmbos incluem e avaliam o arquivo informado.A ausência do arquivo especificado no require,interrompe o...
include_once ou require_onceSimilar a include e require, mas se o arquivojá tiver sido incluído, a inclusão não será feit...
Dados entre páginasHTTP não possui estadoCada requisição é única e não sabe nada sobre asdemais.Não tem memória.Cada requi...
Dados entre páginasA técnica mais simples de passar dados entre páginasusa os métodos GET e POST do protocolo HTTP.GET – d...
Dados entre páginasGET é muito usado para navegação (links).POSTPOST é a forma ideal de transmitir dados deformulários;Van...
Dados entre páginasResumindo:Usar POST em formulários;Usar GET para navegação e buscas.
Dados entre páginas - GET<!-- formulario.php --><html><head><title>PHP Teste</title></head><body><form action="processa.ph...
Dados entre páginas - GET<!-- processa.php --><html><head><title>PHP Teste</title></head><body>Oi <?php echo $_GET["nome"]...
Dados entre páginas - POST<!-- formulario.php --><html><head><title>PHP Teste</title></head><body><form action="processa.p...
Dados entre páginas - POST<!-- processa.php --><html><head><title>PHP Teste</title></head><body>Oi <?php echo $_POST["nome...
Usando uma única página<html><head><title>CEFET-PI PHB</title></head><body><form action="nome_idade.php" method="POST"><p>...
Dados entre páginas_REQUESTContém um array associativo com os conteúdos de$_GET, $_POST e $_COOKIE.<form action="foo.php" ...
Variáveis HTTP$_SERVER$_ENV$_COOKIE$_GET$_POST$_FILES$_REQUEST$_SESSION$GLOBALS$HTTP_RAW_POST_DATA$http_response_header
Upcoming SlideShare
Loading in …5
×

Prog web 02-php-primeiros-passos

794 views

Published on

  • Be the first to comment

  • Be the first to like this

Prog web 02-php-primeiros-passos

  1. 1. Programação para WEBRegis Pires Magalhãesregispiresmag@gmail.comPHP: PrimeirosPassos
  2. 2. “Olá, Mundo” em PHP<html><head><title>Exemplo</title></head><body><?phpecho "Olá, Mundo!";?></body></html>
  3. 3. Informações sobre o PHP<?phpphpinfo();?>
  4. 4. Delimitadores de CódigoO código deve estar contido entre osdelimitadores:<?php// ...?>
  5. 5. ComentáriosDe linha:De bloco:<?php// echo "a";# echo "a";?><?php/* echo "a";echo "b"; */?>
  6. 6. Comandos de Saídaecho – Exibe uma ou mais Stringsvoid echo ( string $arg1 [, string $...] )Sem parênteses: pode ter vários parâmetrosCom parênteses: somente um parâmetro<?phpecho a, b, c, <br/>;echo(a<br/>);?>
  7. 7. Comandos de Saídaprint – Mostra uma stringint print ( string $arg )Só permite um único parâmetroCom ou sem parêntesesRetorna sempre 1<?phpprint a<br/>;print(a<br/>);?>
  8. 8. Comandos de saídaConcatenação de strings<?phpecho a, b, c, <br/>;echo a . b . c . <br/>;echo(a . b . c . <br/>);print a . b . c . <br/>;print(a . b . c . <br/>);?>
  9. 9. VariáveisSempre precedidas de $Case sensitive: $nome != $Nome<?php$nome = "João";$sobrenome = "da Silva";echo Sobrenome: $sobrenome - Nome: $nome<br/>;echo Sobrenome: . $sobrenome . - Nome: . $nome . <br/>;echo "Sobrenome: $sobrenome - Nome: $nome<br/>";echo "Nome Completo: $nome $sobrenome<br/>";?>
  10. 10. Variáveis<?php$a = 10;$A = 20;echo "O valor de $a é $a e o de $A é $A";?>
  11. 11. Variáveis<?php$a = 5;$b = $a;$b = 10;echo $a; // ???echo $b; // ????>
  12. 12. Variáveis<?php$a = 5;$b = &$a;$b = 10;echo $a; // ???echo $b; // ????>
  13. 13. Variáveis<html><head><title>CEFET-PI PHB</title></head><body><?php$data_de_hoje = date ("d/m/Y H:i:s",time());?><p>Data e hora no servidor:<?php echo $data_de_hoje; ?></p></body></html>
  14. 14. Variáveis<html><head><title>CEFET-PI PHB</title></head><body><?php$base = 10;$altura = 20;$area = $base * $altura;echo "Base: $base - Altura: $altura - Área: $area";?></body></html>
  15. 15. Variáveis<?php$a = PHP;echo $a;unset($a);echo $a;?>unset – destrói a variável especificada.
  16. 16. Valor e Referência<?php$p1 = João;$p2 = $p1;$p1 = Maria;echo "$p1<br/>";echo "$p2<br/>";?><?php$p1 = João;$p2 = &$p1;$p1 = Maria;echo "$p1<br/>";echo "$p2<br/>";?>
  17. 17. Variáveis Geradas Dinamicamente$$ - permite utilizar o valor de uma variável paraservir como identificador para outra que écriada.<?php$nome = "João";$futuro_identificador = "autor";$$futuro_identificador = $nome;echo "O nome do autor é ";echo $autor;?>
  18. 18. Saída de dadosprint_r – exibe informações sobre uma variávelvar_dump - Mostra informações mais detalhadas sobrea variável, inclusive sobre tipos.<?php$a = array (a => abacaxi, b => banana,c => array (x, y, z));print_r ($a);?><?php$a = array (1, 2, array ("a", "b", "c"));var_dump ($a);$b = 3.1;$c = TRUE;var_dump($b,$c);?>
  19. 19. Tipo Booleano<?php$exibir_nome = TRUE;if ($exibir_nome) {echo José da Silva<br/>;}$exibir_nome = false;if ($exibir_nome) {echo Maria da Silva<br/>;}?>
  20. 20. Tipo Booleano<?php$umidade = 91;$vai_chover = ($umidade > 90);if ($vai_chover) {echo Está chovendo;}?>
  21. 21. Tipo BooleanoValores considerados falsos:Inteiro 0Ponto flutuante 0.0Uma string vazia "" ou "0"Um array vazioUm objeto sem elementosTipo NULL
  22. 22. Tipos Numéricos<?php// número decimal$a = 1234;// um número negativo$a = -123;// número octal (83 em decimal)$a = 0123;// número hexadecimal (26 em decimal)$a = 0x1A;// ponto flutuante$a = 1.234;// notação científica$a = 4e23;?>
  23. 23. Tipos Numéricos<?php$a = 0x1A; // 26 em decimal$b = -16;$c = $a + $b;echo "$a + $b = $c"?>
  24. 24. Tipos Numéricos - Operações<?php$x = 10;echo($x + 5);echo "<br/>";echo($x - 5);echo "<br/>";echo($x * 5);echo "<br/>";echo($x / 5);echo "<br/>";echo($x % 8);?>
  25. 25. Operadores relacionais<, >, <=, >=, ==, !=, ====== (idêntico a)Verdadeiro se os operandos forem iguais e domesmo tipo.
  26. 26. Tipos numéricosFunções:floorceilroundabsminmaxrand / mt_rand (melhorado)
  27. 27. mt_rand<?phpecho mt_rand() . " ";echo mt_rand() . " ";echo mt_rand(5, 15);?>
  28. 28. Tipo String<?php$a = teste;$b = 1;echo Isto é um $a $b<br/>;echo "Isto é um $a $b<br/>";?>
  29. 29. Tipo String<?php$a = Programação para Web;echo $a,<br/>;echo Tamanho: .strlen($a),<br/>;echo Caixa Alta: .strtoupper($a),<br/>;echo Número: .str_pad(57,6,0,STR_PAD_LEFT);?>str_padpreenche uma string com outra string.
  30. 30. Tipo StringHeredocOutra maneira para delimitar strings é utilizando asintaxe heredoc ("<<<").<?php$nome = "Maria";$str = <<<FIMOi, $nome. Este é um exemplo de uma<br/>string distribuída em várias linhas<br/>utilizando a sintaxe heredoc.FIM;echo $str;?>
  31. 31. Tipo StringFormatação de Númerosnumber_formatstring number_format (float $numero [, int $decimais])string number_format(float $numero, int $decimais, string$ponto_decimal, string $separador_milhares)<?php$numero = 1234.56;// Notação Brasileira$numero_formatado = number_format($numero, 2, ,, .);// 1.234,56echo "Número Formatado: $numero_formatado<br/>";?>
  32. 32. Tipo StringAlgumas funções:strlen – tamanhostrposstrcmpstrcasecmp – case insensitivestrstr / stristr (case insensitive)strchrsubstrchop ou rtrimltrimtrimstr_replacesubstr_replacestrtolowerstrtoupperucfirstucwordsstrrevstr_padpreg_splitnumber_format
  33. 33. Tipo Array<?php$carros = array(Palio, Corsa, Gol);echo $carros[1];?><?php$carros[] = Palio;$carros[] = Corsa;$carros[] = Gol;echo $carros[1];?>ou
  34. 34. Tipo Array (Associativo)<?php$estados = array(PI => Teresina,CE => Fortaleza,MA => São Luís);echo "$estados[PI]<br/>";echo "{$estados[CE]}<br/>";echo "$estados[MA]<br/>";?>
  35. 35. Tipo Array<?php$vetor = array (10,50,100,150,200);echo "$vetor[2] <br/>";$vet = array (1, 2, 3, nome=>Joaquim);echo "$vet[0] <br/>";echo $vet[nome];?>
  36. 36. Tipo Array<?php$est = array(Ceará => Fortaleza,Piauí => Teresina);echo "A capital do Piauí é $est[Piauí].<br/>";echo "A capital do Piauí é {$est[Piauí]}.<br/>";echo "A capital do Piauí é {$est[Piauí]}.<br/>";echo "A capital do Piauí é " . $est[Piauí] . ".<br/>";?>Uso de chaves em Strings
  37. 37. Dividindo uma String em Array<?php$str = Esta é a minha casa2. ;$str .= Oi, ela é muito bem dividida!!! ;$array = preg_split(/[W]+/, $str, -1,PREG_SPLIT_NO_EMPTY);$tamanho = count($array);echo "Número de palavras: $tamanho<br/>";echo "Palavras: <br/>";foreach($array as $palavra) {echo "$palavra<br/>";}?>
  38. 38. Tipo ArrayFunções:arrayis_arraycount / sizeofin_arrayIsSet($array[$key])unset -> remover elementoscurrent ou posnextprevresetendeachmaxarray_fliparray_reverseshufflearray_padarray_slice – extrai parte do arrayarray_splice – remove e subst. parte doarray.asort – ordena e mantém assoc.arsortksortkrsort
  39. 39. Laço - foreach<?php$vetor = array(banana,laranja,abacaxi,caju);foreach ($vetor as $item) {echo "$item <br/>";}?>
  40. 40. Escopo de variáveis<?php$num = 5000;function testa_escopo1() {$num += 5;echo "$num <br/>";}echo "$num <br/>";testa_escopo1();?>
  41. 41. Escopo de variáveis<?php$num = 5000;function testa_escopo1() {global $num;$num += 5;echo "$num <br/>";}echo "$num <br/>";testa_escopo1();?>
  42. 42. Escopo de variáveis<?phpfunction soma($a) {global $b;$b = $a + 5;}soma(10);echo "o valor de b é $b";?>
  43. 43. ConstantesValores predefinidos que não mudam aolongo da execução.A função define serve para definir umaconstante.bool define(string $name, mixed $value [,bool $case_insensitive])O nome da constante é dado pelo parâmetro $name; o valoré dado por $value.Se o terceiro parâmetro ($case_insensitive) for TRUE, aconstante será definida como case-insensitive. O padrãoé case-sensitive.
  44. 44. Constantes<?phpdefine(CONSTANTE, Alô Mundo.);echo CONSTANTE . <br/>;echo Constante . <br/>;define(SAUDACAO, Alô Você.,TRUE);echo SAUDACAO . <br/>;echo Saudacao . <br/>;?>
  45. 45. ConstantesCONSTANTE DESCRIÇÃOTRUE Valor verdadeiro (utilizado para comparação).FALSE Valor falso.__FILE__ Contém o nome do script que está sendo executado.__LINE__ Contém o número da linha do script que está sendo executado.PHP_VERSION Contém a versão corrente do PHP.PHP_OS Nome do sistema operacional no qual o PHP está rodando.E_ERROR Exibe um erro ocorrido em um script. A execução é interrompida.E_WARNING Exibe uma mensagem de aviso do PHP. A execução não pára.E_PARSE Exibe um erro de sintaxe. A execução é interrompida.E_NOTICE Mostra que ocorreu algo, não necessariamente um erro.A execução não pára.Algumas constantes predefinidas:
  46. 46. Constantes<?phpecho Arquivo: . __FILE__ . <br/>;echo Linha: . __LINE__ . <br/>;echo Versão do PHP: . PHP_VERSION . <br/>;echo Sistema Operacional: . PHP_OS . <br/>;?>
  47. 47. Desvio<?php$a = True;if ($a) {echo Verdadeiro;} else {echo Falso;}?>
  48. 48. Desvio<?php$idade = 15;if ($idade < 18) {echo Não pode entrar;} else {echo Pode entrar;}?>
  49. 49. Desvio<?php$d = getdate();switch ($d[wday]) {case 0:$dia = Domingo; break;case 1:$dia = Segunda; break;case 2:$dia = Terça; break;case 3:$dia = Quarta; break;case 4:$dia = Quinta; break;case 5:$dia = Sexta; break;case 6:$dia = Sábado; break;default:$dia = Erro;}echo "Hoje é $dia";?>
  50. 50. Laço contado<?phpecho Números ímpares de 1 a 100: <br/>;for ($i = 1; $i < 100; $i += 2) {echo "$i ";}?>
  51. 51. Laço condicional<?phpecho Números entre 1 e 10: <br/>;$i = 1;while($i <= 10) {echo "$i ";$i++;}?>
  52. 52. Laço condicional<?phpecho Números entre 1 e 10: <br/>;$i = 1;do {echo "$i ";$i++;} while($i <= 10)?>
  53. 53. Sintaxe alternativaExiste uma sintaxe alternativa para algumasestruturas de controle:if, while, for, foreach e switch.A forma básica é mudar o sinal de abertura de blocopara dois-pontos (:) e o sinal de fechamento paraendif;, endwhile;, endfor;, endforeach; ouendswitch;, respectivamente.
  54. 54. Sintaxe alternativa<?phpif ($a == 5):echo "a igual a 5";echo "...";elseif ($a == 6):echo "a igual a 6";echo "!!!";else:echo "a não é nem 5 nem 6";endif;?>
  55. 55. Sintaxe alternativa...<ul><?php foreach($valores as $elemento): ?><li><?= $elemento ?></li><?php endforeach; ?></ul>...
  56. 56. Função<?phpfunction media($a, $b) {return ($a + $b) / 2;}echo A média entre 2 e 7 é: . media(2,7);?>
  57. 57. Função<?phpfunction area_circulo($raio) {return M_PI * pow($raio, 2);}$meuRaio = 5;$area = area_circulo($meuRaio);echo "Raio: $meuRaio<br/>";echo "Área: $area<br/>";?>
  58. 58. Função<?phpfunction escreve_texto() {echo Já sei criar funções em PHP;}escreve_texto();?>
  59. 59. FunçãoO caracter @ poder ser usado imediatamente antes donome da função para suprimir possíveis mensagens deerro.<?phpfuncao_inexistente();?><?php@funcao_inexistente();?>
  60. 60. include ou requireAmbos incluem e avaliam o arquivo informado.A ausência do arquivo especificado no require,interrompe o processamento e produz um FatalError.
  61. 61. include_once ou require_onceSimilar a include e require, mas se o arquivojá tiver sido incluído, a inclusão não será feitanovamente.
  62. 62. Dados entre páginasHTTP não possui estadoCada requisição é única e não sabe nada sobre asdemais.Não tem memória.Cada requisição resulta na execução de um processoque é finalizado logo após sua execução.Para uma página mandar informações para uma outrahá as seguintes opções:Formulários HTMLCookiesSessões
  63. 63. Dados entre páginasA técnica mais simples de passar dados entre páginasusa os métodos GET e POST do protocolo HTTP.GET – dados são transmitidos na própria URL.Vantagem: pode ser adicionado aos favoritos.Exemplo: pesquisa no Google...http://www.google.com.br/search?hl=pt-BR&q=cefet&btnG=Pesquisar&meta=Desvantagens:Não seguro para informações confidenciais como senha;Requisições GET ficam gravadas no log do servidor e no histórico docliente;O tamanho da URL é limitado, ficando inviável enviar muita informaçãovia GET.
  64. 64. Dados entre páginasGET é muito usado para navegação (links).POSTPOST é a forma ideal de transmitir dados deformulários;Vantagens:Mais seguro que GET, pois a informação não fica tão visível;Permite a passagem de grande quantidade de dados;Desvantagens:Não pode ser adicionado aos favoritos;Os resultados podem ser perdidos se o usuário navegar pelosbotões voltar e avançar no navegador;
  65. 65. Dados entre páginasResumindo:Usar POST em formulários;Usar GET para navegação e buscas.
  66. 66. Dados entre páginas - GET<!-- formulario.php --><html><head><title>PHP Teste</title></head><body><form action="processa.php" method="GET">Seu nome <input type="text" name="nome" />Sua idade: <input type="text" name="idade" /><input type="submit"></form></body></html>
  67. 67. Dados entre páginas - GET<!-- processa.php --><html><head><title>PHP Teste</title></head><body>Oi <?php echo $_GET["nome"]; ?>.Você tem <?php echo $_GET["idade"]; ?> anos.</body></html>
  68. 68. Dados entre páginas - POST<!-- formulario.php --><html><head><title>PHP Teste</title></head><body><form action="processa.php" method="POST">Seu nome <input type="text" name="nome" />Sua idade: <input type="text" name="idade" /><input type="submit"></form></body></html>
  69. 69. Dados entre páginas - POST<!-- processa.php --><html><head><title>PHP Teste</title></head><body>Oi <?php echo $_POST["nome"]; ?>.Você tem <?php echo $_POST["idade"]; ?> anos.</body></html>
  70. 70. Usando uma única página<html><head><title>CEFET-PI PHB</title></head><body><form action="nome_idade.php" method="POST"><p>Seu nome <input type="text" name="nome"value="<?php echo $_POST[nome] ?>"/></p><p>Sua idade: <input type="text" name="idade"value="<?php echo $_POST[idade] ?>"/></p><input type="submit"></form><?phpif (isset($_POST[nome])) {echo "Oi, {$_POST[nome]}.";echo "Você tem {$_POST[idade]} anos.";}?></body></html>
  71. 71. Dados entre páginas_REQUESTContém um array associativo com os conteúdos de$_GET, $_POST e $_COOKIE.<form action="foo.php" method="post">Nome: <input type="text" name="username" /><br />Email: <input type="text" name="email" /><br /><input type="submit" name="submit" value="Me aperte!" /></form><?phpecho $_POST[username];echo $_REQUEST[username];?>
  72. 72. Variáveis HTTP$_SERVER$_ENV$_COOKIE$_GET$_POST$_FILES$_REQUEST$_SESSION$GLOBALS$HTTP_RAW_POST_DATA$http_response_header

×