Programação Web (Sql,Php) - anisioteixeira.com.br · Programação Web (Sql,Php) Prof. Luiz...
-
Author
nguyenliem -
Category
Documents
-
view
245 -
download
1
Embed Size (px)
Transcript of Programação Web (Sql,Php) - anisioteixeira.com.br · Programação Web (Sql,Php) Prof. Luiz...

Programação Web (Sql,Php)
Prof. Luiz Claudio Ferreira de Souza
www.luizclaudiofs.blogspot.com

Para o Download do Xampp
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
2

S.O para instalação
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
3

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
4

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
5

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
6

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
7

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
8

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
9

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
10

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
11

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
12

SGDB
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
13

Superação de problemas comuns aos sistemas de arquivos tradicionais pelos
SGDB´s
1. Redundância e inconsistência de dados. Armazenamento de informações redundantes. Essa redundância conduz a altos custos de armazenamento e crescente dificuldade de atualização das informações. Inconsistência: alteração em alguns arquivos e em outros não, ou em todos os arquivos, porém, de maneira independente
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
14

Superação de problemas comuns aos sistemas de arquivos tradicionais pelos
SGDB´s
2. Dificuldade no acesso aos dados
Os dados espalhados em diferentes arquivos isolados não apresentam as facilidades de acesso e processamento das informações dos bancos de dados.
Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 15

Superação de problemas comuns aos sistemas de arquivos tradicionais pelos
SGDB´s
3. Isolamento de dados:
A existência de dados espalhados em diferentes arquivos, que podem apresentar diferentes formatos, dificulta a criação de novos programas aplicativos para a recuperação desses dados
Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 16

Superação de problemas comuns aos sistemas de arquivos tradicionais pelos
SGDB´s
4. Compartilhamento de Dados
Utilizando um SGBD, a noção de compartilhamento de dados está na facilidade de definir visões de usuário, que é usada para especificar a porção da base de dados que é de interesse para um grupo particular de usuários
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
17

Superação de problemas comuns aos sistemas de arquivos tradicionais pelos
SGDB´s
5. Problemas de segurança.
O acesso a determinados dados deve ser restritos para alguns usuários do sistema de informações. Os dados financeiros são frequentemente considerados confidenciais e, desse modo, somente pessoas autorizadas devem ter acesso.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
18

Capacidades do SGDB’s
Fornecimento de Múltiplas Interfaces:
Devido aos vários tipos de usuários, com variados níveis de conhecimento técnico, um SGBD deve fornecer uma variedade de interfaces para atendê-los.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
19

Capacidades do SGDB’s
Reforçar Restrições de Integridade:
muitas aplicações de base de dados terão certas restrições de integridade de dados. A forma mais elementar de restrição de integridade é a especificação do tipo de dado de cada item.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
20

Capacidades do SGDB’s
Fornecer Backup e Restauração:
Um SGBD deve fornecer recursos para restauração caso ocorram falhas de hardware ou software.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
21

Vantagens adicionais dos Bancos de Dados
Potencial para obrigar a Padronização: A abordagem de base de dados permite que o DBA defina e obrigue a padronização entre os usuários da base de dados em grandes organizações. Ex: nomes, elementos de dados, telas, relatórios, terminologias, etc.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
22

Vantagens adicionais dos Bancos de Dados
Flexibilidade:
Mudanças na estrutura de uma base de dados podem ser necessárias devido a mudanças nos requisitos. Por exemplo, um novo grupo de usuários pode surgir com necessidade de informações adicionais, ainda não disponíveis na base de dados.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
23

Vantagens adicionais dos Bancos de Dados
Redução do Tempo de Desenvolvimento de Aplicações:
Tempo reduzido para o desenvolvimento de novas aplicações, como a recuperação de certos dados da base de dados para a impressão de novos relatórios.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
24

Vantagens adicionais dos Bancos de Dados
Disponibilidade de Informações Atualizadas:
Tão logo um usuário modifique uma base de dados, todos os outros usuários “sentem”
imediatamente esta modificação.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
25

