PHP com Banco de Dados SQL



Documentos relacionados
Treinamento em PHP. Aula 1. Ari Stopassola Junior

Programação Web com PHP. Prof. Wylliams Barbosa Santos Optativa IV Projetos de Sistemas Web

2 echo "PHP e outros.";

Introdução ao PHP. Prof. Késsia Marchi

Programação Web Prof. Wladimir

Integrantes: Catarino Rodrigues Data: 26/10/2012. Leandro de Matos Pereira. Leandro dos Santos Marciano. Ramon Alves de Souza

JDBC Java Database Connectivity

Exemplo de uma barra de navegação onde foi usado o behavior Rollover Image. Realizado por Eduardo Rodrigues para o site zoom.pt.

UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET. Programação para Internet I

Programação e Designer para WEB

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

Linguagem de Programação. Introdução ao PHP. Prof Mauricio Lederer Ciência da Computação - UNIANDRADE 1

Sumário. Capítulo 1 O que é o PHP? Capítulo 2 Instalação do PHP Capítulo 3 Noções básicas de programação... 25

HTML / JAVASCRIPT. A versão atual é o HTML5 (seus predecessores imediatos são HTML 4.01, XHTML 1.1, etc.).

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

Programação WEB. Prof. André Gustavo Duarte de Almeida docente.ifrn.edu.br/andrealmeida. Aula III Introdução PHP

Faça um Site PHP 5.2 com MySQL 5.0 Comércio Eletrônico

Programação Web Prof. Wladimir

PHP. Hypertext Pre-Processor

APOSTILA DE LINGUAGEM DE PROGRAMAÇÃO IV

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc.

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc.

Escrito por Sex, 14 de Outubro de :12 - Última atualização Seg, 26 de Março de :33

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Conteúdo Programático de PHP

Algoritmos em Javascript

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre

