1
Tecnologia WEB II
Prof. Erwin Alexander Uhlmann
Introdução ao PHP
UHLMANN, Erwin Alexander. Introdução ao PHP.
Instituto Siegen. Guarulhos, 2012.
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
2
Agradecimentos
Agradeço à minha esposa Kátia por entender
minha ausência, meus pais Mirtes e Günter por
terem criado meu caminho, aos meus alunos que
viabilizaram este trabalho e a todos os autores
de livros e bibliotecas que consultei para que
pudesse devidamente embasar este.
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
3
Sumário
Agradecimentos ...............................................................................................................2
Introdução ....................................................................................................................... 5
Aula 1 ................................................................................................................................ 6
Pré-requisitos ............................................................................................................... 6
Fontes de referência ............................................................................................... 6
Software................................................................................................................... 6
PHP .............................................................................................................................. 10
O que é um aplicativo para web? ............................................................................11
Como funciona um aplicativo para a web ..............................................................11
Aula 2 ............................................................................................................................... 19
Condicionais ............................................................................................................ 22
Comandos de repetição ........................................................................................ 24
Aula 3 ............................................................................................................................... 27
Envio de e-mails .......................................................................................................... 27
Envio de e-mails ...................................................................................................... 27
to ............................................................................................................................. 27
subject .................................................................................................................... 28
message ................................................................................................................. 28
additional_headers (opcional) .............................................................................. 28
Email simples ......................................................................................................... 30
Aula 4...............................................................................................................................33
Cookies ........................................................................................................................33
Aula 5 .............................................................................................................................. 38
Criação e leitura de arquivos ..................................................................................... 38
Criar arquivos ......................................................................................................... 38
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
4
Ler arquivos ................................................................................................................ 41
Aula 6.............................................................................................................................. 42
Upload de arquivos ................................................................................................... 42
Aula 7 .............................................................................................................................. 44
Sessão......................................................................................................................... 44
Aula 8.............................................................................................................................. 45
Aula 9.............................................................................................................................. 45
Aula 10 ............................................................................................................................ 45
Aula 11 ............................................................................................................................. 45
Aula 12............................................................................................................................. 45
Aula 13 ............................................................................................................................ 45
Aula 14 ............................................................................................................................ 45
Aula 15 ............................................................................................................................ 45
Bibliografia ..................................................................................................................... 46
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
5
Introdução
O objetivo deste trabalho é introduzir as técnicas básicas de programação em PHP
para a construção de um site gerenciável pelo cliente sem a necessidade de
conhecimento de HTML e PHP.
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
6
Aula 1
Pré-requisitos
Fontes de referência
http://php.net/manual/pt_BR/index.php
Livros
Software
PHPEditor
Este é um dos principais editores de PHP. Simples, rápido, prático e com um amplo
suporte à linguagem.
$ : Grátis.
Avaliação: ☺☺☺☺☺
http://filestore.softwaredownloadwebsite.com/h92/743753phpeditor_setup_en.exe
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
7
Figura 1 - PHPEditor
Dreamweaver
Este é o melhor! O problema é que é pago, e bem pago. Este editor da Adobe tem
longa história de desenvolvimento. Atende diversas ferramentas que permitem até
um usuário com pouco conhecimento criar uma página, além de suporte a diversas
linguagens de programação e Banco de Dados.
http://www.adobe.com/cfusion/tdrc/index.cfm?product=dreamweaver&loc=pt_br
$: US$ 229,00 (13/12/2011)
Avaliação: ☺☺☺☺☺
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
8
Figura 2 - Dreamweaver
Expression Web
A Microsoft definitivamente entrou para a briga dos editores web. Para encarar o
Dreamweaver ela lançou o Expression Web 4, que pode ser avaliado como uma
versão antiga, de uma ou duas gerações passadas, do software da Adobe. Pago mas
com diversos recursos, segue a linha do principal concorrente.
http://www.microsoft.com/expression/products/web_overview.aspx
$: US$149,00
Avaliação: ☺☺☺☺☺
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
9
Figura 3 - Expression Web
Existem diversos editores PHP, ao longo deste trabalho, iremos utilizar o PHPEditor,
pois além de gratuito é a referência.
O PHP necessita do compilador PHP. http://windows.php.net/download/
Como em breve iremos trabalhar em conjunto com MySQL, aproveite para baixa-lo.
http://dev.mysql.com/downloads/
Além deles é fundamental um servidor, neste caso o Apache.
http://httpd.apache.org/download.cgi
Mas, você pode optar por baixar um suíte que já reúne todos os softwares. Existem
vários, ao longo do curso iremos utilizar o Vertrigo.
http://vertrigo.sourceforge.net/?lang=br
No caso da opção pelo Vertrigo, observe a instalação:
Para instalar é fácil e basta seguir os passos recomendados pelo programa.
Inicie sempre o Vertrigo, antes de começar a trabalhar com o PHP. Caso ele não
consiga iniciar e informe problemas com a porta 80, no Painel de Controle do
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
10
Windows, em Ferramentas Administrativas, e em seguida em Serviços, interrompa
os programas que utilizem esta porta.
Na maioria dos casos são os softwares de comunicação como o Messenger, Skype,
entre outros e também o servidor ISS, caso o tenha.Este modelo de relatório está
completo com estilos para um sumário e um índice.
Também é importante lembrar que nos sistemas operacionais Windows Vista e
Windows 7 (Seven), ao instalar é necessário aplicar as permissões de segurança à
pasta, em Propriedades, na guia Segurança.
Figura 4 - Propriedades do Windows para o Vertrigo
PHP
O PHP é uma linguagem de programação simples e prática. Vamos trabalhar com ele
em conjunto com o HTML. Caso você não esteja muito familiarizado com esta
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
11
linguagem de marcação, aproveite para baixar a apostila de HTML.
http://www.institutosiegen.com.br/is_professor_materia03.php?user_mat03=UnG%
20-%20Ci%EAncia%20da%20Computa%E7%E3o%20-%20Tecnologia%20Web%20I
O que é um aplicativo para web?
Um aplicativo para a web é um site que contém páginas armazenadas em um
servidor com conteúdo parcialmente ou totalmente indeterminado. O conteúdo
final de uma página será determinado somente quando o usuário solicitar uma
página do servidor web. Uma vez que o conteúdo final da página varia de acordo
com cada pedido de ação do usuário, este tipo de página é chamado página
dinâmica.
Os aplicativos para a web são criados para solucionar diversos desafios e
problemas. Esta seção descreve usos comuns de aplicativos para a web e fornece
um exemplo simples.
Como funciona um aplicativo para a web
Um aplicativo para a Web é um conjunto de páginas normais e dinâmicas. Uma
página normal é um página que não é modificada quando solicitada pelo usuário: o
servidor web envia a página ao navegador que a solicitou sem modificá-la. Em
contraste, uma página da web dinâmica é modificada pelo servidor antes de ser
enviada ao navegador. Chama-se página dinâmica devido à sua natureza variável.
Por exemplo: é possível criar uma página para exibir resultados do programa de boa
forma e deixar certas informações (nome do funcionário e resultados) a serem
determinadas quando a página for solicitada por um funcionário.
Processamento de páginas estáticas.
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
12
Figura 5 - Solicitação de HTML
Figura 6 - Processamento de um aplicativo
Então vamos para de papo e começar a programar.
O PHP pode atuar sozinho e gerar páginas HTML sem formatação. Aqui começa.
<?php
//isto é um comentário de uma linha
/*e este suporta várias linhas.
Observe que estes comentários só podem estar dentro do PHP
<?php isto abre o PHP e ?> isto fecha
*/
echo “Olá Mundo!”;//o comando echo (pronucia-se écoh)imprime
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
13
?>
Ok, agora é com você. Imprima a seguinte frase: Professor, você é o cara!
Mas se é para imprimir não tem graça, vamos trabalhar com variáveis:
$variavel = “uma string (valor textual)”;
Então vai ficar assim:
<?php
$variavel = “Bem legal, eu já sei o que é variável!”;
//toda instrução do PHP termina com ;
?>
Ok, ok, ainda continua chato, eu quero interação, eu quero um aplicativo WEB!!!
Vamos criar a seguinte página:
aula1.php
<HTML>
<HEAD>
<TITLE>Aula 1 de PHP</TITLE>
</HEAD>
<BODY>
<h1>Tecnologia Web II</h1>
<h2>Formulário de interação</h2>
<form method="POST">
Nome:<input type="text" name="nome">
<input type="submit" value="Gravar">
</form>
</BODY>
</HTML>
Script 1 - aula 1 – formulário
Figura 7 - Aplicativo renderizado
Muito bem, você notou que a metodologia de envio do formulário é POST, então
para receber os dados do formulário, precisaremos utilizar esta mesma
metodologia.
Para receber os dados o script vai ficar assim:
<HTML>
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
14
<HEAD>
<TITLE>Aula 1 de PHP</TITLE>
</HEAD>
<BODY>
<h1>Tecnologia Web II</h1>
<h2>Formulário de interação</h2>
<form method="POST">
Nome:<input type="text" name="nome">
<input type="submit" value="Gravar">
</form>
<?php
$nome = $_POST['nome'];
echo $nome;
?>
</BODY>
</HTML>
Script 2 - recebimento dos dados e impressão
Mas ocorreu um erro!!!
Figura 8 - Erro de declaração de variável vazia
Veja que interessante, vamos aprender algo com isto. Notice (Aviso!) Indice
indefinido na linha 13.
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
15
Figura 9 - Análise do script
O erro está na linha 13, $nome = $_POST[‘nome’];
Este erro acontece por que foi declarado algo que ainda não foi preenchido, está
vazio. Para corrigir vamos criar uma condição (if/else).
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
16
Figura 10 - Condicional (if/else)
Figura 11 - Resolvido!
Então o script final ficou:
<HTML>
<HEAD>
<TITLE>Aula 1 de PHP</TITLE>
</HEAD>
<BODY>
<h1>Tecnologia Web II</h1>
<h2>Formulário de interação</h2>
<form method="POST">
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
17
Nome:<input type="text" name="nome">
<input type="submit" value="Gravar">
</form>
<?php
if(isset($_POST['Gravar'])){
$nome = $_POST['nome'];
echo $nome;
}
?>
</BODY>
</HTML>
Script 3 – Script com condicional
É importante sempre lembrar: nunca declare algo que ainda estará vazio!
Mas vamos explicar: dentro do PHP o if (se) é seguido de uma condição entre
parênteses if(condição) e uma ação entre chaves if(...){ ação}, o isset (leia is set, se
clicado) analisa se o botão Gravar foi pressionado e o PHP recebe esta informação
pelo comando $_POST (lembra da metodologia de envio do formulário?)Script 1 aula 1 – formulário. Veja que deve ser escrito da mesma forma com letra maiúscula.
Para você observar o formulário interagindo, vamos separar o arquivo em 2.
aula1.php e aula1.1.php.
aula1.php
<BODY>
<h1>Tecnologia Web II</h1>
<h2>Formulário de interação</h2>
<form method="POST" action="aula1.1.php">
Nome:<input type="text" name="nome">
<input type="submit" value="Gravar">
</form>
<?php
if(isset($_POST['Gravar'])){
$nome = $_POST['nome'];
echo "<p>$nome</p>";
}
?>
</BODY>
</HTML>
Script 4 - Envio de informações por formulário
aula1.1.php
<HTML>
<HEAD>
<TITLE>Aula 1 de PHP</TITLE>
</HEAD>
<BODY>
<h1>Tecnologia Web II</h1>
<h2>Formulário de interação</h2>
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
18
<?php
$nome = $_POST['nome'];
echo "<p>$nome</p>";
?>
<a href="aula1.php">Voltar!</a>
</BODY>
</HTML>
Script 5 - Recepção de informações de um formulário
Vamos explicar...
A página aula1.php enviou os dados para página aula1.1.php pela metodologia post
do formulário e a página aula1.1.php recebeu estes dados pelo comando $_POST, o
parâmetro esperado é o nome do campo do formulário da página aual1.php
(Nome:<input type="text" name="nome">) e a página aula1.1.php recebe ($nome =
$_POST['nome'];). Além do post podemos enviar via URL com o método GET,
altere o formulário da página aula1.php para GET e a página aula1.1.php para
$_GET[‘nome’];. Observe a url e manipule diretamente os dados por lá, troque o
nome e pressione F5 (recarregue a página).
Ok. Vamos exercitar!
Crie um formulário de cadastro de currículos. O que deve ter um currículo? Crie um
formulário com todos estes campos (figura 12) e vamos enviá-lo para outra página.
Figura 12 - cadastro de currículo
Prof. Erwin Alexander Uhlmann – www.institutosiegen.com.br
Download

Tecnologia WEB II - Instituto Siegen