Você está na página 1de 63

Desafios x Recompensas

- É preciso estudar bastante.


- Inglês é Imprescindível.
-É necessário especializar-se em uma área.

-Alta demanda de empregos.


- Vagas para profissionais de T.I. em todo mundo.
-Produzir um produto e aposentar-se.
- Home office ganhando U$ 3.000

Qualificação
1
– Programação pra Web II –
aula 5 / 16

São Luís-MA, 28/08/2023


Prof Msc Marcos C. G. Matos
2
Objetivos

-Revisar a Linguagem de Programação PHP (3 / 4).

3 – Prof MsC Marcos Matos


Roteiro
1. Revisão Aula Anterior.
i. Principais Erros.
ii. Revisão de Conteúdo.
iii. Resolução Exercício Anterior.

4 – Prof MsC Marcos Matos


Roteiro
1. Linguagem de Programação PHP.
i. Depurando o código e Encontrando BUGs
ii. Função Nativa Explode().
iii. Formulário HTLML e PHP.
iv. Variáveis Super Globais $_GET[ ] e $_POST[ ].
v. Recepção de Dados de Formulário via $_POST[ ].
vi. Passagem de Dados Via $_GET[ ]
vii. Variável Super Global $_FILE[ ].
viii. Envio de Arquivos com POST e multipart/form-data
2. Exercício de Casa

5 – Prof MsC Marcos Matos


Códigos Produzidos
- funcao_generica1.php
- funcao_generica2.php
- funcao_generica3.php
- funcao_generica4.php
- exemplo_explode1.php
- invertedata.php
- codificacao_form2.php
- processa_form.php

6
Revisão Aula Anterior

7 – Prof MsC Marcos Matos


i. Principais Erros
- Os arquivos PHP deve estar no diretório:
c:\xampp\htdocs\devweb2\nomedoaluno\
- Executar um arquivo php no Browser, digitando-se:
HTTP://LOCALHOST/devweb2
-As TAGs php deve ser abertas e fechadas <? ?> (shorts tags On no php.ini).

- Toda linha de código php deve encerrar com ; (ponto e vírgula)


- Falta de Identação no código fonte (Tabulação para diferentes níveis de código)

8 – Prof MsC Marcos Matos


Check-List Instalação Ambiente Desenvolvimento Web

- Instalar o Servidor de Páginas APACHE.

- Instalar o Interpretador PHP.

OBS: O XAMPP é um pacote que realiza instalação simultânea do APACHE e PHP.

- Instalar um Editor de Código (Notepad++)

- Instalar um Servidor de Banco de Dados (Postgresql)

9 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Instalar o Xampp: Download em https://www.apachefriends.org/

Instalar apenas o Apache e o PHP


(Desmarcar tudo)

12 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Configurar o PHP.INI:

Permitir que o PHP seja executado usando as TAGs curtas (short): <? ?>
sem necessidade de usar as TAGs longas: <?PHP ?>

1.Localizar o arquivo php.ini, em C:\xampp\php


2. Editar e alterar o valor de Off para On
3. Salvar o php.ini com esta nova alteração.

13 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Iniciar (Start) o Xampp: No Menu Iniciar do Windows procurar por Xampp Control Panel
Iniciar (“Startar”) o Xampp
Iniciado (“Startatado”)

14 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Instalar um Editor de Código: Sugestão Notepad++

2. Instalação (manter a configuração padrão)

1. Download

15 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Testar a Instalação

1. Criar no local reservado para os arquivos PHP um programa simples para testar a instalação.
2. Local reservado para os arquivos PHP é o diretório c:\xampp\htdocs
3. Por questões de organização, criar os subdiretórios \devweb2\nomedoaluno
4. Local reservado para os arquivos PHP c:\xampp\htdocs\devweb2\marcosmatos
5. Criar o primeiro código PHP, conforme ao lado

No Notepad++, ao salvar o arquivo, escolher a extensão php.


Salvar o Arquivo como testeambiente.php

6. Testar o primeiro código PHP


- Abrir um navegador internet (browser)
- Digitar http://localhost/devweb2/nomedoaluno/testeambiente.php

16 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Se tudo ocorreu bem na instalação, será mostrado o resultado a seguir:

Nesse momento, tem-se


instalado o Servidor de
Páginas APACHE e o
interpretador de PHP.

17 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Instalação do Postgresql: Download em https://www.postgresql.org/download

Não é necessário instalar o Stack Builder

Essa é a mesma senha que será usado no


código PHP para conexão com Postgresql.

18 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Instalação do Postgresql: Download em https://www.postgresql.org/download

Manter
Manter

