Curso Linguagem de Programação I - PHP Básico

Embed Size (px)

DESCRIPTION

Slide utilizado no ensino de PHP nos cursos Técnicos.

Citation preview

2. 2 Agenda Parte I Histrico Familiarizando com o PHP Tipos de Dados, Operadores, Estruturas de Controle, Funes, Escopo de Variveis, Include, Arrays Conceitos de Orientao a Objetos Parte II Trabalhando com Arquivos Trabalhando com OO Formulrios HTML Cookies e Sesses Outros componentes e funes PHP 3. 3 PARTE I 4. 4 Histrico O PHP (um acrnimo recursivo para PHP: Hypertext Preprocessor) uma linguagem interpretada. O PHP sucessor do chamado PHP/FI. PHP/FI foi criado por Rasmus Lerdorf em 1995. Atualmente a verso do PHP o 5.3. O PHP 5 foi lanado em julho de 2004. 5. 5 O mascote O mascote do PHP o Elefante. 6. 6 Livros sobre PHP 7. 7 Softwares Necessrios Requisitos bsicos: Servidor Apache (apache.org); Linguagem PHP (php.net); Servidor MySQL (mysql.com); Tudo isso instalado facilmente com o Lamp (Linux) ou Wamp (Windows). Existe a juno dos dois anteriores Xampp. Este que utilizaremos no curso. Download: http://www.apachefriends.org/pt_br/xampp -windows.html 8. 8 Conhecendo o Xampp O diretrio base o C:/xampp/htdocs; Para acessar o Xampp: http://localhost Mais informaes: Conhecendo e configurando o xampp 9. 9 Familiarizando com o PHP O ciclo das pginas Figura Como funciona o PHP Fonte: http://locobit.blogspot.com/2011/01/apresentando-php.html 10. 10 Primeiro Exemplo Ol Mundo! 11. 11 Comentrios Simples Uso do // para comentar uma linha Vrias Linhas Uso de /* e */ para comentar vrias linhas. 12. 12 Varivel no PHP Toda varivel no PHP precedida de $. A varivel no PHP recebe qualquer valor. Os nomes de varivel no PHP fazem distino entre maisculas e minsculas. Exemplo: 13. 13 Uso das Aspas Aspas Simples: Utilizada para imprimir exatamente o texto contido entre as aspas. Aspas Duplas: Utilizado para imprimir com os valores de variveis e caracteres de escape. 14. 14 Caracteres de Escape n : Nova linha. r : Retorno de Carro. t : Tabulao horizontal. : A prpria barra (). $ : O smbolo $. ' : Aspas simples. : Aspas duplas. 15. 15 Operadores = : atribuio simples += : atribuio com adio -= : atribuio com subtrao *= : atribuio com multiplicao /= : atribuio com diviso %= : atribuio com mdulo .= : atribuio com concatenao ++ : Incremento -- : Decremento 16. 16 Operadores Exemplo: 17. 17 Operadores Lgicos And : e lgico Or : ou lgico Xor : ou exclusivo ! : no (inverso) 18. 18 Comparao == : igual a != : Diferente de < : Menor que > : Maior que = : Maior ou igual a 19. 19 Estrutura de Seleo Comando IF 20. 20 Estrutura de Seleo Comando SWITCH 21. 21 Lista de Exerccios 01 1 - Que informe se um dado ano ou no bissexto. Obs: um ano bissexto se ele for divisvel por 4 e no por 100. 2 - Calcular a mdia final dadas as notas das 3 provas e produzir uma sada com a mdia e a situao do aluno de acordo com o seguinte critrio: mdia >= 7, aprovado; 5 < mdia < 7, recuperao; mdia < 5, reprovado. 22. 22 Estrutura de Repetio Comando WHILE 23. 23 Estrutura de Repetio Comando DO..WHILE 24. 24 Estrutura de Repetio Comando FOR 25. 25 Lista de Exerccios 02 - While 1) Exiba 10 linhas de um texto qualquer. 2) Exiba a soma de todos os nmeros de 0 a 10. 3) Exiba todos os nmeros de 0 a 100; 4) Exiba todos os nmeros pares de 0 a 100; 5) Sorteie nmeros aleatrios de 0 a 50, imprima todos na tela e s pare quando o nmero sorteado for 37; 26. 26 Lista de Exerccios 03 - For 1) Exiba 10 linhas de um texto qualquer. 2) Exiba a soma de todos os nmeros de 0 a 10. 3) Exiba todos os nmeros de 0 a 100; 4) Exiba todos os nmeros pares de 0 a 100; 5) Sorteie nmeros aleatrios de 0 a 50, imprima todos na tela e s pare quando o nmero sorteado for 37; 27. 27 Funes Realiza uma tarefa especfica 28. 28 Include A diretiva include responsvel por inserir e interpretar o cdigo PHP, contido em um arquivo externo. 29. 29 Arrays Simples Multi-Dimensionais 30. 30 Lista de Exerccios 04 1) defina um vetor de 365 elementos e inicialize todos seus elementos com o valor numrico 0. 2) Defina um vetor de 12 elementos e, inicialize os seis primeiros com o valor lgico VERDADEIRO e os seis restantes com o valor lgico FALSO. 3) Defina um vetor para conter os nomes dos dias da semana. Faa as atribuies considerando que o elemento de ndice um (1) o Domingo. Em seguida mostre na tela todo o vetor. 31. 31 Lista de Exerccios 04 cont.. 4) Preencha uma matriz de 10 linhas por 15 colunas com nmeros aleatrios de 1000 a 2000. Em seguida exiba todo o seu contedo. 32. 32 Lista de Exerccios 04 cont.. 5)Armazene numa matriz 12x2 de inteiros o nmero do ms com a quantidade de dias que o ms possui. Para fevereiro considere 29 dias. Armazene num vetor os nomes dos meses. Em seguida, pergunte ao usurio qual o nmero do ms que ele quer consultar. Aps a sua resposta exiba o nome do ms e a quantidade de dias que ele possui. 33. 33 Conceitos de Orientao a Objetos Objeto A instncia de uma classe. Um objeto capaz de armazenar estados atravs de seus atributos e reagir a mensagens enviadas a ele, assim como se relacionar e enviar mensagens a outros objetos. No PHP a criao de objetos atravs da palavra reservada new. 34. 34 Conceitos de Orientao a Objetos Classe Representa um conjunto de objetos com caractersticas afins. Uma classe define o comportamento dos objetos atravs de seus mtodos, e quais estados ele capaz de manter atravs de seus atributos. No PHP: atributos de uma classe so definidos atravs da declarao var. mtodos so definidos atravs de funes. Para acessar atributos dentro do mtodo, voc deve usar o operador $this-> precedendo o atributo. 35. 35 Exemplo de Classe 36. 36 Conceitos de Orientao a Objetos Visibilidade 37. 37 Conceitos de Orientao a Objetos Herana 38. 38 PARTE II Caractersticas da linguagem: sesses, upload de arquivos, cookies, autenticao HTTP, conexo persistente com banco de dados; Conceitos de Programao (Funcionamento, Boas Prticas de Programao); Sesses e Cookies (Criao e excluso de Cookies), Serializao de Dados; Cabealhos e E-mail (Controle de Cabealhos do HTTP, Autenticao com HTTP, Envio de E-mails); 39. 39 Session - Sesso Suporte a sesses no PHP consiste de uma maneira de preservar dados atravs de acessos subsequentes. 40. 40 Cookies Cookies so um mecanismo para guardar dados no navegador remoto. Ele bom para: Verificar se um usurio j logou no site (isto , validar se o cookie existe no computador) Verificar se um usurio j votou na enquete do site ( || ) Carrinho de compras na hora de armazenar os produtos comprados 41. 41 Cookies Exemplo 42. 42 Excluir Cookies Exemplo 43. 43 Formulrio em PHP Suporta Mtodo Get e Post Todo elemento HTML tem que ter ID e Nome definidos. 44. 44 Mtodos PHP Mtodo Post As informaes do Formulrio HTML so encapsulados no Cabealho do Protocolo HTTP. Mais Seguro Mais lento Utiliza a Tag: 45. 45 Mtodos PHP Mtodo Get As informaes do Formulrio HTML so exibidas na URL. Menos Seguro Mais rpido Utiliza a Tag: 46. 46 Nosso Padro 47. 47 Exerccios Construa um Formulrio (cadPessoa.php) com os seguintes Campos: ID Inteiro size: 2; Nome String size: 20; Idade Inteiro size: 3; Sexo String (Masculino e Feminino); Endereo String size: 200 Boto Enviar e Limpar Construa uma Classe Pessoa para o formulrio Utilize o Padro apresentado 48. 48 Padro de Nomenclatura Boto btnEnviar Formulrio frmLogin Texto txtLogin Checkbox chkPermite Seleo cboEstado RadioButton rdbSexo Label - lblNome 49. 49 PARTE III Manipulao de Banco de dados (Como Acessar Bancos de dados, Execuo de Consultas, Tratamento de Erros, Recuperao de Registros). 50. 50 Linguagem SQL SELECT INSERT UPDADE DELETE 51. 51 Linguagem SQL - SELECT SELECT * FROM Aluno SELECT * FROM Aluno WHERE idAluno = 1 SELECT idAluno, nomeAluno FROM Aluno GROUP BY nomeAluno SELECT count(idAluno) FROM Aluno GROUP BY idAluno 52. 52 Linguagem SQL - INSERT INSERT INTO Aluno (nomeAluno) VALUES (Maria Aparecida) 53. 53 Linguagem SQL - UPDATE UPDATE Aluno SET nomeAluno = Maria Jos WHERE idAluno = 1 54. 54 Linguagem SQL - DELETE DELETE FROM Aluno WHERE idAluno = 1 55. 55 Funes MySql no PHP mysql_connect(,,) Abre a conexo no servidor MySQL mysql_select_db() Seleciona o banco de dados mysql_query() Executa o comando SQL mysql_close() Fecha a conexo 56. 56 Tratamento de Erro no PHP Utiliza o bloco Try-Catch Utiliza a Classe Exception getMessage() - Mensagem de erro. getCode() - Cdigo do erro. getFile() - Retorna o path do arquivo onde a exceo foi gerada. getLine() - Retorna o nmero da linha onde a exceo foi gerada. 57. 57 Tratamento de Erro no PHP Exemplo 58. 58 PARTE VI Caractersticas da linguagem: upload de arquivos. 59. 59 Upload de Arquivo Altera a tag FORM do HTML 60. 60 Upload de Arquivo Exemplo de Upload