1. funcionamento das páginas dinâmicas - Avant

Propaganda
L
I
NGUAGE
M DE
PROGRAMAÇÃO PHP
I
NF
ORMAÇÃOECOMUNI
CAÇÃO
Vi
t
orF
a
r
i
a
sCor
r
e
i
a
Autor
Vitor Farias Correia
Graduado em Sistemas de Informação pela FACITEC e especialista em desenvolvimento
de jogos digitais, atua no mercado web a 6 anos trabalhando com PHP, MySQL, CSS e
Javascript e a 3 anos na programação de cursos a distancia feitos em Flash.
Revisão
NT Editora e Figuramundo
Projeto Gráfico
NT Editora
Editoração Eletrônica
NT Editora e Figuramundo
Capa
NT Editora
NT Editora, uma empresa do Grupo NT
SCS Q2 - Bl. D - Salas 307 e 308 - Ed. Oscar Niemeyer
CEP 70316-900 - Brasília - DF
Fone: (61) 3421-9200
[email protected]
www.nteditora.com.br e www.grupont.com.br
Linguagem de Programação – PHP./ NT Editora.
-- Brasília: 2014. 102p. : il. ; 21,0 X 29,7 cm.
ISBN - 978-85-68004-78-4
1. Linguagem de Programação – PHP
Copyright © 2014 por NT Editora.
Nenhuma parte desta publicação poderá ser reproduzida por
qualquer modo ou meio, seja eletrônico, fotográfico, mecânico ou
outros, sem autorização prévia e escrita da NT Editora.
LEGENDA
ÍCONES
Prezado(a) aluno(a),
Ao longo dos seus estudos, você encontrará alguns ícones na coluna lateral do material didático. A presença desses ícones o(a) ajudará a compreender melhor o conteúdo
abordado e também como fazer os exercícios propostos. Conheça os ícones logo abaixo:
Saiba Mais
Esse ícone apontará para informações complementares sobre o assunto que
você está estudando. Serão curiosidades, temas afins ou exemplos do cotidiano que o ajudarão a fixar o conteúdo estudado.
Importante
O conteúdo indicado com esse ícone tem bastante importância para seus estudos. Leia com atenção e, tendo dúvida, pergunte ao seu tutor.
Dicas
Esse ícone apresenta dicas de estudo.
Exercícios
Toda vez que você vir o ícone de exercícios, responda às questões propostas.
Exercícios
Ao final das lições, você deverá responder aos exercícios no seu livro.
Bons estudos!
Sumário
1. FUNCIONAMENTO DAS PÁGINAS DINÂMICAS�������������������������������������������� 7
1.1 Conhecendo o PHP������������������������������������������������������������������������������������������������������������������ 8
1.2 Conhecendo o Javascript������������������������������������������������������������������������������������������������������ 9
1.3 Conhecendo o CSS����������������������������������������������������������������������������������������������������������������10
2. USANDO PHP PELA PRIMEIRA VEZ������������������������������������������������������������� 12
2.1 Sintaxe básica��������������������������������������������������������������������������������������������������������������������������12
2.2 Estrutura básica�����������������������������������������������������������������������������������������������������������������������17
2.3 Conhecendo funções úteis do PHP���������������������������������������������������������������������������������22
3. USANDO O JAVASCRIPT PELA PRIMEIRA VEZ������������������������������������������� 33
3.1 Sintaxe e estrutura básica e sua semelhança com o PHP����������������������������������������33
3.2 Janela do Javascript���������������������������������������������������������������������������������������������������������������35
3.3 Capturando elementos e manipulando seus atributos com DOM����������������������38
3.4 Trabalhando com eventos���������������������������������������������������������������������������������������������������42
3.5 Dicas úteis���������������������������������������������������������������������������������������������������������������������������������44
4. LENDO VALORES ENVIADOS POR FORMULÁRIOS������������������������������������ 49
4.1 Capturando valores do cliente������������������������������������������������������������������������������������������49
4.2 Validando dados inseridos em formulários������������������������������������������������������������������52
5. MANIPULANDO E OBTENDO CABEÇALHOS HTTP������������������������������������ 57
5.1 Lendo informações sobre o usuário��������������������������������������������������������������������������������57
5.2 Alterando o cabeçalho���������������������������������������������������������������������������������������������������������59
4
NT Editora
6. COOKIES E VARIÁVEIS DE SESSÃO�������������������������������������������������������������� 64
6.1 Introdução��������������������������������������������������������������������������������������������������������������������������������64
6.2 Conhecendo os cookies��������������������������������������������������������������������������������������������������������64
6.3 Criando e controlando cookies������������������������������������������������������������������������������������������65
6.4 Variáveis de sessão, uso, diferenças���������������������������������������������������������������������������������66
7. ENVIANDO E-MAIL���������������������������������������������������������������������������������������� 70
7.1 Enviando e-mails pelo PHP�������������������������������������������������������������������������������������������������70
7.2 Enviando páginas HTML via e-mail����������������������������������������������������������������������������������72
8. MANIPULANDO DADOS USANDO SQL������������������������������������������������������� 77
8.1 Conectando-se ao MySQL���������������������������������������������������������������������������������������������������77
8.2 Executando SQL em páginas dinâmicas������������������������������������������������������������������������79
9. PHP NA WEB 2.0�������������������������������������������������������������������������������������������� 84
9.1 Uso de XML para a web��������������������������������������������������������������������������������������������������������84
9.2 Requisições assíncronas com Ajax�����������������������������������������������������������������������������������86
9.3 Ampliando a interação da página combinando cliente e servidor����������������������89
10. MONTANDO UM SITE DINÂMICO�������������������������������������������������������������� 93
10.1 Criando um sistema de cadastro com login���������������������������������������������������������������93
10.2 Visualizando, editando e cadastrando itens��������������������������������������������������������������95
10.3 Criando um carrinho de compras����������������������������������������������������������������������������������97
BIBLIOGRAFIA������������������������������������������������������������������������������������������������� 101
Linguagem de Programação - PHP
5
1. FUNCIONAMENTO DAS PÁGINAS DINÂMICAS
Atualmente cada vez mais recursos são usados em páginas web. Há uma grande diversidade e
também uma grande necessidade de capacitação.
O desenvolvedor que não conhecer pelo menos o básico desses recursos corre o risco de ficar
fora do mercado de trabalho.
Apesar das inovações, os recursos mais comuns não deixaram de ser utilizados. Afinal de contas, os recursos mais avançados não existiriam sem uma boa base.
Mas, antes de tudo isso, veja o que possibilita o resultado final das páginas que acessamos.
Reprodução proibida. Copyright © NT Editora. Todos os direitos reservados.
A rede mundial de computadores é muito importante, mas sem os servidores nós nunca receberíamos o resultado final em nossos acessos.
Na web existem diversos tipos de servidores diferentes. Cada um responsável por um tipo de aplicação web diferente, sejam elas banco de dados, servidor web ou interpretador de uma linguagem.
Utilizaremos como linguagem o PHP, como servidor o Apache e o MySQL como banco de dados. Essas ferramentas estão sempre trabalhando por trás de tudo que exija um resultado final e imediato. Como, por exemplo, uma consulta a um banco de dados ou um upload de imagem e até mesmo
para enviar um e-mail.
As linguagens que trabalham dessa maneira são chamadas de linguagens server-side e as páginas que usam esse recurso, de páginas dinâmicas.
Talvez você ainda não saiba, mas o PHP não é o responsável pelas grandes interatividades nas
páginas web. Essas interações existem graças a linguagens que funcionam no navegador, ao contrário
do PHP, que funciona no servidor.
Tais linguagens são conhecidas como client-side, e as páginas que as usam são conhecidas
como páginas interativas.
SUMÁRIO
Linguagem de Programação - PHP
Upload: Ao
contrário do
download,
o upload
envia uma
informação
ou arquivo do
computador
para a
internet.
7
Atenção: uma página interativa pode ser dinâmica, ou seja, ela pode ter recursos no lado servidor e no lado cliente ao mesmo tempo.
Vamos entender melhor o que acontece sempre que acessamos um site na web.
1.1 Conhecendo o PHP
No princípio criou-se o HTML e ele fez diversas pessoas felizes por dar a elas o poder de escrever
coisas em um meio totalmente novo.
Um tempo depois, somente o HTML não estava sendo suficiente, as pessoas queriam mais,
queriam poder dar mais segurança a suas páginas, queriam poder atualizá-las de maneira mais rápida,
queriam realizar uploads na internet e mostrar suas fotos para todos.
Essa linguagem foi criada seguindo o padrão de seu pai, o C++, porém de uma maneira própria
para a web.
Claro que esta evolução resultou em diversas mudanças entre pai e filho, mas ainda assim são
muito semelhantes.
No começo, ela foi conhecida como Personal Home Page pelo seu foco maior em páginas pessoais.
Mas com o tempo seu poder cresceu, assim como seus recursos, e seu foco ampliou-se. Assim
houve uma mudança no seu nome para Hypertext Processor.
Uma de suas grandes vantagens está no fato de que toda a linguagem e sua estrutura possui
código aberto.
Existe uma grande quantidade de sites na internet com pessoas dos mais diversos níveis que
sempre estarão prontas para ajudar a tirar dúvidas. Além do próprio site oficial que fornece exemplos
práticos e todos os seus comandos.
A maneira de usar o PHP e a grande maioria das linguagens WEB vai ser um pouco diferente
para pessoas acostumadas à programação voltada a desktops.
8
NT Editora
SUMÁRIO
Reprodução proibida. Copyright © NT Editora. Todos os direitos reservados.
Eis que surgem as linguagens server-side que davam essa capacidade às pessoas, junto com
elas, o PHP.
Quando o servidor monta a página, ele procura em todo o arquivo PHP por tags que indicam o
começo e o fim do código real.
Afinal de contas o código PHP estará misturado com o HTML, por isso é necessário identificar
o começo e o fim dele.
Após reconhecer o conteúdo e o código, o servidor começa a escrever o código final que será
entregue ao usuário.
Claro que esses identificadores mudam de linguagem para linguagem. No PHP, eles são simbolizados pelas tags <?php para início e ?> para finalizar.
Observação importante: as páginas que tiverem código PHP obrigatoriamente devem possuir
uma extensão .php. Essa é uma extensão de arquivo que indica a existência de código PHP
fazendo com que o servidor a interprete.
Um dos recursos nativos da linguagem, e que facilita muito o trabalho dos desenvolvedores, é
a capacidade de conversar com diversos bancos de dados diferentes. Sendo que com alguns ela tem
mais recursos nativos, como é o caso do MySQL.
Outra vantagem que facilita muito a vida do desenvolvedor é a portabilidade da linguagem. Graças a isso, o código
funciona em diversas plataformas diferentes. O que é um grande
alívio. Já que a grande maioria dos servidores PHP na web são
Linux. E boa parte dos desenvolvedores trabalha com Windows.
Em alguns casos, pelo fato da linguagem ser interpretada e
possuir muitos recursos que podem ser desabilitados, os códigos
podem não funcionar da maneira esperada em lugares diferentes.
Reprodução proibida. Copyright © NT Editora. Todos os direitos reservados.
Como por exemplo, há uma opção que faz com que o servidor aceite a tag <? para realizar o
início do código em PHP. Mas como esse recurso pode estar desabilitado, deve-se evitar usá-lo.
1.2 Conhecendo o Javascript
Como no princípio havia o HTML e um tempo depois houve o advento dos servidores mais
inteligentes, muito mais poder foi colocado à disposição dos desenvolvedores.
Mas isso não foi suficiente, os usuários sempre anseiam por inovações. Sendo assim, surgiram
as linguagens client-side, dentre elas, o Javascript.
Criado pela Netscape, foi utilizado no início para tarefas simples, como verificar se o usuário preencheu um formulário de maneira correta.
Mas felizmente não se resumiu apenas a
isso. Atualmente, sabendo utilizar essa linguagem, é possível realizar uma grande variedade de
interações em um site.
SUMÁRIO
Linguagem de Programação - PHP
9
Esta é uma amostra bem simples do que pode ser feito com Javascript. Nesse caso, você teria
que clicar em OK.
Infelizmente junto com o seu grande crescimento vieram alguns problemas.
Por ser uma linguagem interpretada pelo navegador do usuário, as empresas
que criavam navegadores estavam seguindo maneiras diferentes de usar a linguagem.
Devido a isso, a W3C veio para padronizar
a bagunça que estava sendo criada.
Hoje, basicamente, o desenvolvedor deve trabalhar pensando em
dois navegadores: O Internet Explorer e o Mozilla Firefox.
Os demais navegadores seguem o padrão do Firefox.
Outro detalhe interessante está na sintaxe, assim como o PHP, o Javascript também se
baseia em C++.
O que é uma vantagem, pois assim há um único padrão, claro que uma linguagem não é igual
à outra, mas elas possuem semelhanças.
Um recurso interessante que iremos utilizar bastante do Javascript é o DOM.
O DOM trata a página como se fosse uma árvore de elementos, de onde se pode capturá-los, editá-los ou até mesmo criar novos.
Além de manipulação de página, você aprenderá também
como fazer interações simples como um relógio dinâmico, por exemplo. Ou como criar caixas de texto com máscaras. E outras atividades
que serão úteis no seu dia a dia.
Outro recurso que será utilizado, mas não será aprofundado, já que ele não é o nosso foco, é o CSS.
Porém, algumas implementações só serão possíveis de serem feitas ao combinar o Javascript
com CSS.
O CSS, Cascading Style Sheet, é uma linguagem de formatação que auxilia o HTML.
Com ela, nós podemos criar padrões de formatação e assim ir além do que o HTML oferece.
E se combinado com Javascript, será possível alterar as características dos elementos de maneira dinâmica
e interativa.
Infelizmente o CSS sofreu o mesmo problema do
Javascript, por também ser interpretado no navegador.
E felizmente a W3C também o padronizou, por
isso, é necessário sempre pensar nos dois navegadores
básicos, Internet Explorer e Mozilla Firefox.
10
NT Editora
SUMÁRIO
Reprodução proibida. Copyright © NT Editora. Todos os direitos reservados.
1.3 Conhecendo o CSS
Exercícios
Questão 01 – Marque a questão que possui os itens mais importantes para que seja
possível o acesso a uma página da web.
a) Mouse e Teclado.
Parabéns,
você
finalizou
esta lição!
Agora
responda
às questões
ao lado.
b)Internet e monitor.
c) Teclado e Internet.
d)Internet e servidores web.
Questão 02 – Marque a alternativa que apresenta uma linguagem de programação, um
servidor web e um banco de dados.
a) PHP, JavaScript e CSS.
b)CSS, Internet Explorer e Microsoft Excel.
c) PHP, Apache e MySQL.
d)C++, PHP e Apache.
Questão 03 – O PHP foi criado seguindo o padrão de outra linguagem, qual é essa linguagem?
a)C++.
b)C#.
c)CSS.
d)JSP.
Questão 04 – Quais são as tags de início e fim de um código PHP?
a) <php> e </php>.
Reprodução proibida. Copyright © NT Editora. Todos os direitos reservados.
b)[php] e [/php].
c) <?php e ?>.
d)<?php e php?>.
Questão 05 – Quais destas linguagens são client-side?
a) JavaScript e CSS.
b)JavaScript e PHP.
c) PHP e CSS.
d)Somente PHP.
SUMÁRIO
Linguagem de Programação - PHP
11
Download