43
Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo [email protected] www.brenoleonardo.com.br

Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo [email protected]

Embed Size (px)

Citation preview

Page 1: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Desenvolvimento de WEB sites com PHP

Breno Leonardo Gomes de Menezes Araú[email protected]

www.brenoleonardo.com.br

Page 2: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Quem sou eu?

• 9ª período de Bacharelado em Sistemas de Informação - UFRPE/UAST

• Experiência com PHP a aproximadamente 3 anos;

• Experiência com CMS Joomla e Wordpress.

• Estuda atualmente sobre os principais frameworks de governança de TI: COBIT e ITIL.

Page 3: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

O que é?

PHP (um acrónimo recursivo para "PHP: Hypertext Preprocessor") é uma linguagem de programação de

computadores interpretada, livre e muito utilizada para gerar conteúdo dinâmico na World Wide Web, como por

exemplo a Wikipédia.

Page 4: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

História

A linguagem surgiu por volta de 1994, como um pacote de programas CGI criados por Rasmus Lerdorf, com o nome Personal Home Page Tools, para substituir um conjunto

de scripts Perl que ele usava no desenvolvimento de sua página pessoal.

Page 5: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Primeiro exemplo

Page 6: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Entendendo o código

<?php → indica o início do trecho de código PHP.

echo → Escreve alguma coisa na tela.

?> → Indica o término do trecho de código PHP.

Page 7: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Por que o código-fonte do PHP não aparece em nosso navegador?

Page 8: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com
Page 9: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Constantes

São valores que são predefinidos e que não mudam ao longo da execução.

Exemplo:◦ bool define (String nome, misto valor [, bool case_insensitive]);

Page 10: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Variáveis Começam com $; Não precisa ser declarada; Após o “$” não pode iniciar o nome da variável com número.

Exemplo:◦ $nota◦ $casal20◦ $flamengo_6_vezes_campeao_brasileiro

Page 11: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Arrays

Pode armazenar vários valores; Possui um identificador; Vários índices; Cada índice representa uma posição em que fica armazenado um elemento do array;

Page 12: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Arrays

Exemplos:◦ $vetor[“time”] = “Flamengo”;◦ $vetor[] = “Hexacampeão brasileiro”;◦ $vetor[2] = “2010”;

Arrays multidimensionais:◦ $clube[“RJ”][“RiodeJaneiro”] = “Flamengo”;◦ $clube[“PE”][“Recife”] = “Sport”;

Page 13: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com
Page 14: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Estruturas de Controle

Page 15: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

If, elseif e else

• If– Se a condição for verdadeira executa o bloco;

• Elseif– Senão se condição for verdadeira, executa este

bloco;• Else– Senão execute este bloco;

Page 16: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Exemplo

if(condicao1){ bloco1}

elseif(condicao2){ bloco2}

else{ bloco3}

Page 17: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Swicth

• Switch– Operador de igualdade que compara uma variável

com diversos valores (case);– Após cada bloco de execução (case) deve-se utilizar

o break, para que o switch seja encerrado e a execução continue após este;

– Default– Mesma função do else.

Page 18: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Exemploswitch($numero){

Case 's':Echo “Sim”;break;

Case 'n':Echo “Não”;Break;

Default:Echo “Opção inválida”;break;

}

Page 19: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

While e do...while

• Enquanto a expressão for verdadeira, a execução do bloco é repetida.

• Quando o valor retornado for falso, encerra-se o laço de repetição.

• Diferenca entre os dois tipos:– O while avalia a expressão logo no início do laço, e o do...while avalia

a expressão no final do laço.

Page 20: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Exemplowhile(exp){

Comandos}

Do{

Comandos

} while(exp);

Page 21: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

For

• Utilizamos quando queremos executar um conjunto de instruções um determinado número de vezes.

Page 22: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Exemplo

For( inicialização; condição; operador){

Comandos}

Page 23: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Classes e funções

Page 24: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Formulários

Page 25: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Exemplo

Arquivo “form.html”

<form action=”processa_dados.php”>Nome <br><input type=”text” name=”nome” size=”30” maxlength=”60” />Email<br><input type=”text” name=”email” size=”30” maxlength=”60” />Sexo<br><input type=”radio” name=”sexo” value=”M” /> Masculino<input type=”radio” name=”sexo” value=”F” /> Feminino<br><input type=”submit” value=”Enviar” /><input type=”reset” value=”Limpar” />