19 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Instalação do Postgresql: Ajuste no PHP.INI para ativar o Postgresql ao PHP

Importante: Por padrão, o Postgresql não vem habilitado para o PHP.


É necessário descomentar o código extension pgsql

De

Para

Reiniciar o Xampp ( Xampp Control Panel) para que o Postgresql seja


Habilitado para o PHP

20 – Prof MsC Marcos Matos


Instalação Ambiente de Desenvolvimento Web
- Testar Instalação do Postgresql: No menu Inicar do Windows, digitar pgadmin.

O pgAdim é uma ferramenta visual de


criação e manutenção de banco de dados
Postgresql

Para acessar o Postgresql será necessário


informar a SENHA cadastrada na
instalação.

21 – Prof MsC Marcos Matos


FIM Instalação Ambiente Desenvolvimento

22 – Prof MsC Marcos Matos


ii. Revisão de Conteúdo: FUNÇÕES

Fonte: Lara Popov Zambiasi Bazzi Oberderfer


23 – Prof MsC Marcos Matos
24 – Prof MsC Marcos Matos
25 – Prof MsC Marcos Matos
26 – Prof MsC Marcos Matos
27 – Prof MsC Marcos Matos
É necessário Aprender Isso!
28 – Prof MsC Marcos Matos
iii. Resolução de Exercício
Implementar uma Função de Conexão com Postgresql

Habilitar, no PHP.INI, o SGBD Postgresql para ser usado pelo PHP

29 – Prof MsC Marcos Matos


30 – Prof MsC Marcos Matos
Fim Revisão Aula Anterior

31 – Prof MsC Marcos Matos


PHP
i. Depurando o código e Encontrando BUGs
ii. Função Nativa Explode().
iii. Formulário HTLML.
iv. Variáveis Super Globais $_GET[ ] e $_POST[ ].
v. Recepção de Dados de Formulário via $_POST[ ].
vi. Receção de Dados Via $_GET[ ]
vii. Envio de Dados por URL Ssando$_GET[ ]
viii. Variável Super Global $_FILE[ ].

32 – Prof MsC Marcos Matos


i. Depurando Código e Encontrando Bugs

1. Reduzir o código ao mínimo para funcionar.


2. Descomentar partes do código até encontrar o local do BUG.
3. Imprimir na tela usando ECHO.
4. Habilitar no php.ini para mostrar Erros PHP

33 – Prof MsC Marcos Matos


i. Depurando Código e Encontrando Bugs
4. Habilitar no PHP.INI para mostrar Erros do PHP.

Se display_erros=On, mostra os erros PHP na tela (browser)

Define os Tipos de Erros a serem apresentados. No caso, mostrará todos os erros (E_ALL), exceto
erros de código depreciado do PHP (E_DEPRECATED) e sugestões do PHP (E_STRICT)

34 – Prof MsC Marcos Matos


i. Depurando Código e Encontrando Bugs
4. Habilitar no PHP.INI para mostrar Erros do PHP.

Habilita gerar os Erros PHP em um arquivo de LOG.

Certificar que existe o diretório logs em c:\xampp\php. Será criado um arquivo


PHP_ERROR_LOG que vai conter o registro de todos os Erros PHP.

35 – Prof MsC Marcos Matos


Simulando Erros, Depurando Código e Encontrando BUGs

- Tipos de Erros PHP