Tipos de Usuários do SGDB
Administrador da Base de Dados (DBA):
É o usuário mais especializado de um banco de dados. A administração dos recursos do banco de dados é de responsabilidade do DBA (“Database Administrator ”). O DBA é responsável por autorizar acesso à base de dados e coordenar e monitorar seu uso.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
26

Tipos de Usuários do SGDB
Projetistas da Base de Dados:
Os projetistas de base de dados têm a responsabilidade de identificar os dados a serem armazenados na Base de Dados e escolher estruturas apropriadas para representar e armazenar tais dados.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
27

Tipos de Usuários do SGDB
Analistas de Sistemas e Programadores de Aplicação:
O analistas de sistemas determinam os requisitos de usuários finais, especialmente dos usuários comuns, e desenvolvem especificações das transações para atender a estes requisitos; os programadores de aplicações implementam estas especificações produzindo programas e, então, testam, depuram, documentam e mantêm estes programas.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
28

Tipos de Usuários do SGDB
Usuários Finais:
Existem profissionais que precisam ter acesso à base de dados para consultar, modificar e gerar relatórios. Existem algumas categorias de usuários finais:
usuários ocasionais -> gerentes de médio ou alto-nível
usuários comuns -> estes usuários realizam operações padrões de consultas e atualizações, que foram cuidadosamente programadas e testadas. Estes usuários constantemente realizam recuperações e modificações na base de dados
Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 29

Modelos de Bancos de Dados
1- Modelo em Rede
2- Modelo Hierárquico
3- Modelo Relacional
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
30

Modelos de Bancos de Dados
Modelo em Rede: Um banco de dados em rede consiste em uma coleção e registros concatenados uns aos outros por meio de ligações
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
31

Modelos de Bancos de Dados Modelo Hierárquico: Os registros são conectados numa estrutura de dados em árvore através de ligações de tal modo que cada tipo de registo tenha apenas um possuidor, conforme veremos adiante
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
32

Modelos de Bancos de Dados Se os clientes Maria e Pedro tivessem uma conta conjunta de número 22458, essa conta, de acordo com a regra do modelo hierárquico, não poderia estar ligado a dois clientes ao mesmo tempo, devendo dessa forma, ser duplicada, conforme pode ser visto na Figura
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
33

Modelos de Bancos de Dados Modelo Relacional: A maior vantagem do modelo relacional sobre seus antecessores é a representação simples dos dados e a facilidade com que consultas complexas podem ser expressas.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
34

Modelagem de Dados
Corresponde a descrição dos tipos de informações que estão armazenadas em um banco de dados. Por exemplo, no caso de uma indústria, o modelo de dados poderia informar que o banco de dados armazena informações sobre produtos e que, para cada produto, são armazenados seu código, preço e descrição. Observe que o modelo de dados não informa quais os produtos que estão armazenados.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
35

Modelagem de Dados
DER (Diagrama Entidade Relacionamento)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com 36

Structured Query Language (SQL)
Oferece aos seus usuários e administradores meios de criar definições de dados, bem como manipular esses dados armazenados em suas bases.
SQL é uma linguagem de pesquisa para uso em Banco de Dados Relacional, podendo ser utilizada como linguagem de construção, modificação e acesso a Banco de Dados.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
37

XAMPP
Neste curso, para trabalharmos com o MySQL utilizaremos a ferramenta chamada XAMPP. Esta ferramenta instala e configura o MySQL (banco de dados), o Apache (servidor web) e o PhpMyAdmin (Software de gerenciamento do MySQL) automaticamente.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
38

Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
39

Start do Apache e MySQL
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
40

Neste curso, utilizaremos o PhpMyAdmin que é uma excelente ferramenta para manipulação do MySQL, muito útil principalmente para desenvolvedores web. Ele dispõe de uma série de recursos interessantes para administração do banco de dados.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
41

Na barra de endereço do seu navegador de Internet digite http://localhost/phpmyadmin
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
42

Criando Tabelas No MySQL
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
43

Criando Tabelas No MySQL
CREATE TABLE clientes(
codigo int(4) AUTO_INCREMENT,
nome varchar(30) NOT NULL,
email varchar(50),
data_nascimento date,
PRIMARY KEY (codigo)
)
Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 44

