curso de gestão da informação prof. dr. daniel a. furtado módulo 5 – web dinâmica com php e...

40
Programação para Internet Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Upload: maria-clara-vasques-padilha

Post on 07-Apr-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para InternetCurso de Gestão da Informação

Prof. Dr. Daniel A. FurtadoMódulo 5 – Web Dinâmica com PHP e MySQL

Universidade Federal de UberlândiaFaculdade de Computação

Page 2: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 2

PHP é uma linguagem de script utilizada no desenvolvimento de páginas Web interativas e dinâmicas;

Scripts em PHP são executados no lado do servidor, diferentemente daqueles em JavaScript, que rodam no lado do cliente (navegador);

Amplamente utilizada e gratuita;

PHP é um acrônimo recursivo para PHP: Hypertext Preprocessor

Linguagem PHP – Introdução

Page 3: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 3

Arquivo PHP (.php) Um arquivo PHP pode conter elementos HTML, texto, CSS, e o

código PHP; O código PHP é executado no servidor, e o resultado é enviado

para o navegador como um arquivo HTML;

O que pode ser feito com PHP Gerar conteúdo de página dinamicamente; Manipular arquivos no servidor; Coletar e manipular dados de formulários; Enviar e receber cookies; Adicionar, atualizar ou remover dados em um banco de dados; Criptografar dados; Controle de acesso;

Linguagem PHP – Introdução

Page 4: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 4

Para utilizar PHP, é preciso: Utilizar um servidor de hospedagem web (web host)

com suporte a PHP; ou Instalar um servidor web no próprio PC e instalar e

configurar o PHP;

Linguagem PHP – Introdução

Page 5: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 5

Um script PHP começa com <?php e terminar com ?>

Linguagem PHP – Sintaxe

<?php

// Código PHP…

?>

Page 6: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 6

Um arquivo PHP normalmente contém tags HTML e código PHP;

A função echo retorna um texto formatado para a página;

Linguagem PHP – Hello Word

1. <!DOCTYPE html>2. <html>3. <body>

4. <h1>Primeira página PHP</h1>

5. <?php6. echo "Hello World!";7. ?>

8. </body>9. </html>10.</html>

Page 7: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 7

Comentários em PHP podem ser inseridos de maneira semelhante a outras linguagens de programação

Comentários em PHP

1. <!DOCTYPE html>2. <html>3. <body>4. <h1>Primeira página PHP</h1>5. <?php

6. // comentário de linha

/* comentário de

bloco */

7. ?>

8. </body>9. </html>10. </html>

Page 8: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 8

PHP não é sensível à caixa (case-sensitive) com respeito às palavras reservadas, nomes de classes e funções;

Entretanto, PHP é sensível à caixa com respeito aos nomes de variáveis;

Sensibilidade à maiúsculas e minúsculas

Page 9: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 9

Em PHP, uma variável começa com o símbolo $, seguido pelo nome propriamente dito;

Não há um comando para declarar uma variável; ela é declarada no momento de sua primeira atribuição;

Declaração de Variáveis

<?php

$x = 10;$y = 2.5;$msg = "um texto qualquer";

?>

Page 10: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 10

O escopo de uma variável é a parte do script onde a variável pode ser acessada;

Em PHP, uma variável pode ser local ou global; Uma variável declarada fora de uma função tem escopo global e

pode ser acessada somente fora das funções (exceto se for utilizada a palavra reservada global para realizar o acesso dentro da função);

Uma variável declarada dentro de uma função tem escopo local e pode ser acessada somente dentro da função;

Escopo de Variáveis

Page 11: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 11

Escopo de Variáveis - Exemplo

1. <?php2. $x = 5; // escopo global