</form>

Page 26: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Métodos

• GET– Neste método os dados serão enviados juntamente com o

nome da página que processará os dados recebidos.– Exemplo de recebimento: $_GET[“variável”];

• POST– Envia os dados do formulário no próprio corpo da mensagem

encaminhada ao servidor.– Exemplo de recebimento: $_POST[“variável”];

Page 27: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Crie um script em php para receber este formulário

Arquivo “form.html”

<form action=”processa_dados.php”>Nome <br><input type=”text” name=”nome” size=”30” maxlength=”60” />Email<br><input type=”text” name=”email” size=”30” maxlength=”60” />Sexo<br><input type=”radio” name=”sexo” value=”M” /> Masculino<input type=”radio” name=”sexo” value=”F” /> Feminino<br><input type=”submit” value=”Enviar” /><input type=”reset” value=”Limpar” />

</form>

Page 28: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Script php

Arquivo “processa_dados.php”

<?php

$nome = $_GET[“nome”];$email = $_GET[“email”];$sexo = $_GET[“sexo”];

Echo “Meu nome é”.$nome.”<br />”;Echo “Meu email é”.$email.”<br />”;Echo “Meu sexo é”.$sexo;

?>

Page 29: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Includes• Usamos quando desejamos que um código que seja

utilizado mais de uma vez no programa, evitando assim a duplicação de código.

• São utilizados para conexões de banco de dados, menus de sites que se estendem por várias páginas, etc.

Page 30: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

ExemploArquivo “menu.html”

<a href=”abc.php”>abc</a><a href=”bca.php”>bca</a>

Arquivo index.php

<html><body>…<?php include “menu.html”; ?>…</body></html>

Page 31: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Cookies e Sessões

Page 32: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Por que usar cookies e sessões?

• A comunicação entre o programa e o servidor web é feita através de protocolo HTTP;

• Protocolo não armazena informações e sim trata cada requisição de maneira independente.

Page 33: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Cookies

• É um arquivo texto que podemos armazenar no computador do usuário.

• Possui um nome pelo qual é referenciado e um valor associado a esse nome.

Page 34: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Exemplo

• Bool setcookie (string nome [, string valor [, int validade [, string caminho [, string dominio [, int seguro]]]]]);

• $_COOKIE[“string nome”]

Page 35: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Sessões

• É um período de tempo durante ao qual uma pessoa navega pelas páginas de um site.

• Armazenados em arquivos localizados no servidor.• Menor duração.

Page 36: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Exemplo

• Bool session_start(vazio)

• $_SESSION[“variavel”]

• unset($_SESSION[“variavel”])

• session_destroy(vazio)

Page 37: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Mão na massa agora!

Faça um sistema de login utilizando sessões.

Page 38: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Enviando email com PHP

• Bool mail( string destinatario, string assunto, string mensagem [, string cabeçalhos_adicionais [, string parâmetros_adicionais]]);

• Que tal fazermos agora um formulário que envia os dados por email. Pois então, mão na massa!

Page 39: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

PHP e MYSQL

Page 40: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

MySql

• Selecionar dados– SELECT*FROM tabela WHERE condição

• Inserir dados– INSERT INTO tabela(colunas) VALUES(valores)

• Deletar dados– DELETE FROM tabela WHERE condição

• Modificar dados– UPDATE tabela SET coluna=valor WHERE condição

Page 41: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

PHP e MySql

• mysql_connect(servidor, nome_usuario, senha)• mysql_select_db(banco_de_dados)• mysql_query(string comando)• mysql_num_rows(query_string)• mysql_fetch_row(query_string)• mysql_fetch_array(query_string)• mysql_close(conexao)

Page 42: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com
Page 43: Desenvolvimento de WEB sites com PHP Breno Leonardo Gomes de Menezes Araújo brenod123@gmail.com

Obrigado!

Breno Leonardo Gomes de Menezes Araú[email protected]

www.brenoleonardo.com.br

Material e códigoshttp://blog.brenoleonardo.com.br

Obrigado!Obrigado!Obrigado!Obrigado!Obrigado!Obrigado!