- PHP Parse error: Erros Fatais. São erros de código PHP escritos erroneamente.
- Ex: falta de ponto e vírgula, nome da função errada, faltou fechar { ...

- PHP Warnig: O código PHP está escrito corretamente, mas o programa não funciona
porque há um erro não ligado ao PHP.
- Ex: A string de conexão com o Postgresql possui a senha errada do banco de dados.

36 – Prof MsC Marcos Matos


Aula Prática: em Busca de BUGs

funcao_generica4.php

37 – Prof MsC Marcos Matos


ii. Função Nativa Explode( )

38 – Prof MsC Marcos Matos


ii. Função Nativa Explode( )

39 – Prof MsC Marcos Matos


ii. Função Nativa Explode( )

exemplo_explode1.php

40 – Prof MsC Marcos Matos


Criar Função inverteData com Eplode( )

exemplo_explode1.php
41 – Prof MsC Marcos Matos
iii. Formulários HTML

42 – Prof MsC Marcos Matos


codificacao_form2.php

43 – Prof MsC Marcos Matos


44 – Prof MsC Marcos Matos
45 – Prof MsC Marcos Matos
46 – Prof MsC Marcos Matos
47 – Prof MsC Marcos Matos
48 – Prof MsC Marcos Matos
iv. Variáveis Super Globais $_GET[ ] e $_POST[ ]
$_POST é uma variável superglobal PHP que é usada para coletar dados de formulário em uma
página FRONT-END, enviados via método POST, usando protocolo HTTP, para uma tela BACK-END.
$_GET é uma variável superglobal PHP que é usada para coletar dados de formulário em uma página
FRONT-END, enviados via método GET, usando protocolo HTTP, para uma tela BACK-END.
Método GET Método POST
Os dados são passados via URL, por isso, é Os dados são passados no corpo da
limitado a quantidade de parâmetros a serem requisição HTTP, logo, não há restrição da
passados. quantidade de dados.
Os dados passados são exibidos na URL. Se Os dados são passados são inacessíveis.
isso não for aplicável para a tela que se deseja Apenas o programa Back-End pode acessá-
criar, não é seguro usar. los.
Dados passados por POST geram melhor A passagem de dados de uma tela Front-End
desempenho porque são mais leves e podem para uma tela Back-End tem menor
ser guardados no cache do navegador. desempenho com POST.
49 – Prof MsC Marcos Matos
v. Recepção de Dados via $_POST[ ]
codificacao_form2.php

processa_form.php

50 – Prof MsC Marcos Matos


vi. Recepção de Dados Via $_GET[ ]
codificacao_form2.php

processa_form.php

51 – Prof MsC Marcos Matos


vi. Recepção de Dados via $_GET[ ]

OBS: As variáveis passadas pelo método GET são visíveis na URL

RESULTADO DO CÓDIGO processa_form.php

52 – Prof MsC Marcos Matos


vii. Recepção de Dados Enviados por URL usando $_GET[ ]

53 – Prof MsC Marcos Matos


viii. Variável Super Global $_FILES[ ]

Nome do Arquivo.

Tipo do Arquivo.

Tamanho do Arquivo.

O nome temporário do arquivo que foi armazenado no servidor.

Erro associado ao upload do arquivo.

54 – Prof MsC Marcos Matos


viii. Variável Super Global $_FILES[ ]

55 – Prof MsC Marcos Matos


viii. Variável Super Global $_FILES[ ]

56 – Prof MsC Marcos Matos


viii. Variável Super Global $_FILES[ ]

57 – Prof MsC Marcos Matos


viii. Variável Super Global $_FILES[ ]

Nos formulários HTML que enviam arquivos em sua interface Front-End, usa-se a
função MOVE_UPLOAD_FILE( ) no código Back-End para executar o envio do
arquivo .

58 – Prof MsC Marcos Matos


Exercício de Casa
Exercício 1: Função Explode( )
- Desenvolver um programa que faz a leitura de um arquivo .txt, que possui linhas
com conteúdos separados por Ponto e Vírgula.
- Imprimir na tela cada linha e cada conteúdo da linha.

59 – Prof MsC Marcos Matos


Exercício de Casa
Exercício 2: Variável Global $_FILES[ ]
- Desenvolver um programa possui em sua interface Front-End um formulário que
permite o usuário escolher um arquivo para Envio.
- Na interface Back-End, imprimir o nome do arquivo, seu tamanho, seu tipo e
usar a função move_uploaded_file( ) para mover o arquivo escolhido na interface
Front-End para um diretóro chamado de uploads, dentro da história criada.
Ex: c:\xampp\htdocs\devweb2\marcosmatos\uploads\

60 – Prof MsC Marcos Matos


Exercício de Casa
Exercício 3: Passar dados via URL e recebê-los usando o $_GET[ ].
- Desenvolver um programa possui em sua interface Front-End com uma URL que
passa parâmetros (usar a tag <a href=‘’></a> no Front-End para passar os dados.
Criar um Back-End para recebê-los via $_GET[ ].

61 – Prof MsC Marcos Matos


6 Referências Bibliográficas
- W3Schools Online Web Tutorials
- www.w3schools.com

- Manual do PHP (pucpr.br)


- www.ppgia.pucpr.br/pt/arquivos/techdocs/php/index.htm
- UFC.br
-www.multimeios.ufc.br/users/docs/linux/pr/index.html
- Web Reference
- http://webreference.com

62 – Prof MsC Marcos Matos


Referências Bibliográficas

- www.webreference.com

- www.tutorialspoint.com/php-files

63 – Prof MsC Marcos Matos


Códigos Produzidos
- funcao_generica1.php
- funcao_generica2.php
- funcao_generica3.php
- funcao_generica4.php
- exemplo_explode1.php
- invertedata.php
- codificacao_form2.php
- processa_form.php

64 – Prof MsC Marcos Matos

Você também pode gostar