3. function Teste() {4. // acessar x dentro desta função resultará em um erro5. echo "<p>Variável x dentro da função: $x</p>";6.7. // entretanto, ela pode ser acessada desta forma8. global $x;9. echo "<p>Variável x dentro da função (com global): $x</p>";10. }

11. Teste();

12. echo "<p>Variavel x fora da função: $x</p>";13. ?>

Page 12: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 12

PHP suporta os seguintes tipos de dados:

String Integer Float Boolean Array Object NULL Resource

Tipos de Dados

Page 13: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 13

Tipos de Dados

1. <?php

2. $x = 5; // variavel do tipo integer3. $y = -6; // variavel do tipo integer4. $z = 3.14; // variavel do tipo float5. $str = "bla bla bla"; // variavel do tipo string6. $cond = true; // variável booleana

7. $estados = array("MG","SP","RJ"); // array de strings8. echo $estados[0]. "<br>"; // mostra o 1o elemento9. echo $estados[1]. "<br>"; // mostra o 2o elemento

10. ?>

Page 14: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 14

Operadores de Atribuição

Operador Significado

= Atribuição

+= Atribuição com soma

-= Atribuição com subtração

*= Atribuição com multiplicação

/= Atribuição com divisão

%= Atribuição com módulo

Page 15: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 15

Operadores Aritméticos

Operador Significado

+ Adição

- Subtração

* Multiplicação

/ Divisão

% Resto da divisão inteira (módulo)

++ Incremento

-- Decremento

** Exponenciação

Page 16: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 16

Operadores Relacionais e Lógicos

Operador Significado

== Comparação por igualdade

=== Verifica se valores são idênticos (igual e de mesmo tipo)

!= ou <> Diferente

> Maior que

>= Maior ou igual a

< Menor que

<= Menor ou igual a

&& ou and “E” lógico

|| ou or “Ou” lógico

! Negação lógica

Page 17: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 17

Declaração if simples

Declaração if-else

Estrutura Condicional if-else

if (expressão) {// operações a serem executadas// caso 'expressao' seja verdadeira

}

if (expressão) {// operações a serem executadas caso 'expressao' seja verdadeira

}else {

// operações a serem executadas caso 'expressao' seja falsa}

Page 18: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 18

Declarações if-else aninhadas

Estrutura Condicional if-else

if (expressao1) { // ops. a serem executadas caso 'expressao1' seja verdadeira}else if (expressao2) { // ops. a serem executadas caso 'expressao2' seja verdadeira}else if (expressao3) { // ops. a serem executadas caso 'expressao3' seja verdadeira}else { // ops. a serem executadas caso nenhuma expressão seja verdadeira}

Page 19: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 19

PHP também disponibiliza a declaração elseif

Estrutura Condicional if-elseif

if (expressao1) { // ops. a serem executadas caso 'expressao1' seja verdadeira}elseif (expressao2) { // ops. a serem executadas caso 'expressao2' seja verdadeira}elseif (expressao3) { // ops. a serem executadas caso 'expressao3' seja verdadeira}else { // ops. a serem executadas caso nenhuma expressão seja verdadeira}

Page 20: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 20

Permite comparar uma expressão com diversas condições possíveis:

Estrutura Condicional switch-case

switch (expressao) {case condicao1:

// bloco de operaçõesbreak;

case condicao1:// bloco de operaçõesbreak;

...

case condicaon:// bloco de operaçõesbreak;

default:// bloco de operações

}

Page 21: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 21

Exemplo:

Estrutura Condicional switch-case

$corFav = "azul";

switch ($corFav) {case "vermelha":

echo "sua cor favorita eh vermelha";break;

case "azul":echo "sua cor favorita eh azul";break;

case "amarela":echo "sua cor favorita eh amarela";break;

}

Page 22: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Repete um bloco de declarações enquanto uma expressão for verdadeira;

“operação”

Estrutura de Repetição while

while (expressao) {// operações a serem executadas// enquanto 'expressao' for// verdadeira

}

Page 23: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Semelhante à estrutura while, porém a condição é verificada após a execução do bloco de operações;

“operação”

Estrutura de Repetição do-while

do {

// Operações a serem executadas// enquanto 'expressao' for// verdadeira;// Este bloco de operações é sempre// executado pelo menos uma vez

} while (expressao)

Page 24: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

A estrutura for compreende três partes principais: initialization: declaração executada uma única vez, antes do laço ter início;

test condition: condição que é verificada antes de cada execução do bloco de operações; se for verdadeira, o bloco é executado; se for falsa, o laço encerra.

iteration statement: executada após cada execução do bloco de operações.

Exemplo:

Estrutura de Repetição forfor (initialization; test condition; iteration statement) {

// operações a serem executadas caso // 'test condition' seja verdadeira

}

$soma = 0;for ($i=0; $i<10; $i++) { $soma += $i;}echo "A soma dos números de 0 a 10 é $soma ";

Page 25: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Utilizada somente com arrays

Estrutura de Repetição foreach

1. <?php

2. $colors = array("red", "green", "blue", "yellow");

3. foreach ($colors as $value) {4. echo "$value <br>";5. }

6. ?>

Page 26: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 26

Sintaxe:

Exemplo:

Definindo Funções

function nomeFuncao(parâmetros) {

// operações da função

}

...function max($a, $b) { if ($a > $b) return $a; else return $b;}...echo “O maior numero entre 5 e 8 eh: “ . max(5,8);

Page 27: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Exemplo 1: recebendo dados de um formulário HTML

1. <html>2. <body>3. <form action="processaForm.php" method="post">4. Nome: <input type="text" name="nome"><br>5. E-mail: <input type="text" name="email"><br>6. <input type="submit">7. </form>8. </body>9. </html>

Programação para Internet - Prof. Dr. Daniel A. Furtado27

1. <html>2. <body>3. <?php4. $nome = $_POST["nome"]; // o array $_POST armazena os val. dos

campos5. $email = $_POST["email"]; // do formulário enviado pelo método

'post'

6. echo "Bem vindo, $nome! <br>";7. echo "Seu e-mail eh: $email! <br>";8. ?>9. </body>10. </html>

Formulário HTML

Arquivo processaForm.php

Page 28: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 28

O acesso a bancos de dados utilizando o PHP geralmente envolve três etapas:

1. Conexão com o servidor de banco de dados utilizando um nome de

usuário e senha;

2. Execução das operações de dados necessárias, como inserção,

consultas e atualizações no banco de dados;

3. Encerramento da conexão.

PHP e Bancos de Dados

Page 29: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 29

Para testar o script PHP do exemplo a seguir, crie uma tabela no banco de dados utilizando o seguinte código SQL:

PHP e Bancos de Dados

1. CREATE TABLE Aluno2. (3. matricula varchar(50),4. nome varchar(50)5. )

Page 30: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Exemplo 2: Conectado com o MySQL e Inserindo Dados (parte 1)

1. <DOCTYPE html><html><head></head><body>2. <?php3. // Para maior conveniencia, resgata os valores dos campos do 4. // formulario e armazena em variaveis5. $nome = $_POST["nome"];6. $matricula = $_POST["matricula"];

7. // Dados para conexao com o MySQL8. $servername = "fdb7.awardspace.net"; // endereço do servidor MySQL9. $username = "1875689_daniel"; // usuario do MySQL10. $password = "FACOM39802"; // senha do usuario11. $dbname = "1875689_daniel"; // nome do banco de dados

12. // Cria uma conexao com o MySQL e seleciona o 13. // banco de dados de nome 1875689_daniel14. $conn = new mysqli($servername, $username, $password, $dbname);

15. // continua no proximo slide... Programação para Internet - Prof. Dr. Daniel A. Furtado30

1. <html>2. <body>3. <form action="processaForm.php" method="post">4. Nome: <input type="text" name="nome"><br>5. E-mail: <input type="text" name="email"><br>6. <input type="submit">7. </form>8. </body>9. </html>

Arquivo HTML

Arquivo PHP

Page 31: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

1. // Se um erro ocorreu durante a conexao, encerra o script2. // e apresenta a mensagem de erro3. if ($conn->connect_error) {4. die("Falha na conexão com o MySQL: " . $conn->connect_error);5. } 6. echo "Conectado ao MySQL";

7. // Comando SQL para insercao dos dados do formulario na tabela Aluno

8. $sql = "INSERT INTO Aluno (matricula, nome)9. VALUES ('$matricula', '$nome')";

10. // Executa o comando SQL de insercao e verifica11. // se houve sucesso na operacao12. if ($conn->query($sql)) 13. echo "Dados inseridos com sucesso!";14. else 15. echo "Erro na execucao de: " . $sql . "<br>" . $conn->error;

16. // Encerra a conexao com o MySQL17. $conn->close();18. ?>19. </body></html>

Programação para Internet - Prof. Dr. Daniel A. Furtado31

Exemplo 2: Conectado com o MySQL e Inserindo Dados (parte 2)

Page 32: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

1. <DOCTYPE html><html><head></head><body>2. <?php3. ...Conexao com o MySQL, como no exemplo anterior

4. // Consulta SQL a tabela Alunos5. $sql = "SELECT * FROM Aluno";6. $resultado = $conn->query($sql);7. if (!$resultado)8. die("Ocorreu um erro ao executar a consulta: " . $conn-

>error);9.10. if ($resultado->num_rows > 0)11. {12. echo "<h1>Conteudo da tabela Aluno:</h1>";13. echo "<table border=1>\n";14. echo "<thead><th>Matricula</th><th>Nome</th></thead>\n";15.16. // Navega pelo resultado da consulta, linha a linha.17. // O metodo fetch_assoc constroi um array associativo18. // para a linha corrente do resultado.19. while ($row = $resultado->fetch_assoc()) 20. { 21. echo "<tr>";22. echo "<td>".$row["matricula"]."</td>";23. echo "<td>".$row["nome"]."</td></tr>";24. } 25. echo "</table>"; 26. }27. else28. echo "Nenhum dado na tabela Aluno";

29. ...Encerrar conexao e fechar HTML Programação para Internet - Prof. Dr. Daniel A. Furtado32

Exemplo 3: Apresentando os dados da tabela Aluno em uma tabela HTML

Page 33: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

É importante destacar que o exemplo anterior não trata qualquer questão relacionada à segurança dos dados e da página;

O objetivo do exemplo é mostrar uma conexão simples e direta com o MySQL;

Exemplo de Conexão com o MySQL

Page 34: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Exemplo 4: Formulário com elementos Radio, Checkbox, Date

Page 35: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Código SQL

Para tornar este exemplo mais simples, os interesses do cliente serão concatenados e armazenados em um único campo (o que não seria uma boa prática em uma situação real);

Exemplo 4 - Criação da tabela para armazenar os dados dos clientes

1. CREATE TABLE Cliente2. (3. cpf char(12) primary key,4. nome varchar(50) NOT NULL,5. sexo char NOT NULL,6. dataNasc date,7. nroFilhos int,8. telefone char(10),9. interesses varchar(100)10. );11.

Page 36: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Exemplo 4 - Criação da tabela para armazenar os dados dos clientes

1. <td>2. Interesses: <br>3. <input type="checkbox" name="interesses[]" value="Esportes">Esportes<br>4. <input type="checkbox" name="interesses[]" value="Cinema">Cinema<br>5. <input type="checkbox" name="interesses[]"

value="Automobilismo">Automob.<br>6. <input type="checkbox" name="interesses[]" value="Viagens">Viagens7. </td>

No formulário HTML, os campos do tipo checkbox devem receber um nome seguido de colchetes (no PHP, será criado um vetor para armazenar os itens selecionados)

Page 37: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

1. ... Cabecalho HTML

2. include "dadosConexao.php";

3. $nome = $_POST["nome"];4. $cpf = $_POST["cpf"];5. $dataNascimento = $_POST["dataNascimento"];6. $sexo = $_POST["sexo"];7. $fone_ddd = $_POST["fone-ddd"];8. $fone_nro = $_POST["fone-numero"];9. $telefone = $fone_ddd . $fone_nro;10. $num_filhos = $_POST["num-filhos"];11.12. $interesses = "";13. if (isset($_POST["interesses"]))14. {15. foreach ($_POST["interesses"] as $value)16. $interesses = $interesses . $value . ";";17.18. $interesses = rtrim($interesses, ";");19. }

20. // mostra a data de nascimento. Observar formato!21. echo "Data de nascimento: $dataNascimento";22.23. $db = new mysqli($servername, $username, $password, $dbname);24. if ($db->connect_error)25. die("Connection failed: " . $db->connect_error);

26. $sql = "INSERT INTO Cliente (cpf, nome, sexo, dataNasc, nroFilhos, telefone, interesses) VALUES ('$cpf', '$nome', '$sexo', '$dataNascimento', $num_filhos, '$telefone', '$interesses')";

Programação para Internet - Prof. Dr. Daniel A. Furtado37

Exemplo 4: Recebendo dados de formulário e inserindo na tabela cliente

Page 38: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

1. $sql = "SELECT cpf, nome FROM Cliente";2. $resultado = $conn->query($sql);3. if (!$resultado)4. die("Ocorreu um erro ao executar a consulta: " . $conn->error);5.6. if ($resultado->num_rows > 0)7. {8. echo "<h1>Clientes Cadastrados</h1>\n";9. echo "<table border=1>\n";10. echo "<thead><th>CPF</th><th>Nome</th><th></th></thead>\n";11. while ($row = $resultado->fetch_assoc()) 12. {13. $cpf = $row["cpf"];14. $nome = $row["nome"];15. echo "<tr>";16. echo "<td>$cpf</td><td>$nome</td>";17. echo "<td><a

href=modificaCliente.php?cpf=$cpf>Modificar</a></td>"; echo "<tr>"; } }

Exemplo 5: Passando argumento pelo método GET

Page 39: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

1. <?php2. $cpf = $_GET['cpf'];3.4. echo "cpf recebido: " . $cpf;5. $sql = "SELECT nome , nroFilhoes6. FROM Cliente7. WHERE cpf = '$cpf'";8.9. $resultado = $conn->query($sql);10. if (!$resultado)11. die("Ocorreu um erro ao executar a consulta: " . $conn->error);12.13. $row = $resultado->fetch_assoc();14. $nome = $row["nome"];15. $nroFilhos = $row["nroFilhos"];16. ?>

17. <!DOCTYPE html>18. <html>19. <head>20. <meta charset="UTF-8">21. <title>Cadastro de Cliente</title>22. <link rel="stylesheet" href="style.css" type="text/css">23. </head>24. <body>25. ...26. <td>27. Nome: <br>28. <input type="text" name="nome" value="<?php echo $nome; ?>">29. </td>

Arquivo modificaCliente.php

Page 40: Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 5 – Web Dinâmica com PHP e MySQL Universidade Federal de Uberlândia Faculdade de Computação

Programação para Internet - Prof. Dr. Daniel A. Furtado 40

www.w3schools.com

Referências