programaÇÃo para internet prof.: jean carlo mendes [email protected]

51
PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes [email protected] http://www.mendesnet.com.br

Upload: milton-vilarinho-bonilha

Post on 07-Apr-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PROGRAMAÇÃO PARA INTERNETProf.: Jean Carlo [email protected]://www.mendesnet.com.br

Page 2: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP- O PHP é uma linguagem de script (do lado

servidor)

- É uma ferramenta poderosa para a criação de páginas web dinâmicas

- É gratuita, muito utilizada e uma alternativa eficiente frente a seus concorrentes

Page 3: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP- A primeira versão disponível para o usuário

surgiu em 1995 e ficou conhecida como Personal Home Page Tools. Atualmente: Hypertext Preprocessor

- Fornecia apenas ferramentas simples, como livro de visitas e contadores de acesso e outras pequenas funcionalidades

Page 4: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP- O próximo passo foi a criação do chamado

PHP/FI, que continha funcionalidades de interpretação e manipulação de formulários. FI (Form Interpreter).

Page 5: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP- Um arquivo PHP pode conter texto, HTML,

CSS, JavaScript e código PHP

- O código PHP é executado no servidor e o resultado é retornado ao navegador como HTML

Page 6: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

O que podemos fazer com PHP:- Gerar conteúdo dinâmico para as páginas- Criar, abrir, ler, escrever e apagar arquivos no

servidor- Capturar dados de formulários- Enviar e receber “cookies”- Adicionar, alterar, apagar dados em BD- Controlar acesso de usuários- Encriptar dados- Um código PHP, além de gerar HTML pode

gerar imagens, PDFs, vídeos, etc

Page 7: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP - Arquitetura- Para que o código PHP possa ser executado,

necessitamos de um servidor Web que consiga “rodar” este código;

- O servidor mais usado é o Apache.

- No nosso caso vamos utilizar uma ferramenta chamada WampServer (ou XAMPP) que concentra a instalação do WebServer Apache em conjunto com o SGBD MySQL

Page 8: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Sintaxe básica- O código PHP pode ser escrito “embutido”

no código HTML, para isto usamos os delimitadores de código, que são interpretados pelo servidor Web.

- O servidor então, saberá que o que está escrito dentro destes delimitadores é um código PHP.

Page 9: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Sintaxe básica<?php

//comandos?>

Page 10: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Hello World <!DOCTYPE html><html><head><title>Aprendendo PHP</title></head><body>

<?phpecho "Hello World!";?>

</body></html>

• Os comandos em PHP devem ser separados por ponto e vírgula

Page 11: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP

• Os comandos em PHP devem ser separados por ponto e vírgula

• O arquivo usualmente tem a extensão .php e deve ser salvo na pasta de documentos do Apache.

• No caso do WampServer esta pasta por padrão é: c:\Wamp\www, no caso do XAMPP a pasta é a htdocs

Page 12: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Hello World • Para testar e visualizar o resultado, basta acessar o endereço:• http://localhost/hello.php

• *** Se estiver em outra porta (computadores Windows geralmente já possuem o IIS sendo executado na porta 80, fazendo necessário que o Apache responda em outra porta)

• http://localhost:8086/hello.php

Page 13: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Hello World • O exemplo anterior, escreve o texto diretamente

• Podemos fazer o mesmo exemplo, usando uma variável

Page 14: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Hello World <!DOCTYPE html><html><head><title>Aprendendo PHP</title></head><body><?php$texto = "Primeiro Script";echo $texto;?></body></html>

Page 15: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Nomes de variáveis• Toda variável em PHP tem seu nome composto pelo caracter $ e uma string, que deve iniciar por uma letra ou o símbolo “_”.

• PHP é case sensitive, ou seja, as variáveis $vivas e $VIVAS são diferentes. Por isso é preciso ter muito cuidado ao definir os nomes das variáveis.

• (as palavras chaves do PHP não são case sensitives, ou seja, if é a mesma coisa que IF)

Page 16: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Nomes de variáveis• É bom evitar os nomes em maiúsculas, pois como veremos mais adiante o PHP já possui alguma variáveis pré-definidas cujos nomes são formados por letras maiúsculas.

• Não é obrigatória a declaração da variável antes de seu uso (e não há um comando para isto)