Criando Tabelas No MySQL
• CREATE TABLE é o comando para criação da tabela e deve ser seguida pelo nome que daremos à tabela.
• AUTO_INCREMENT pode ser utilizado para automatizar um código que sirva de chave primária de uma tabela.
• PRIMARY KEY define a chave primária da tabela, isto é, o campo que serve como chave da tabela e que não pode ser repetido.
• NOT NULL define que um determinado campo seja de preenchimento obrigatório.
Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 45

COMANDO PARA INSERIR UM CLIENTE (Registro):
INSERT into clientes VALUES ('','Fulano','[email protected]','1988-08-08')
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
46

Eliminando Tabelas
DROP TABLE CLIENTE
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
47

Alterar o nome da tabela
ALTER TABLE nome_da_table RENAME novo_nome
Exemplo:
ALTER TABLE clientes RENAME cliente
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
48

Adicionar atributos na tabela
ALTER TABLE cliente ADD cidade VARCHAR(20)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
49

Modificar o tamanho de um atributo
ALTER TABLE cliente MODIFY codigo int(5)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
50

Excluindo atributo de uma tabela
ALTER TABLE cliente DROP cidade
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
51

Excluindo Chave Primária
ALTER TABLE cliente DROP PRIMARY KEY
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
52

Definindo chave primária
ALTER TABLE cliente ADD PRIMARY KEY(codigo)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
53

Banco de Dados: Banco
Cod_Cliente -> inteiro, 5 , autoincremento
Nome -> Caractere, 25 , não ficar em branco
Rua -> Caractere, 25,
Cidade -> Caractere, 15
Num_CC -> inteiro, 5
Saldo -> decimal (10,2)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
54

Criação da tabela Cliente
CREATE TABLE Cliente(
Cod_Cliente int(5) AUTO_INCREMENT,
nome varchar(25) NOT NULL,
rua varchar(25),
cidade varchar(15),
PRIMARY KEY (Cod_Cliente)
)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
55

Criação da tabela Conta_Cliente
CREATE TABLE Conta_Cliente(
Cod_Cliente int(5),
Num_CC int(5) NOT NULL
)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
56

Criação da tabela Conta
CREATE TABLE Conta(
Num_CC int(5) NOT NULL,
Saldo dec(10,2)
)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
57

Registros da tabela Cliente
INSERT into cliente VALUES ('','Pedro','A','São Paulo')
INSERT into cliente VALUES ('','Maria','B','Jundiaí')
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
58

Registros da tabela Conta
INSERT into conta VALUES ('20121','1200')
INSERT into conta VALUES ('21582','1320')
INSERT into conta VALUES ('21352','652')
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
59

Registros da tabela Conta_cliente
INSERT into conta_cliente VALUES ('1','20121')
INSERT into conta_cliente VALUES ('2','20582')
INSERT into conta_cliente VALUES ('3','21352')
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
60

Alterando Registro
Ex: Complementar o Nome do cliente Pedro para Pedro Silva
UPDATE <NOME_TABELA>
SET <NOME_COLUNA> = VALOR
WHERE <CONDICAO>;
UPDATE cliente
SET Nome = 'Pedro Silva'
WHERE Cod_Cliente = 1;
Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 61