English Português. By erickalves 25 Julho, :08. Devido à política (#) de segurança. Encontrar Blogs Crie o seu blog de graça Ganhe prêmios

Desenvolvendo Websites com PHP

Guia de Consulta Rápida. PHP com XML. Juliano Niederauer. Terceira Edição. Novatec

GUIA PHP com MYSQL Autor: Everton Mendes Messias

PHP INTEGRAÇÃO COM MYSQL PARTE 2

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP

Desenvolvendo Websites com PHP

PHP (Seções, Cookies e Banco de Dados)

Organizar a estrutura do site

Introdução a PHP (Um Programa PHP)

Desenvolvimento de Sistemas Web Prof. Leandro Roberto. Aula 18 JavaScript: Eventos MySQL PHP (insert, update e delete)

Construindo um sistema simples de cadastro de fornecedores em PHP e MySQL.

Tecnologia WEB III. Prof. Erwin Alexander Uhlmann. PHP e MySQL. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

Internet e Programação Web

Características do PHP. Começando a programar

SQL Structured Query Language

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2

Aula 03 - Projeto Java Web

Lista de operadores de comparação - > Maior que - < Menor que - <= Menor ou igual a - >= Maior ou igual a - === Igual a -!


Treinamento em PHP. Aula 7. Ari Stopassola Junior

Principais Comandos SQL Usados no MySql

Internet e Programação Web

Web Design. Prof. Felippe

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Desenvolvimento em Ambiente Web. HTML - Introdução

Sensor de temperatura Parte 5 Cleiton Bueno Preparando o ambiente do Banco de dados Mysql

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL

Sistema de Informação para Coleções de Interesse Biotecnológico

TECNOLOGIA WEG II PHP com SGBD MYSQL

Curso PHP Aula 08. Bruno Falcão

Para testar seu primeiro código utilizando PHP, abra um editor de texto (bloco de notas no Windows) e digite o código abaixo:

1. Introdução. 2. A área de trabalho

World Wide Web e Aplicações

PHP AULA1. Prof. Msc. Hélio Esperidião

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:

Instituto Federal do Sertão-PE. Curso de PHP. Professor: Felipe Correia

ESTUDO SOBRE AS LINGUAGENS DE PROGRAMAÇÃO HOSPEDEIRAS SUPORTADAS PELA FERRAMENTA HTML. Aluno: Rodrigo Ristow Orientador: Wilson Pedro Carli

UM NOVO CONCEITO EM AUTOMAÇÃO. Série Ponto

Escrito por Sáb, 15 de Outubro de :19 - Última atualização Seg, 26 de Março de :32

Leonardo Gresta Paulino Murta

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Banco de Dados. Prof. Antonio

Tecnologia WEB II. Prof. Erwin Alexander Uhlmann. Introdução ao PHP. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.

WWW - World Wide Web

LINGUAGEM DE PROGRAMAÇÃO WEB

EXERCÍCIOS PRÁTICOS. Banco de Dados

APOSTILA DE PHP. Assuntos a serem abordados:

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Desenvolvimento de Aplicações Web. Prof. José Eduardo A. de O. Teixeira / j.edu@vqv.com.br

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique.

PROGRAMAÇÃO PARA INTERNET. Fonte: Raul Paradeda

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

DESENVOLVIMENTODE APLICAÇÕESPARAINTERNET:PHP. VitorFariasCoreia

PROGRAMAÇÃO EM BANCO DADOS Stored Procedure e Trigger

AULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS

Programação WEB II. Sessions e Cookies. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

MYSQL BÁSICO. 12 Horas Instrutor: Antonio Itamar Júnior

Programação Web Prof. Wladimir

Desenvolvimento de Aplicações para Internet Aula 11

Plano de Aula - Dreamweaver CS6 - cód Horas/Aula

Transcrição:

com Banco de Dados SQL 1

com Banco de Dados SQL IX Seminário de Tecnologia Funcesi 2009 2

PROGRAMAÇÃO O que é HTML? Sites dinâmicos Prática 1: Uso básico do Sothink (Editor HTML) Prática 2: Conexão com MySQL (Inserção de Tupla) 3

O QUE É HTML? 4

O QUE É HTML? HTML HYPERTEXT MARKUP LANGUAGE É o elemento primário de uma página Web Sintaxe faz uso de Tags (marcações). Ex.: <html> </html> <body> </body> É uma linguagem de interpretação Não é compilável Necessita de um Browser para interpretar o código. Ex: Internet Explorer, Mozilla Firefox ou Netscape É naturalmente estático = não é autoatualizável. 5

O QUE É HTML? 6

O QUE É HTML? 7

O QUE É HTML? 8

O QUE É HTML? 9

DERIVAÇÕES DO HTML XML Extensible Markup Language (Linguagem Extensiva de Marcação). Semelhante ao HTML => permite personalização dos elementos (tags) <moradores> <casa> <nome>fernando</nome> </casa> </moradores> 10

DERIVAÇÕES DO HTML XHTML Extensible Hypertext Markup Language (Linguagem Extensiva de Marcação de Hipertexto). É uma reformulação do HTML Pode ser estendido pelo programador, ampliando as Tags pré-definidas Foi incluído o CSS Cascade Style Sheets (Páginas em estilo de cascata) Permite, entre outros, a personalização de leiaute de forma a aplicar o padrão do usuário a todas as páginas HTML. 11

FERRAMENTAS DE SUPORTE JAVASCRIPT. <script language="javascript" type="text/javascript"> <!-- function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.mm_p) d.mm_p=new Array(); var i,j=d.mm_p.length,a=mm_preloadimages.arguments; for(i=0; i<a.length; i++) if (a[i].indexof("#")!=0){ d.mm_p[j]=new Image; d.mm_p[j+ +].src=a[i];}} } function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexof("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(! (x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i] [n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=mm_findobj(n,d.layers[i].document); if(!x && d.getelementbyid) x=d.getelementbyid(n); return x; } </script> FLASH 12

O QUE É HTML? <script language="javascript" type="text/javascript"> <!-function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.mm_p) d.mm_p=new Array(); var i,j=d.mm_p.length,a=mm_preloadimages.arguments; for(i=0; i<a.length; i++) if (a[i].indexof("#")!=0){ d.mm_p[j]=new Image; d.mm_p[j++].src=a[i];}} } function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexof("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;! x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;! x&&d.layers&&i<d.layers.length;i++) x=mm_findobj(n,d.layers[i].document); if(!x && d.getelementbyid) x=d.getelementbyid(n); return x; } Caramba, então terei que aprender tudo isso? E o? </script> 13

O QUE É HTML? CALMA RELAXE. É para isso que existem ferramentas próprias para desenho de páginas, sem termos muito que entender de HTML. Ex: Front Page, Dreamweaver, Sothink etc. 14

O QUE É HTML? Entretanto, o HTML apresenta as páginas com o conteúdo (textos, figuras, imagens, sons etc.) prédefinido e na ordem programada. LINGUAGEM DE MARKUP ESTÁTICA É limitado! 15

O QUE É HTML? RESUMINDO O HTML nada mais é do que um meio de apresentar páginas, via navegadores de WEB (Browsers), com códigos que são interpretados no momento de exibí-los. Todo conteúdo é apresentado na ordem de chamada dos códigos (tags). Portanto, trata-se de uma exibição de conteúdo pré-programada = estática. Ele não tem tags capazes de alterar, dinamicamente, o conteúdo, como consulta e exibição de informações a partir de banco de dados. Cuja deficiência, POR EXEMPLO, pode ser suprida pelo com um Banco de Dados SQL. 16

SITES DINÂMICOS 17

SITES DINÂMICOS Páginas com conteúdo variável que demandam aplicações de recursos dinamicamente apresentados. 18

SITES DINÂMICOS Para exibir conteúdos sob demanda, como por exemplo, apresentar a foto e os dados de um determinado produto de uma empresa, solicitados por um internauta, é preciso de uma apresentação DINÂMICA, com consulta a Banco de Dados. CONTEÚDO DINÂMICO E para conversar com Banco de Dados e o HTML usase uma linguagem para prover esses serviços. Ex: ASP (.NET MS), Perl, JSP, Coldfusion, etc. 19

SITES DINÂMICOS ASP Active Server Pages Microsoft. É nativo do Windows. Pode rodar em outras plataformas (P.Ex: Unix), mas tende a gerar problemas. Tem que ser comprado. Fácil de implementar e é muito usado no mercado. PERL Practical Extraction and Reporting Language É gratuito. Sintaxe complexa. Não tem suporte oficial (comunidade presta ajuda). 20

SITES DINÂMICOS Personal Home Page Roda em Windows, Linux, Unix. É gratuito. É fácil de usar (sintaxe simples). Não conta com suporte oficial (comunidade presta ajuda). 21

22

BREVE HISTÓRICO Rasmus Lerdof (1994) Consultor de Empresas (desempregado) Enviava currículo para empresas com script em PERL, para controle de número de visitantes de sua página. Depois criou um conjunto de ferramentas para exibir estes dados (Personal Home Page) Tools (linguagem C). Andi Gutmans e Zeev Surashi (1997) Reescreveram o código do engine corrigindo alguns erros. Comunidade e os dois alunos árabes (2000) Incrementam e reescrevem o código outras vezes. 3, 4 23

COMO FUNCIONA? 24

ANTES DE COMEÇAR Nunca use um editor (p.ex.: Word ou Wordperfect) Todas as páginas em devem ter a extensão.php Todo início de tag em deve começar com <? e terminar com?> Todo comando deve terminhar com ; As variáveis são tipificadas dinamicamente e devem começar com $ 25

ANTES DE COMEÇAR O código não é mostrado quando pedimos a exibição do código fonte, pelo Browser (proteção). é case sensitive! 26

27

28

29

1. VARIÁVEIS (Tipificação Dinâmica) <? $comeco = Aprendendo ; $valor = 2 + 3; $valor-; Echo $comeco $valor ;?> Aprendendo 4 30

2. CONCATENAÇÃO DE VARIÁVEIS <? $valor = 4; $comeco = Aprendendo ; echo $comeco..$valor;?> Aprendendo 4 31

3. CONSTANTES define( pi, 3.1416); $circunferência = 2 * pi * $raio; 32

ARITMÉTICOS LÓGICOS + * / % 4.- OPERADORES and, or, xor,!, &&, COMPARATIVOS INCREMENTO / DECREMENTO ==!= > >= < <= ++, -- 33

5. USO DE ASPAS <? $nome = Fernando ; $mostra1 = Meu nome é $nome! ; // aspas duplas $mostra2 = Meu nome é $nome! ; // aspas simples echo $mostra1 este é o resultado das aspas duplas <br> ; Echo $mostra2 este é o resultado das aspas simples. ;?> Meu nome é Fernando! este é o resultado das aspas duplas. Meu nome é $nome! este é o resultado das aspas simples. 34

6. ARRAYS $fruta[] = pera ; $fruta[2] = laranja $prefiro[ animal ] = Cachorro ; $matriz[0][1] = 1 célula da linha 1 ; $matriz[0][1] = 2 célula da linha 1 ; 35

7. ESTRUTURAS DE CONTROLE REPETITIVAS FOR - Sintaxe: for ([variável] = [valorinicial]; [condição término]; [passo] ) { } for ($I = 0; $I < 10; $I++) { echo Esta é a linha $I <br> ; } 36

8. ESTRUTURAS DE CONTROLE REPETITIVAS WHILE - Sintaxe: while ([condição término]) { } $I = 0; while ($I < 10) { $I++; echo Esta é a linha $I <br> ; } 37

9. ESTRUTURAS DE CONTROLE REPETITIVAS DO WHILE - Sintaxe: do { } while ([condição término]); $I = 0; do { $I++; echo Esta é a linha $I <br> ; } while ($I < 10); 38

10. ESTRUTURAS DE DESVIO (CONDICIONAIS) IF - Sintaxe: if ([condiçao]) { } [ elseif ([outra condiçao]) { } ] [ else { } ] If ($idade > 20) { echo Você é de maior. ; } else { echo Você é de menor. ; } 39

11. ESTRUTURAS DE DESVIO (CONDICIONAIS) Outra sintaxe: (([condição])? [valorcondicaoverdadeira] : [valorcondicaofalsa] $sexo = F ; echo (($sexo == M )? Você é homem : Você é mulher ); Você é mulher 40

12. ESTRUTURAS DE DESVIO (CONDICIONAIS) SWITCH - Sintaxe: switch ([variável]) { [ case [condição] : [comandos] break; ] default : [comandos] }; $idade = 15; switch ($idade) { case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: case 10: case 11: case 12: case 13: case 14: case 15: case 16: case 17: echo Você ainda é de menor ; break; default: Você atingiu a maioridade ; } Você ainda é de menor 41

13. FUNÇÕES FUNCTION - Sintaxe: function NOMEFUNC ($aluno, $curso = SI ) { echo O aluno $aluno estuda $curso ; return valor de retorno ; }; Nota: o segundo parâmetro desta função foi definido como default, quer dizer, se não passarmos nenhum valor, assume que $curso = SI. Se passarmos algum valor, assumirá o valor passado. 42

14. SAÍDA echo Mostra na tela ; print imprime ; 43

15. CRIANDO ARQUIVO DE CONEXÃO: conf_bd.php <? $bd = "localhost"; $bdusuario = "root"; $bdsenha = "masterkey"; $nomebanco = "aulaphp"; $url = "http://localhost/";?> 44

16. EXEMPLO DE PROGRAMA CONSULTA USANDO conf_bd.php <? // inclui comandos escritos no arquivo de configuração chamado CONF_BD. require_once("conf_bd.php"); // realiza conexao $conexao = mysql_connect($bd,$bdusuario,$bdsenha) // ("localhost", "root", "vertrigo") or die("banco de dados não acessível!"); // define SQL para consulta todos alunos cadastrados $sql1 = "SELECT * FROM aluno;"; 45

// envia requisição SQL para consulta (backend) e joga array na variável $res1 $res1 = mysql_db_query($nomebanco, $sql1, $conexao) or die ("Não foi possível conectar ao Banco de dados."); echo "Cod. Aluno Curso <br>"; // faça enquando houver um valor na matriz $res1, armazenando como linhas while ($valor = mysql_fetch_row($res1)) { echo "$valor[0] $valor[1] $valor[2] <br>"; } // libera ou limpa variável $res1 da memória mysql_free_result($res1); mysql_close($conexao);?> 46

17. ALGUNS COMANDOS BÁSICOS PARA MySQL mysql_connect([nomebanco],[usuário],[senha]); // Conecta ao banco de dados mysql_close([nomeconexão]); // fecha a conexão mysql_query([sql],[nomeconexão]); // envia uma query mysql_fetch_row([resultado sql]); mysql_free_result([resultado sql]); // libera a memória 47

18. CONECTANDO E INSERINDO TUPLA NO MySQL <? // inclui configuração de banco-de-dados include_once("conf_bd.php"); // estabelece conexão com o banco de dados $conexao = mysql_connect($bd,$bdusuario,$bdsenha) or die("impossível conectar"); // conecta-se ou imprime erro // cria a sql de insert $sql = "insert into aluno (codalu, nome, curso)"; $sql.= " values (". $codalu. ", '". $nome. "', '. $curso. "')"; $resultado = mysql_query($sql,$conexao); or die ("Impossível gravar dados"); // grava tupla ou erro / / Envia commit e fecha BD mysql_commit($conexao); mysql_close($conexao); }?> 48

PRÁTICA 1 Instalando o Vertrigo ou Wamp 49

PRÁTICA 1 Uso básico do Sothink 50

51

PRÁTICA 2 52

PRÁTICA 1 IMPORTANTE! Para que os conteúdos das variáveis do HTML (ou ) sejam passados para a próxima página de, todas as suas declarações e entradas têm que estar dentro da área de formulário. 53

PRÁTICA 2 Post = Não mostra os parâmetros na tela Get = Expõe os parâmetros 54

55

56

57

O QUE É HTML? 58

59

PRÁTICA 2 Produzir página para inserção de aluno (tupla) com conexão MySQL 60

PRÁTICA 3 Produzir página para exibir todos os alunos cadastrados 61

ALGUNS COMANDOS SQL Criar tabelas create table TABELA1 ( CODREGISTRO smallint not null auto_increment, CAMPO2 char(50) not null, CAMPO3 char(20) null, CODAUX smallint not null, primary key (CODREGISTRO), foreign key (CODAUX) references TABELA2 ); 62

ALGUNS COMANDOS SQL Inserir Tuplas insert into TABELA1 (CODREGISTRO, CAMPO2, CAMPO3, CODAUX) values (1, VALOR2, VALOR3, 4); commit; // salva inserções do buffer para o BD rollback; // desconsidera tuplas inseridas armazenadas em buffer. 63

ALGUNS COMANDOS SQL Consultas simples select * from TABELA1; // seleciona todos os campos da Tabela1 select CODREGISTRO, CAMPO2 from TABELA1; // seleciona só os campos CODREGISTO e CAMPO2 da Tabela1 select CODREGISTRO from TABELA1 where CAMPO2 = Fernando ; // seleciona só os campos CODREGISTO da Tabela1 onde CAMPO2 = 'Fernando' 64

ALGUNS COMANDOS SQL Consultas compostas select * from ALUNO where CODCURSO = (select CODCUR from CURSO where NOMECURSO = SI ); // seleciona todos os campos da tabela ALUNO, cujos CODCURSO sejam iguais a SI, presentes no campo NOMECURSO, da tabela CURSO (subconsulta). 65

ALGUNS COMANDOS SQL Funções Agregadas count = conta os registros (linhas). sum = soma o conteúdo númerico, totaliza. AVG = calcula a média aritmética. max = pega o maior valor. Min = pega o menor valor. Exemplos: select count(matalu) from aluno; select AVG(idade) from alunos where curso = SI ; 66

ALGUNS COMANDOS SQL Alterar dados das tuplas update TABELA1 set CAMPO2 = Thiago ; // cuidado! Aqui alterará todos os registros, colocando o nome Thiago em todas as tuplas! update TABELA1 set CAMPO2 = Thiago where CODREGISTRO = 23; // Aqui SÓ alterará o nome do CAMPO2 para Thiago cujo CODREGISTRO = 23! 67

ALGUNS COMANDOS SQL Apagar tuplas delete from TABELA1 where CAMPO2 = Cruzeirences ; // apagará todas as tuplas onde contenham a palavra Cruzeirences no CAMPO2! 68

MAIS INFORMAÇÕES www.php.net www.phpbrasil.net www.php.net/manual/pt_br/index.php www.mysql.com/ 69

REFERÊNCIAS: Anselmo, Fernando 4 e MySQL. Maior, melhor e totalmente sem cortes Visual Books; Moraz, Eduardo Guia profissional Webdesign Digeratti Books; Coleção Info 2005 Sites Dinâmicos Info Exame; Alves, Leonardo Lacerda Desenvolvimento de aplicações Web com CD-Rom. 70

com MySQL Fernando Martins Técnico em Processamento de Dados Graduado em Sistemas de Informação pela Funcesi Fotógrafo e Videomaker Webmaster da HS PRO Professor Funcesi fernando@hspro.com.br 71