Page 17: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Comentários• Os comentários podem ser de linha e podem ser definidos por um # ou //

• <? echo “teste”; #isto é um teste ?>• <? echo “teste”; //este teste é similar ao anterior ?>

Page 18: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Comentários• Podemos ter também comentários de blocos (mais de uma linha)

<?echo “teste”; /* Isto é um comentário com maisde uma linha que funciona corretamente*/?>

Page 19: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Tipos de dados• Todas as variáveis em PHP se encaixam em oito tipos de dados disponíveis:

• Escalares:• Integer• Float• String• Boolean

Page 20: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Tipos de dados• Dados compostos:

• Array• Object (pode conter propriedades e métodos. Veremos mais sobre isto...)

• Tipos especiais:• Resource (contem uma referencia a um recurso externo, como um arquivo ou BD)

• Null

Page 21: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Tipos de dados• Loose Typing

• Uma variável é convertida (tipo) automaticamente dependendo do contexto onde ela é usada..

• Pode-se por exemplo, armazenar um Inteiro em uma variável e posteriormente armazenar um float, string...

• Pode-se descobrir o tipo de uma variável usando a função gettype()

Page 22: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Tipos de dados$test_var; // Declara $test_var sem inicializarecho gettype( $test_var ) . “ < br / > ” ; // Mostra “ NULL”$test_var = 15;echo gettype( $test_var ) . “ < br / > ” ; // Mostra “ integer”$test_var = 8. 23;echo gettype( $test_var ) . “ < br / > ” ; // Mostra “ double”$test_var = “ Hello, world! ”;echo gettype( $test_var ) . “ < br / > ” ; // Mostra “ string”

Page 23: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – teste específico de tipos...

Page 24: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Tipos de dadosPara se alterar o tipo de dados de uma variável, usa-se a função settype()

$test_var = 8.23;echo $test_var . "<br> " ; // Mostra "8. 2 3"settype( $test_var, "string" ) ;echo $test_var . " <br> " ; // Mostra "8. 2 3"settype( $test_var, "integer" ) ;echo $test_var . " <br> " ; // Mostra "8"settype( $test_var, "float" ) ;echo $test_var . " <br> " ; // Mostra "8"settype( $test_var, "boolean" ) ;echo $test_var . " <br> " ; // Mostra "1"?>

Page 25: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Tipos de dadosA alteração de tipo pode ser feita também por casting

<?php$test_var = 8.23;echo $test_var . " <br> " ; // Mostra " 8. 23"echo (string) $test_var . " <br> " ; // Mostra " 8. 23"echo (int) $test_var . " <br> " ; // Mostra " 8"echo (float) $test_var . " <br> " ; // Mostra " 8. 23"echo (boolean) $test_var . " <br> " ; // Mostra " 1"?>

Page 26: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operações aritméticas

Page 27: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operações de comparação

Page 28: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operações de comparação

Page 29: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Incremento/Decremento

Page 30: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operadores lógicosAs seguintes operações são avaliadas como true:

As seguintes operações são avaliadas como false:

Page 31: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operadores lógicosValores considerados false:

Page 32: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operadores lógicos

Page 33: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operadores lógicos

Page 34: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operadores de StringExiste apenas um operador de String em PHP que é o operador de concatenação, que é representado por um ponto (.)Não necessariamente os dois valores precisam ser strings. Caso um deles não seja uma String, este será convertido

Page 35: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Operadores de StringA concatenação pode ser feita pelo operador .=

Page 36: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – ConstantesPode-se declarar constantes em PHP (Seu valor é setado apenas uma vez...).Usa-se a palavra reservada “define”

Page 37: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Testando...Vamos criar o script abaixo e coloca-lo no servidor (o script irá mostrar as propriedades do círculo). Salvar como circulo.php

<?php$raio = 4;$diametro = $raio * 2;$circunferencia = M_PI * $diametro;$area = M_PI * pow( $raio, 2 );echo "Este círculo tem... <br>" ;echo "Um raio de " . $raio . " <br> ";echo "Um diâmetro de " . $diametro . " <br> ";echo "Uma circunferência de " . $circunferencia . " <br> ";echo "Uma área de " . $area . " <br> ";?>