Inclua mais um Cliente
Incluir o cliente João:
INSERT into cliente VALUES ('', 'João','C', ‘Recife')
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
62

Exclusão de Registros
DELETE FROM <NOME_TABELA>
WHERE <(CONDIÇÃO)>
DELETE FROM CLIENTE
WHERE CIDADE = "Recife"
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
63

Extraindo Dados das Tabelas
SELECT <COLUNAS>
FROM <TABELA>
SELECT Cod_Cliente, Nome, Cidade
FROM CLIENTE
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
64

Inclua mais dois Clientes
Incluir o cliente Peterson:
INSERT into cliente VALUES ('', 'Peterson','D', 'Recife')
Incluir a cliente Joana:
INSERT into cliente VALUES ('', 'Joana', 'E', 'Recife')
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
65

Extraindo Dados das Tabelas
SELECT <COLUNAS>
FROM <TABELA>
SELECT Cod_Cliente, Nome, Cidade
FROM CLIENTE
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
66

Extraindo Dados das Tabelas
Mostrar todas os clientes da Cidade de Recife
SELECT Cod_Cliente, Nome, Cidade
FROM CLIENTE
Where cidade = "Recife"
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
67

Extraindo Dados das Tabelas
Mostrar os clientes do banco com saldo de 1 a 700 Reais
Select num_cc,saldo
From conta
Where saldo between 1.00 and 700.00
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
68

Personal Home Page
PHP
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
69

O que é PHP?
PHP é uma linguagem que permite criar sites WEB dinâmicos, possibilitando uma interação com o usuário através de formulários, parâmetros da URL e links.
Uma das características mais importantes do PHP é o suporte a um grande número debancos de dados, como dBase, Interbase, mSQL, mySQL, Oracle, Sybase, PostgreSQL e vários outros.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
70

O Apache deve ser Iniciado
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
71

Procure a Pasta htdocs na pasta Xampp do seu computador
Crie uma pasta Aula dentro da pasta htdocs.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
72

Digitar no bloco de notas e salvar com o nome primeiro.php na pasta htdocs
na pasta xampp do seu computador
<html>
<head><title>Aprendendo PHP</title></head>
<body>
<?php
echo "Primeiro Script";
?>
</body>
</html> Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 73

Digite no navegador: http://localhost/aula/
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
74

Clique no primeiro.php
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
75

O navegador exibirá o nosso primeiro Script Php!
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
76

O navegador irá mostrar Data e Hora
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
77

Php
<html> <head><title>Aprendendo PHP</title></head> <body> <?php $dia = date("d/m/y"); $hora = date("h:m:s"); echo "Data de Hoje:",$dia; echo " Hora:",$hora; ?> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
78

O navegador irá mostrar Data e Hora, um em cada linha, ou seja, com quebra
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
79

Php
<html> <head><title>Aprendendo PHP</title></head> <body> <?php $dia = date("d/m/y"); $hora = date("h:m:s"); // echo "Data de Hoje: ",$dia; echo "Data de Hoje: ",$dia; echo "<br /> Hora: ",$hora; ?> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
80

Área do retângulo
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
81

Área do retângulo
<html>
<head><title>Aprendendo PHP</title></head>
<body>
<?php
$largura = 5.6;
$altura = 8;
$area = $largura * $altura;
echo "A area do retângulo é ",$area,"cm quadrados";
echo "<br /> ";
echo "<br /> Este Retângulo possui a altura igual a ",$altura,"cm";
echo "<br /> e largura igual a ",$largura,"cm";
?>
</body>
</html> Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
82

Atividade Avaliativa1
Desenvolva um programa em PHP para calcular a área de um triângulo. Ao terminar mostre ao professor!
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
83

Área do triângulo
<html> <head><title>Aprendendo PHP</title></head> <body> <?php $base = 5.2; $altura = 8; $area = $base * $altura/2; echo "A area do triângulo é ",$area,"cm quadrados"; echo "<br /> "; echo "<br /> Este Triângulo possui a altura igual a ",$altura,"cm"; echo "<br /> e base igual a ",$base,"cm"; ?> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
84

Atividade Avaliativa!
Desenvolva um programa em Php para calcular a idade média das pessoas que estão ao seu lado no laboratório de informática! Quando terminar mostre ao professor!
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
85

Média da idade de três pessoas! <html>
<head><title>Aprendendo PHP</title></head>
<body>
<?php
$idade1 = 22;
$idade2 = 18;
$idade3 = 30;
$media = ($idade1+$idade2+$idade3)/3;
echo "A Média das idades da sua bancada é ",$media," anos";
echo " <br /> ";
echo " <br /> As pessoas possuem as seguintes idades: <br />",$idade1," anos ";
echo " <br /> ",$idade2," anos";
echo " <br /> ",$idade3," anos";
?>
</body>
</html> Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 86

Entrada de dados através de Formulários
Entrada de dados -> html Saída de dados -> php
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
87

Html -> Entrada de dados Salve o arquivo com o nome somaform.html
<html> <head><title>Aprendendo PHP</title></head> <body> <form method="post" action="soma.php"> <input type="text" name="n1" /> <input type="text" name="n2" /> <input type="submit" value="Somar" /> </form> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
88

Php -> Saída de dados Salve o arquivo com o nome soma.php
<?php
extract($_POST);
echo $n1+$n2;
?>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
89

Entrada e Saída dos Dados.
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
90

Tipo de triângulo (Html)
<html> <head><title>Aprendendo PHP</title></head> <body> <form method="post" action="tipotriangulo.php"> lado 1 <input type="text" name="l1" /> lado 2 <input type="text" name="l2" /> lado 3 <input type="text" name="l3" /> <input type="submit" value="Verificar" /> </form> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
91

Tipo de triângulo (Php)
<?php extract($_POST); if (($l1==$l2) and ($l2==$l3)) echo "O triângulo é Equilátero"; elseif (($l1==$l2) or ($l1==$l3) or ($l2==$l3)) echo "O triângulo é Isóceles"; else echo "O triângulo é Escaleno"; ?>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
92

Tabela de Multiplicação
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
93

Tabela de Multiplicação
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
94

Entrada de Dados -> Html
<html> <head><title>Aprendendo PHP</title></head> <body> <form method="post" action="tabuadamultiplicacao.php"> De qual numero você deseja a tabuada de multiplicação? <input type="text" name="n" /> <input type="submit" value="Mostrar a Tabela" /> </form> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
95

Saída de Dados -> PhP
<?php extract($_POST); $b=1; while ($b<=10){ echo "<br/>",$b,"X",$n,"=",$b*$n; $b=$b+1; } ?> Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 96

Conversão entre Escalas Termométricas (Celcius para Farenheit)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
97

Resultado da transformação
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
98

html
<html> <head><title>Aprendendo PHP</title></head> <body> <form method="post" action="conversaotermometrica.php"> De qual temperatura na escala Celcius você deseja na escala Farenheit? <input type="text" name="t1" /> <input type="submit" value="Mostrar a conversão" /> </form> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
99

Php
<?php extract($_POST); echo "============================================== "; echo "<br />Conversão Termométrica de ",$t1,"ºC Para a Escala Farenheit"; echo "<br /> ============================================== "; echo ""; $tf=(9*$t1/5)+32; Echo "<br/>", $t1,"ºC -------->",$tf,"ºF"; echo "<br /> ============================================== "; ?>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
100

Tabela de Conversão (Celcius para farenheit)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
101

Tabela de Conversão (Celcius para farenheit)
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
102

html
<html> <head><title>Aprendendo PHP</title></head> <body> <form method="post" action="tabeladeconversao.php"> De qual temperatura inicial você deseja a tabela? <input type="text" name="t1" /> Até qual temperatura você deseja a conversão? <input type="text" name="t2" /> <input type="submit" value="Mostrar a Tabela" /> </form> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
103

PhP <?php
extract($_POST);
echo "============================================== ";
echo "<br />Tabela de Conversão Termométrica de ",$t1," ºC até",$t2," ºC Para Farenheit";
echo "<br /> ============================================== ";
echo "";
while ($t1<=$t2){
$tf=(9*$t1/5)+32;
Echo "<br/>", $t1,"ºC -------->",$tf,"ºF";
$t1=$t1+1;
}
echo "<br /> ============================================== ";
?>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
104

Metros para Centímetros, Milímetros e Kilômetros
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
105

Metros para Centímetros, Milímetros e Kilômetros
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
106

metrosform.html
<html> <head><title>Aprendendo PHP</title></head> <body> <form method="post" action="metros.php"> Qual a medida inicial em metros você deseja converter para centímetros, milimetros e Kilômetros? <input type="text" name="M1" /> Qual a medida final em metros você deseja converter para centímetros, milimetros e Kilômetros? <input type="text" name="M2" /> <input type="submit" value="Mostrar a Tabela" /> </form> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
107

metros.php
<?php extract($_POST); echo "============================================== "; echo "<br />Tabela de Conversão de Metros",$M1," m até ",$M2," m"; echo "<br /> ============================================== "; echo ""; while ($M1<=$M2){ $cm=$M1*100; $mm=$M1*1000; $km=$M1/1000; Echo "<br/>", $M1,"M -------->",$cm,"Cm","-------->",$mm," Mm","-------->",$km," Km"; $M1=$M1+1; } echo "<br /> ============================================== "; ?>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
108

Conexão ao SGDB Mysql para realização de Inclusão, Exibição, Alteração e Remoção de Registros
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
109

Crie a tabela clientes no Banco de Dados test
Criando Uma Tabela CREATE TABLE clientes( codigo int(4) AUTO_INCREMENT, nome varchar(30) NOT NULL, email varchar(50), data_nascimento date, PRIMARY KEY (codigo) )
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
110

Conexão com o Banco de Dados Teste e com a tabela clientes. Salve na pasta Aula com o nome conexao.php
<?php
$host="localhost"; //nome do servidor
$username="root"; //Login Usuário Mysql
$password=""; //Senha do usuario Mysql
$db_name="test"; //Nome do Banco de Dados
$tabela="cliente"; //Tabela Clientes
//conexão com o servidor
//$conect = mysql_connect("$host", "$username", "$password");
$conect = mysql_connect($host, $username, $password);
// Caso a conexão seja reprovada, exibe na tela uma mensagem de erro
if (!$conect)
{
Echo "Falha na conexa com o Banco de Dados!";
exit();
}
// Caso a conexão seja aprovada, então conecta o Banco de Dados.
$db = mysql_select_db("db_name");
if([email protected]_select_db ($db_name))
{
echo "Erro ao conectar ao Banco de dados"; exit();
}
?>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
111

Menu Principal
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
112

Menu Principal -> Salvar o arquivo na pasta aula com o nome index.html
<html>
<title>Projeto Integração com Banco de Dados</title>
<body>
<h1>Menu</h1>
<a href="listarcliente.php">Listar Clientes</a> |
<a href="cadcliente.php">Cadastro de Clientes</a>
</body>
</html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
113

.
.
.
<a href="listarcliente.php">Listar Clientes</a> |
<a href="cadcliente.php">Cadastro de Clientes</a>
.
.
.
Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 114

cadcliente.php
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
115

Nome do arquivo: cadcliente.php Salvar na pasta: aula
<html> <body> <form method="post" action="incluircliente.php"> <a href="listarcliente.php">Listar Clientes</a> <a href="index.php">Voltar</a><br/><br/> <form action="incluircliente.php" method="post"> Nome: <input type="text" name="Nome" maxlength="50"/><br/> Email: <input type="text" name="Email" maxlength="20"/><br/> Data do Nascimento: <input type="text" name="data_nascimento" maxlength="20"/><br/> <input type="submit" name="salvar" value="Salvar" /> </form> </body> </html>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
116

Nome do arquivo: incluircliente.php Salvar na pasta: aula
<?php
//Conectando ao banco
include ("conexao.php");
//traz as variáveis do formulário
//$codcliente = $_POST["codcliente"];
$Nome = $_POST["Nome"];
$Email = $_POST["Email"];
$data_nascimento = $_POST["data_nascimento"];
//if para ver se foi executado com sucesso a query
if (mysql_query("insert into clientes (Nome, Email, data_nascimento) values ('$Nome','$Email','$data_nascimento')"))
{
//exibe a mensagem de Cadastrado e a de voltar a tela anterior
echo "Cadastrado! <br> <a href='javascript:history.back(-1);'>voltar<a/>";
exit;
//Se não, é exibido um erro
}else{
echo mysql_error();
exit;
}
?> Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 117

Listar Clientes
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
118

Nome do arquivo: listarcliente.php Salvar na pasta: aula
<?php
//Conectando
include("conexao.php");
//Fazendo uma busca no Banco de Dados
$sql = mysql_query("SELECT codigo, nome, email, data_nascimento FROM clientes");
echo "Codigo | Nome | E-mail | Data do Nascimento <br>";
//Retorna uma matriz associativa dos dados
while($exibe = mysql_fetch_assoc($sql)){
echo $exibe["codigo"]." | ";
echo $exibe["nome"]." | ";
echo $exibe["email"]." | ";
echo $exibe["data_nascimento"]."<br>";
}
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
119

Acrescentar o Editar e o Remover no listar clientes
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
120

Acrescentar e alterar no arquivo listarcliente.php
<?php
//Conectando
include("conexao.php");
//Fazendo uma busca no Banco de Dados
$sql = mysql_query("SELECT codigo, nome, email, data_nascimento FROM clientes");
echo "--------->Codigo | Nome | E-mail | Data do Nascimento <br>";
//Retorna uma matriz associativa dos dados
while($exibe = mysql_fetch_assoc($sql)){
echo"<a href='#'>Editar</a>";
echo $exibe["codigo"]." | ";
echo $exibe["nome"]." | ";
echo $exibe["email"]." | ";
echo $exibe["data_nascimento"]." | ";
//Passa por parâmetro a linha a ser removida
echo "<a href='removercliente.php?&codigo=".$exibe['codigo']."'>Remover</a> <br>";
}
?>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
121

Remover Registro
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
122

Nome do arquivo: removercliente.php Salvar na pasta: aula
<?php //Conectando ao banco include ("conexao.php"); //envia via Get o código a ser removido ao Banco de Dados $codigo = $_GET["codigo"]; //if para ver se foi removido com sucesso a query if (mysql_query("delete from clientes where codigo='$codigo'")) { //exibe a mensagem de Remoção e volta a tela anterior echo "Removido! <br> <a href='javascript:history.back(-1);'>voltar<a/>"; exit; //Se não, será exibido um erro }else{ echo mysql_error(); exit; } ?>
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
123

Alterar um Registro
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
124

Alterar um Registro
Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
125

Acrescentar e alterar no arquivo listarcliente.php
<?php //Conectando include("conexao.php"); //Fazendo uma busca no Banco de Dados $sql = mysql_query("SELECT codigo, nome, email, data_nascimento FROM clientes"); echo "--------->Codigo | Nome | E-mail | Data do Nascimento <br>"; //Retorna uma matriz associativa dos dados while($exibe = mysql_fetch_assoc($sql)){ echo"<a href='editarclienteform.php?&codigo=".$exibe['codigo']."'>Editar</a>"; echo $exibe["codigo"]." | "; echo $exibe["nome"]." | "; echo $exibe["email"]." | "; echo $exibe["data_nascimento"]." | "; //Passa por parâmetro a linha a ser removida echo "<a href='removercliente.php?&codigo=".$exibe['codigo']."'>Remover</a> <br>"; } ?> Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 126

Nome do arquivo: editarclienteform.php pasta: aula
<html>
<body>
<?php
include("conexao.php");
$codigo = $_GET["codigo"];
$sql = mysql_query("select * from clientes where codigo='$codigo'");
$exibe = mysql_fetch_assoc($sql);
?>
<form method="post" action="editarcliente.php">
<a href="listarcliente.php">Listar Clientes</a>
<input name="codigo" type="hidden" value="<?php echo $exibe["codigo"]; ?>"/>
<a href="index.php">Voltar</a><br/><br/>
<form action="incluircliente.php" method="post">
Nome: <input type="text" name="Nome" maxlength="50" value="<?php echo $exibe["nome"]; ?>"/>
Email: <input type="text" name="Email" maxlength="20" value="<?php echo $exibe["email"]; ?>"/>
Data do Nascimento: <input type="text" name="data_nascimento" maxlength="20" value="<?php echo $exibe["email"]; ?>"/>
<input type="submit" name="Salvar" value="Salvar" />
</form>
</body>
</html> Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 127

Nome do arquivo: editarcliente.php pasta: aula
<?php
//Conectando ao banco
include ("conexao.php");
//traz as variáveis do formulário
$codigo = $_POST["codigo"];
$Nome = $_POST["Nome"];
$Email = $_POST["Email"];
$data_nascimento = $_POST["data_nascimento"];
//if para ver se foi executado com sucesso a query
if (mysql_query("update clientes set Nome='$Nome',Email='$Email',data_nascimento='$data_nascimento' where codigo='$codigo'")){
//exibe a mensagem de Cadastrado e a de voltar a tela anterior
echo "Alterado! <br> <a href='javascript:history.back(-1);'>voltar<a/>";
exit;
//Se não é exibido um erro
}else{
echo mysql_error();
exit;
}
?> Prof. Luiz Claudio F. de Souza
www.luizclaudiofs.blogspot.com 128