Programacao para WEB PHP
Programacao para WEB PHP
Programacao para WEB PHP
Florianópolis
2010
Copyright © 2010, Instituto Federal de Santa Catarina / Sistema ETEC. Nenhuma parte
deste material poderá ser reproduzida, transmitida e gravada, por qualquer meio eletrô-
nico, por fotocópia e outros, sem prévia autorização, por escrito, dos autores.
Inclui Bibliografia
ISBN:
Comissão Editorial:
Hamilcar Boing
Andrino Fernandes
Elaine Luz Barth
Diagramação:
Hudson Ricardo Borges
Capa:
Lucio Baggio
Revisão ortográfica:
Marcos Pessoa
Sumário
Capítulo 1 - Fundamentos ........................................................... 9
1.1 Histórico ......................................................................................... 11
1.2 Fundamentos da programação Web ............................................... 12
1.3 PHP ............................................................................................... 14
continua...
Capítulo 9 - Funções em PHP ....................................................... 77
Tenho certeza que juntos podemos construir uma base sólida de conhecimento e
no decorrer da unidade curricular você estará desenvolvendo seus códigos PHP
para páginas da Internet. Estarei sempre à disposição para dirimir as dúvidas.
Bons estudos!
1
FUNDAMENTOS
Objetivo
Nesta unidade você deverá se inteirar de
um breve histórico sobre programação para
Web, estabelecer diferenças entre este tipo
de programação e as demais, ressaltando
as características da linguagem PHP.
Fundamentos
1.1 Histórico
12
Fundamentos
13
Programação para WEB
1.3 PHP
Construir uma página baseada em banco de dados torna-se uma tarefa ex-
tremamente simples. Também oferece suporte a outros serviços através de
protocolos como IMAP, SNMP, NNTP, POP3 e, logicamente, HTTP. Ainda é
possível abrir sockets e interagir com outros protocolos. (Fonte: http://www6.
ufrgs.br/engcart/PDASR/linguagens.html)
14
Fundamentos
Resumo
Atividades de Aprendizagem
15
CAPÍTULO
2
SINTAXE DO PHP
Objetivo
Nesta unidade você deverá iniciar a es-
crever nossos primeiros códigos reconhe-
cendo como a linguagem está estrutura-
da observando a sintaxe da linguagem
PHP.
Sintaxe do PHP
<html>
<head>
<title>Título da página</title>
</head>
<body>
<?php
echo(“TESTE”);
?>
</body>
</html>
echo é uma função que inclui na página o texto que lhe é pas-
sado como parâmetro. É opcional usar parênteses para passar o
parâmetro. A seguir dois exemplos que surtem o mesmo efeito:
echo(“TESTE”);
echo “TESTE”;
19
Programação para WEB
20
Sintaxe do PHP
Resumo
Atividades de Aprendizagem
21
CAPÍTULO
3
VARIÁVEIS
Objetivo
Nesta unidade você deverá identificar e
aplicar a sintaxe de uso de variáveis, as
primeiras funções em PHP para manipu-
lação de dados e um tipo especial de va-
riável denominado Array.
Variáveis
A linguagem PHP é sensível a caixa, isto quer dizer que uma va-
A linguagem PHP é sensível a caixa, na
riável com nome $IDADE é diferente de outra com nome $ida- declaração de uma variável ou na utiliza-
de. O mesmo vale para os comandos que veremos no decorrer ção de um comando a grafia do texto faz
da Unidade Curricular Programação para Web. diferença. Por exemplo as variáveis $VAR
e $var são diferentes.
<?
//Atribuição do tipo booleano
$var_boolean = true;
//Atribuição de valor inteiro
$var_integer = 10;
//Atribuição de número de ponto flutuante
$var_float = 1.35;
//Atribuição de sequência de caracteres
$var_string = “sequência de caracteres”;
?>
A atribuição ao tipo String pode utilizar aspas simples ao invés das aspas
duplas. Por exemplo:
<?
//Atribuição de sequência de caracteres
$var_string = ‘sequência de caracteres’;
?>
Mas existe uma diferença entre estas duas maneiras de atribuição para Strin-
gs. Quando se utiliza aspas duplas, pode-se incluir dentro do valor uma outra
variável que será incorporada a esta. Por exemplo:
<?
$var1 = “Carlos”;
$var_string = “É $var1 o segundo nome de José”;
//O valor da variável $var_string será: É Carlos o segundo
nome de José
$var_string2 = ‘É $var1 o segundo nome de José’;
//O valor da variável $var_string2 será: É $var1 o segundo
nome de José
echo $var_string;
echo(“<br />”);
echo $var_string2;
?>
26
Variáveis
Se você testou, deve ter notado que não funcionou. Para este caso e
outros utilizamos o caractere de escape, uma contra-barra (\). Para o
código acima funcionar a maneira correta de utilizar seria:
<?
$variavel = “Na linguagem \”PHP\” como usamos aspas duplas?”;
echo $variavel;
?>
27
Programação para WEB
A seguir, uma tabela com alguns dos caracteres que são necessário
para a utilização do escape:
Sequência Significado
\n fim de linha (linefeed ou LF ou 0x0A (10) em ASCII)
\r retorno de carro (carriage return ou CR ou 0x0D (13) em ASCII)
\t TAB horizontal (HT ou 0x09 (9) em ASCII)
\v TAB vertical (VT ou 0x0B (11) em ASCII)
\f form feed (FF ou 0x0C (12) em ASCII)
\\ contra barra ou barra invertida
\$ sinal de cifrão
\” aspas
28
Variáveis
Veja o seguinte exemplo:
<?
$mes1 = 800;
$mes2 = 800;
$mes3 = 800;
$mes4 = 800;
$mes5 = 800;
$mes6 = 800;
$mes7 = 800;
$mes8 = 800;
$mes9 = 800;
$mes10 = 800;
$mes11 = 800;
$mes12 = 800;
$soma = $mes1+$mes2+$mes3+$mes4+$mes5+$mes6+$mes7+$mes
8+$mes9+$mes10+$mes11+$mes12;
?>
<?
$meses = array(800,800,800,800,800,800,800,800,800,800,800,800);
for($i=0;$i<12;$i++) $soma = $meses[$i];
?>
a) Criação de arrays
• Primeira forma:
<?
$nomes = array(0 => “Alice”, 1 => “Barbara”, 2 => “Carlos”, 3 => “Diego”);
?>
29
Programação para WEB
<?
echo $nomes[3];
?>
• Segunda forma:
<?
$nomes = array(“Alice”, “Barbara”, “Carlos”, “Diego”);
?>
Neste caso, cujos índices não são indicados, o PHP adota por padrão nume-
rá-los a partir de zero, ou seja, se desejar acesssar o nome Diego o índice a
ser utilizado será o 3.
• Terceira forma:
<?
$nomes[] = “Alice”;
$nomes[] = “Barbara”;
$nomes[] = “Carlos”;
$nomes[] = “Diego”;
?>
Da mesma forma que o exemplo anterior, neste o PHP adota por padrão
numerá-los a partir de zero.
30
Variáveis
31
Programação para WEB
Resumo
Vimos também:
Atividades de Aprendizagem
32
Variáveis
33
CAPÍTULO
4
OPERADORES
Objetivo
<?
$a = “Olá “;
$b = $a . “mundo!”; // agora $b contém “Olá mundo!”
$a = “Olá “;
$a .= “mundo!”; // agora $a contém “Olá mundo!”
?>
37
Programação para WEB
<?
$a = “Olá”; // $a contém “Olá”
?>
<?
$a = 3;
$a += 5; // configura $a para 8, como se disséssemos: $a = $a + 5;
$b = “Bom “;
$b .= “Dia!”; // configura $b para “Bom Dia!”, como em $b = $b . “Dia!”;
?>
38
Operadores
<?
$a = (true and false);
$b = (true && false);
?>
39
Programação para WEB
<?
echo “<h3>Pós-incremento</h3>”;
$a = 5;
echo “Deve ser 5: “ . $a++ . “<br />\n”;
echo “Deve ser 6: “ . $a . “<br />\n”;
É fundamental o entender o fun-
echo “<h3>Pré-incremento</h3>”;
cionamento do Pré e Pós-incre-
mento. A seguir, um exemplo $a = 5;
recuperado do próprio site oficial echo “Deve ser 6: “ . ++$a . “<br />\n”;
do PHP demonstra a diferença echo “Deve ser 6: “ . $a . “<br />\n”;
quando se utilizam os incremen-
tos nessas duas condições.
echo “<h3>Pós-decremento</h3>”;
$a = 5;
echo “Deve ser 5: “ . $a-- . “<br />\n”;
echo “Deve ser 4: “ . $a . “<br />\n”;
echo “<h3>Pré-decremento</h3>”;
$a = 5;
echo “Deve ser 4: “ . --$a . “<br />\n”;
echo “Deve ser 4: “ . $a . “<br />\n”;
?>
40
Operadores
Resumo
Atividades de Aprendizagem
41
CAPÍTULO
5
ESTRUTURAS DE CONTROLE
DE REPETIÇÃO
Objetivo
<?
$nome = “Igor”; //Instrução 1
$sobrenome = “ Mendonça”; //Instrução 2
echo “O nome do professor é “ . $nome . $sobrenome .
“<br />\n”; //Instrução 3
?>
5.1 if (Se)
45
Programação para WEB
A sintaxe de utilização é:
<?
instrução 0;
if (expressão) {
instrução 1;
} else {
instrução 2;
}
?>
Onde:
A Expressão é avaliada como valor booleano e caso seja verdadeiro (true)
a instrução 1 é executada, caso contrário (else) a instrução 2 é executada.
Acompanhe o fluxograma para o código PHP acima:
5.2 switch
<?
switch ($i) {
case 0:
instrução 1;
break;
case 1:
instrução 2;
break;
case 2:
instrução 3;
break;
default:
instrução 4;
}
?>
47
Programação para WEB
<?
switch ($i) {
case ‘maça’:
echo ‘A fruta escolhida foi maça’;
break;
case ‘banana’:
echo ‘A fruta escolhida foi banana’;
break;
case ‘pera’:
echo ‘A fruta escolhida foi pera’;
break;
default:
echo ‘Nenhuma fruta predefinida foi escolhida’;
}
?>
<?
while (expressão) {
intrução 1;
intrução 2;
intrução 3;
}
?>
“loop infinito” é um termo usado
em computação para indicar que Esta estrutura de controle deve ser usada com muito cuidado. Isto por-
um programa ou código está
executando sem parar. que, se não manipularmos a variável usada na expressão o código fa-
talmente entrará em “loop infinito”. Neste caso, a expressão será sem-
pre verdadeira impedindo que a execução saia da estrutura do while.
48
Estruturas de controle e repetição
<?
$i = 1;
while ($i <= 10) {
echo $i . “ “;
$i++; //esta instrução incrementa a variável $i
}
// O resultado apresentado deverá ser como segue:
// 1 2 3 4 5 6 7 8 9 10
?>
Caso a linha que contém $i++; não existisse o código estaria em loop
infinito.
<?
do {
intrução 1;
intrução 2;
intrução 3;
} while (expressão);
?>
49
Programação para WEB
O mesmo cuidado para não entrar em loop infinido deve ser tomado nesta
estrutura de repetição, pelo mesmo fato da expressão depender de modifi-
cações dentro do próprio loop. O fluxograma que representa esta estrutura
é exibido a seguir.
<?
$i = 1;
do {
echo $i . “ “;
$i++; //esta instrução incrementa a variável $i
} while ($i <= 10);
// O resultado apresentado deverá ser como segue:
// 1 2 3 4 5 6 7 8 9 10
?>
Mas, e se a expressão for modificada nos dois exemplos de ($i <= 10) para
($i < 1)? Haverá diferença no que será exibido na tela?
<? <?
//Exemplo com while //Exemplo com do while
$i = 1; $i = 1;
while ($i < 1) { do {
echo $i . “ “; echo $i . “ “;
$i++; //esta instrução incrementa a $i++;
variável $i } while ($i < 1);
} ?>
?>
<?
for (expressão 1; expressão 2; expressão 3) {
instrução 1;
instrução 2;
}
?>
51
Programação para WEB
Onde,
A expressão 1 é executada somente na primeira iteração.
A expressão 2 é avaliada como booleana a cada iteração e se o valor resul-
tante for verdadeiro as instruções são executadas novamente.
A expressão 3 é executada ao final de cada iteração.
<?
for ($i = 1; $i <= 10; $i++) {
echo $i . “ “;
}
// O resultado apresentado deverá ser como segue:
// 1 2 3 4 5 6 7 8 9 10
?>
Esta estrutura de repetição foi criada para trabalhar exclusivamente com ar-
rays. Apesar de ser possível usar o for comum para executar a mesma tare-
fa, esta estrutura de repetição para arrays torna os códigos mais entendíveis,
apesar de um pouco complexa para entender na primeira vez.
52
Estruturas de controle e repetição
<?
foreach ($array as $valor) {
instrução;
}
?>
Ficou confuso? Acredito que com um exemplo será mais fácil entender.
Suponha que temos um array com 3 itens, por exemplo o array criado
pela instrução a seguir:
<?
$meu_array = array(2, 3, 5); //definição do array
foreach($meu_array as $valor) {
echo “OK “;
}
//O resultado será como segue:
//OK OK OK
?>
Mas a variável $valor não está incluída à toa. Como a estrutura repe-
te a quantidade de vezes do número de itens, em cada repetição esta
variável $valor receberá o valor correspondente do item. Se fizermos
uma simples modificação no exemplo acima poderemos entender me-
lhor, veja:
<?
$meu_array = array(2, 3, 5); //definição do array
foreach($meu_array as $valor) {
echo “ Valor:” . $valor;
}
//O resultado será como segue:
// Valor:2 Valor:3 Valor:5
?>
São três itens, portanto são três iterações. Na primeira iteração a va-
riável $valor recebeu o número 2, na segunda iteração recebeu o
número 3 e na última recebeu o número 5.
53
Programação para WEB
Estas duas instruções podem ser utilizadas dentro das estruturas de repetição
apresentadas até agora. A primeira, break, interrompe o loop e desvia o
fluxo de execução para a linha exatamente após o fim do loop. A segunda
instrução é semelhante à primeira, com a diferença de desviar o fluxo para a
condição da estrutura de repetição.
Exemplo de break.
<?
for ($i = 1; $i <= 10; $i++) {
if($i = 5) {
echo “ - Parar “;
break;
}
echo $i . “ “;
}
// O resultado apresentado deverá ser como segue:
// 1 2 3 4 - Parar
?>
Exemplo de continue.
<?
for ($i = 1; $i <= 10; $i++) {
if($i = 5) {
echo “ - Não irá exibir o cinco - “;
continue;
}
echo $i . “ “;
}
// O resultado apresentado deverá ser como segue:
// 1 2 3 4 - Não irá exibir o cinco - 6 7 8 9 10
?>
54
Estruturas de controle e repetição
Resumo
Atividades de Aprendizagem
55
CAPÍTULO
6
INCLUDE E REQUIRE
Objetivo
Nesta unidade você deverá usar uma instru-
ção do PHP que permite a inclusão de trechos
de código em diversas partes ou arquivos de
um site, bem como, reconhecer as vantagens
de não precisar reescrever trechos usados
em diversas partes do site e o uso de funções
compartilhadas por todas as páginas.
Include e Require
Você acertou se a sua resposta foi: abrir cada página no seu edi-
tor preferido e modificá-las da mesma maneira.
O ideal não seria modificar apenas uma vez e todas as páginas segui-
rem o conteúdo modificado? Acredite, isto é possível com o uso de
include ou require.
<?
//inc.php
$professor = ‘Igor Mendonça’;
$professorC
?>
<?
//pagina.php
include(‘inc.php’);
echo ‘<p>O nome do professor da disciplina de Programa-
ção para Web é ‘ . $professor . ‘</p>’;
echo ‘<p>O professor ‘ . $professorC . ‘ também ministra
a disciplina Desenvolvimento de Homepages’;
?> 59
Programação para WEB
Da mesma forma, este recurso deve ser usado para incluir partes de código
que são utilizados em várias páginas da sua homepage.
60
Include e Require
Resumo
Atividades de Aprendizagem
61
CAPÍTULO
7
TRABALHANDO COM
DADOS DE FORMULÁRIO
Objetivo
Nesta unidade você deverá aprender a
utilizar recursos para a recuperação dos
dados submetidos pelos usuários do site
através de formulários HTML, tais como, a
submissão de cadastros e/ou um formulá-
rio de contato da página
Trabalhando com dados de formulário
65
Programação para WEB
A diferença básica entre os métodos, além do limite de dados no uso
do método GET, é que neste último os dados são enviados na própria
URL da página enquanto que com o uso do método “POST” os dados
ficam ocultos para o usuário.
Note que o endereço da página vai até o ponto de interrogação (?), a se-
guir os dados do método “GET”. Os parâmetros são divididos aos pares
(chave=valor) e separados uns dos outros pelo caractere & (e comercial).
Descrevendo os itens da URL da figura temos:
Código Descrição
http://ead.ifsc.edu.br/etec/user/index.php Endereço da página
contextid=20 Onde a chave é contextid e o valor é 20
roleid=0 Onde a chave é roleid e o valor é 0
id=15 Onde a chave é id e o valor é 15
group= Onde a chave é group e não possui valor
perpage=20 Onde a chave é perpage e o valor é 20
search= Onde a chave é search e não possui valor
sifirst=G Onde a chave é sifirst e o valor é G
Importante: A linguagem PHP possui recursos para recuperar e utilizar
os dados enviados pelo navegador, seja pelo método “POST” ou pelo
método “GET”.
67
Programação para WEB
Resumo
Atividades de Aprendizagem
2. Qual a sintaxe para recuperar o valor de uma variável cujo nome seja id
e o mesmo tenha sido enviado na URL da página?
68
Trabalhando com dados de formulário
69
CAPÍTULO
8
TRABALHANDO
COM SESSÕES
Objetivo
O suporte a sessão permite a você registrar um número arbitrário Um cookie é um pequeno texto que os
de variáveis que serão preservadas entre as requisições. Quando sites podem enviar aos navegadores,
um visitante acessar o seu site, o PHP irá conferir quando um id anexado a qualquer conexão. Nas visitas
posteriores o navegador reenvia os dados
de sessão específico for enviado com a requisição. Se este for o para o servidor dono do cookie.
caso, o ambiente anteriormente salvo é recriado.
<?
//Iniciando a sessão
session_start();
$_SESSION[‘variavel’]=’Texto a armazenar’;
?>
Onde,
<?
//Iniciando a sessão
session_start();
echo $_SESSION[‘variavel’]; 73
?>
Programação para WEB
<?
//Salvar com nome pag1.php
//Iniciando a sessão
session_start();
$_SESSION[‘pag1’]+=1;
$_SESSION[‘pag2’]+=0;
?>
<html>
<head><title>Página Um</title></head>
<body>
<h1>Página Um</h1>
<?
echo ‘<p>Você acessou a página Um ‘ .
$_SESSION[‘pag1’] . ‘ vez(es)</p>’;
echo ‘<p>Você acessou a página Dois ‘
. $_SESSION[‘pag2’] . ‘ vez(es)</p>’;
?>
<p><a href=”pag2.php”>Página Dois</a></p>
</body>
</html>
<?
//Salvar com nome pag2.php
//Iniciando a sessão
session_start();
$_SESSION[‘pag1’]+=0;
$_SESSION[‘pag2’]+=1;
?>
<html>
<head><title>Página Dois</title></head>
<body>
<h1>Página Dois</h1>
<?
echo ‘<p>Você acessou a página Um ‘ .
$_SESSION[‘pag1’] . ‘ vez(es)</p>’;
echo ‘<p>Você acessou a página Dois ‘
. $_SESSION[‘pag2’] . ‘ vez(es)</p>’;
?>
<p><a href=”pag1.php”>Página Um</a></p>
</body>
</html>
74
Trabalhando com sessões
Resumo
Atividades de Aprendizagem
75
CAPÍTULO
9
FUNÇÕES EM PHP
Objetivo
Nesta unidade você deverá reconhecer que
o uso de funções traz inúmeras vantagens
porque permite a reutilização de código e
verificar a possibilidade do uso de funções
com e/ou sem retorno na linguagem PHP.
Funções em PHP
79
Programação para WEB
01 <?
02 //Salvar com nome funcao1.php
03 //Função de saudação
04 function saudacao() {
05 //Verifica que horas é para decidir a saudação
06 $horasdodia = date(‘H’);
07 if($horasdodia < 12) $txtsaudacao = ‘Bom dia!’;
08 if(($horasdodia >= 12) and ($horasdodia < 19)) $txtsaudacao = ‘Boa tarde!’;
09 if($horasdodia >= 19) $txtsaudacao = ‘Boa noite!’;
10 return($txtsaudacao . ‘ Agora é ‘ . date(‘H:i’));
11 }
12 ?>
13 <html>
14 <head><title>Página com Saudação</title></head>
15 <body>
16 <h1>Página com Saudação</h1>
17 Olá usuário,
18 <?
19 $textosaudacao = saudacao();
20 echo $textosaudacao;
21 ?>
22 </body>
23 </html>
Como pode ser visto no código acima, na linha 04 é criada uma função
cujo nome é saudacao e não recebe parâmetros de entrada: function
saudacao(). Este é um bom exemplo de função que não necessita de pa-
râmetros, pois utiliza funções do sistema (recuperação da hora na linha 06)
para realizar algum processamento. Na linha 19 a função é invocada e o seu
retorno é incluído na variável $textosaudacao, na sequência (linha 20)
sendo impressa na página com o uso da função echo.
Nosso próximo exemplo aborda uma função sem retorno, mas recebe
um parâmetro, salve o arquivo com o nome funcao2.php e teste-o.
80
Funções em PHP
01 <?
02 //Salvar com nome funcao2.php
03 //Função para título
04 function titulo($txttitulo) {
05 echo ‘<hr /><h1>’ . $txttitulo . ‘</h1><hr />’;
06 }
07 ?>
08 <html>
09 <head><title>Título da página</title></head>
10 <body>
11 <?
12 titulo(‘Título da página’);
13 ?>
14 <p>Aqui não estou usando função!</p>
15 </body>
16 </html>
81
Programação para WEB
Resumo
Vimos também que as funções estão divididas em dois grupos (funções com
retorno e funções sem retorno) e que elas podem receber parâmetros de en-
trada. Os exemplos mostram como fazer uso destes recursos.
Atividades de Aprendizagem
1. Crie uma função que receba um valor string como parâmetro e retorne a
mesma string concatenada com o seguinte valor ao final “ - teste”
2. Crie uma função que receba dois parâmetros de entrada de valor inteiro e
imprima na tela a soma dos dois valores. Esta função deve ser sem retorno.
82
Funções em PHP
83
CAPÍTULO
10
INTEGRAÇÃO COM
O BANCO DE DADOS
Objetivo
Nesta unidade você deverá ser capaz de
identificar como se da a integração da lin-
guagem PHP com Banco de Dados MySQL,
bem como, realizar as funções básicas, listar
os registros armazenados no Banco de Dados
com a finalidade de incluir novos, atualizar
ou deletar registros existentes.
Integração com Banco de dados
87
Programação para WEB
$conexao = mysql_connect(‘SERVIDOR’,’USUÁRIO’,’SENHA’);
Onde,
Onde,
88
Integração com Banco de dados
A sintaxe de utilização é:
$resultado = mysql_query(SQL);
A variável $resultado irá receber false como resposta se a con-
sulta não for bem sucedida ou receberá um resource caso seja. resourse é um objeto do PHP
Este resource precisará ainda ser transformado num tipo que seja que retém informações sobre um
determinado recurso.
possível a manipulação. Como dito antes, usaremos um comando
para que este resultado seja um array. O comando para executar
essa operação é mysql_fetch_array(resource), cujo pa-
râmetro é o recurso criado com a instrução mysql_query(). A
sintaxe ficaria como segue.
$arrayResultado = mysql_fetch_array($resultado);
89
Programação para WEB
quantidade de registros a consulta retornou. Ela pode ser obtida pela seguin-
te instrução.
$qtdeRegistros = mysql_num_rows(resource );
Onde,
$qtdeRegistros receberá a quantidade de registros que a consulta re-
tornou.
itens desta entidade (tabela). Veja a instrução SQL criada com este ob-
jetivo sendo exibida a seguir.
91
Programação para WEB
Como mencionado antes, após abrir a conexão com o Banco de Dados, sele-
cionar a Base que desejamos usar e enviar a consulta, recebemos um recurso
como resposta. Este recurso é então usado, juntamente com uma estrutura
de repetição (linha 21), que irá criar um array (usando a função mysql_fe-
tch_array) para cada registro da consulta enviada. Esta estrutura de repe-
tição irá se repetir enquanto houver registros no recurso.
93
Programação para WEB
94
Integração com Banco de dados
01 <?
02 //Salvar com nome addCarro.php
03 ?>
04 <html>
05 <head><title>Incluir Carro</title></head>
06 <body>
07 <h1>Incluir Carro</h1>
08 <?
09 //Variáveis com para os dados do formulário
10 $marca = $_POST[‘marca’];
11 $modelo = $_POST[‘modelo’];
12 $cor = $_POST[‘cor’];
13 $ano = $_POST[‘ano’];
14 //Abrir conexão com Banco de Dados
15 $conexao = mysql_connect(‘localhost’,’user’,’S3nh4’);
16 //Selecionar a Base de Dados
17 mysql_select_db(‘Carros’, $conexao);
18 //Enviar a consulta
19 $resultado = @mysql_query(“INSERT INTO Carro (marca, modelo, cor, ano)
20 VALUES (‘$marca’,’$modelo’,’$cor’,$ano)”);
21 //Verificar se o registro foi incluído com sucesso
22 if($resultado) echo ‘<p>Registro incluído com sucesso!</p>’;
23 else echo ‘<p>Problema na execução desta operação!</p>’;
24 echo ‘<p><a href=”javascript:window.history.back();”>
25 Voltar para o formulário</a></p>’;
26 //Fechar a conexão com o Banco de Dados
27 mysql_close($conexao);
28 ?>
29 </body>
30 </html>
95
Programação para WEB
A página a seguir, será a responsável por aplicar a atualização. É ela que está
indicada no action do formulário da página formUpdCarro.html. Como
poderá ser visto, ela é também muito semelhante a do exemplo anterior.
96
Integração com Banco de dados
01 <?
02 //Salvar com nome addCarro.php
03 ?>
04 <html>
05 <head><title>Atualizar Carro</title></head>
06 <body>
07 <h1>Atualizar Carro</h1>
08 <?
09 //Variáveis com para os dados do formulário
10 $idCarro = $_POST[‘idCarro’];
11 $marca = $_POST[‘marca’];
12 $modelo = $_POST[‘modelo’];
13 $cor = $_POST[‘cor’];
14 $ano = $_POST[‘ano’];
15 //Abrir conexão com Banco de Dados
16 $conexao = mysql_connect(‘localhost’,’user’,’S3nh4’);
17 //Selecionar a Base de Dados
18 mysql_select_db(‘Carros’, $conexao);
19 //Enviar a consulta
20 $resultado = @mysql_query(“UPDATE Carro SET marca = ‘$marca’,
21 modelo = ‘$modelo’, cor = ‘$cor’, ano = $ano WHERE id_carro = $idCarro”);
22 //Verificar se o registro foi incluído com sucesso
23 if($resultado) echo ‘<p>Registro atualizado com sucesso!</p>’;
24 else echo ‘<p>Problema na execução desta operação!</p>’;
25 echo ‘<p><a href=”javascript:window.history.back();”>
26 Voltar para o formulário</a></p>’;
27 //Fechar a conexão com o Banco de Dados
28 mysql_close($conexao);
29 ?>
30 </body>
31 </html>
97
Programação para WEB
98
Integração com Banco de dados
99
Programação para WEB
Resumo
Você agora já sabe que a linguagem PHP está habilitada a usar os principais
Bancos de Dados da atualidade e que para conseguir o acesso a um Banco
de Dados (a partir de uma aplicação PHP) são necessárias as informações
da localização do Servidor de Banco de Dados bem como um usuário com
permissões de acesso a Base que queremos usar.
Atividades de Aprendizagem
1. Apesar dos exemplos deste capítulo usarem a mesma base de dados, não
há hiperlinks entre as páginas criadas. Usando o recurso de include ou
require inclua um menu em todas as páginas para que o usuário possa
navegar entre elas, criando o aspecto de um sistema único.
100
Integração com Banco de dados
101