Page 38: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – CondicionaisO comando if simplesif (expressao)

{//codigo a executar}

A expressão a ser avaliada, pode ser qualquer expressão que retorne o valores lógicos.

$itens = 23;if ( $itens == 23 ) {

echo "Há 23 itens no estoque";}

Page 39: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – CondicionaisOutros exemplos....

$itens= 23;if ( $itens > = 10 & & $itens < = 20 ) {echo "Há entre 10 e 20 ítens no estoque.";}

$itens = 23;if ( $itens > = 10 ) {

if ( $itens < = 20 ) {echo “Há entre 10 e 20 ítens no estoque.”; }

}

Page 40: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – CondicionaisO comando if ... else

if ( $itens > = 10 ) {

echo "Há muitos ítens no estoque.";}else {

echo "Há menos de 10 ítens no estoque. É hora de realizar compras.";}

Page 41: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – CondicionaisO comando if ... else...combinados

if ( $ítens > = 10 ) {

echo "Há muitos ítens no estoque.";} else if ( $ítens > = 5 ) {

echo "Restam menos de 10 ítens. Hora de realizar compras";} else {

echo "Há menos de 5 ítens! Compras devem ser realizadas agora!";}

Page 42: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – CondicionaisHá ainda o comando elseif

if ( $ítens > = 10 ) {

echo "Há muitos ítens no estoque.";} elseif ( $ítens > = 5 ) {

echo "Restam menos de 10 ítens. Hora de realizar compras";} else {

echo "Há menos de 5 ítens! Compras devem ser realizadas agora!";}

Page 43: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – CondicionaisO comando switch

switch ( $userAction ) {case "open":

// Abrir arquivobreak;case "save":

// Gravar Arquivobreak;case "close":

// Fechar arquivobreak;case "logout":

// Fazer logoutbreak;default:print "Por favor escolha uma opção";}

Page 44: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – CondicionaisO comando switch com opções combinadas

switch ( $userAction ) {case "open":// Open the filebreak;case "save":// Save the filebreak;case "close":case "logout":print "Are you sure?";break;default:print "Please choose an option";}

Page 45: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – CondicionaisOperador ternário....

Exemplo prático... <?php$itens = 23;$plenty = "Há muitos ítens no estoque.";$few = "Há menos de 10 ítens no estoque";echo ( $itens >= 10 ) ? $plenty : $few;?>

Page 46: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Laços de repetiçãoExistem, em PHP três estruturas de laços de repetição:1. Laços While2. Laços Do ... While3. Laços For

Há ainda a estrutura de repetição foreach (específica para vetores)...

Page 47: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Sintaxe e exemplo de laço While<?php$itensRestantes = 10;while ( $itensRestantes > 0 ){

echo "Vendendo um ítem... ";$itensRestantes--;

echo "Vendido. Há $itensRestantes ítens restantes. <br>";}echo "Os ítens terminaram! ";?>Obs. Vejam a forma de concatenar a variável ao texto...

Page 48: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Sintaxe e exemplo de laço Do ..While<?php$largura = 1;$comprimento = 1;do{

$largura++;$comprimento++;$area = $largura * $comprimento;

} while ( $area < 1000 );echo "O menor quadrado com área maior que 1000 possui lados de $largura x $comprimento.";?>

Page 49: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – Sintaxe e exemplo de laço For<?phpfor ( $i=1; $i <= 10; $i++ ) {echo "Contando até : $i <br/> ";}echo "Contagem completa";?>

Page 50: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – “Escapando do loop”É possível interromper um loop usando o comando break.<?php$randomNumber = rand( 1, 1000 );for ( $i=1; $i <= 1000; $i++ ) {if ( $i == $randomNumber ) {echo "Isto, o número foi descoberto...Ele é: $i <br> ";break;}}?>Implementar e executar várias vezes...

Page 51: PROGRAMAÇÃO PARA INTERNET Prof.: Jean Carlo Mendes web@mendesnet.com.br

PHP – “Escapando da iteração do loop”É possível “pular” a iteração de um loop com o continue.<?phpfor ( $i=1; $i <= 10; $i++ ) {if ( $i == 4 ) continue;echo "Contando até: $i <br> ";}echo "Contagem completa";?>

Implementar e verificar o resultado...