SlideShare uma empresa Scribd logo
1 de 6
Baixar para ler offline
acesso remoto a bases de dados
O MySQL
 Modelo cliente-servidor da solução usbwebserver
                                                                                              O browser cliente pede o ficheiro index.php ao servidor com
                                                                                              endereço IP 127.0.0.1

                       hp                                                                     No servidor, o serviço Apache está à escuta no porto 80.
                    x.p
                  e
               ind .0.1)                                                                      Quando recebe um pedido vai procurar o ficheiro ao directório
             de .0                                                                            definido (root no caso do usbwebserver, ou htdocs noutros)
         ttp 127
       h r                                p L)           http://127.0.0.1/index.php
   ido rvido                       sta ph
  d e                            po dex. HTM
pe (s                          s
                           re a in igo                                                        O Apache observa o código recebido. Se tiver tags <? ?>
                                     d
                            gin có                                                            envia-o ao interpretador PHP para ele o processar (caso o
                        ( pá s c/
                             a
                      ap
                          en                                                                  ficheiro não contenha qualquer tag de php, devolve de
                                                                                              imediato o ficheiro ao cliente tal como está guardado)

                                                                                              O interpretador recebe o código PHP e processa-o. Se o
                                                                                              código tiver pedidos de ligação a um servidor de Base de
                                                                                  127.0.0.1
                                                                     SQL
                                      html                                                    dados (local ou remoto) - MySQL neste caso - ele próprio
                                                                   resposta
                                                                                              estabelece ligação com o mesmo, envia-lhe uma query de
                                                 interpretador
                                                                                              SQL e recebe a resposta
                  código             <? php ?>
                                                                                              Depois de processado todo o código php, o interpretador
               Pasta root                                                                     devolve ao Apache o resultado da sua tarefa (aqui já só lhe
               do Apache                                                                      devolve código HTML, resultado do seu trabalho)
                (htdocs)

                index.php                                                                     O Apache recebe o código HTML do interpretador e envia-o
                    ...                               127.0.0.1                               para o browser do cliente

                                                                                              Uma vez que os browsers entendem código HTML, recebem-
                                                                                              no e constroem a página com o resultado final pedido.
O MySQL
Ligação ao servidor através do PHP | código SQL
   SET NAMES latin1;                                                      INSERT INTO `CDs` VALUES
   SET FOREIGN_KEY_CHECKS = 0;                                            ('1','Bloodshot','10','5','3','Popular','Rock','2009-04-06 11:42:29'),
                                                                           ('2','The Most Favorite Opera Duets','10','5','3','Classical','Opera','2009-04-06
   DROP TABLE IF EXISTS `CDs`;                                            11:42:29'),
                                                                           ('3','New Orleans Jazz','17','4','1','Popular','Jazz','2009-04-06 11:42:29'),
   CREATE TABLE `CDs` (                                                    ('4','Music for Ballet Class','9','4','2','Classical','Dance','2009-04-06 11:42:29'),
     `idCd` smallint(6) NOT NULL auto_increment,                           ('5','Music for Solo Violin','24','2','5','Classical','General','2009-04-06 11:42:29'),
     `nomeCd` varchar(50) NOT NULL,                                        ('6','Cie li di Toscana','16','6','8','Classical','Vocal','2009-04-06 11:42:29'),
     `emStock` smallint(5) unsigned NOT NULL,                              ('7','Mississippi Blues','2','25','6','Popular','Blues','2009-04-06 11:42:29'),
     `emEncomenda` smallint(5) unsigned NOT NULL,                          ('8','Pure','32','3','10','Popular','Jazz','2009-04-06 11:42:29'),
     `emReserva` smallint(5) unsigned NOT NULL,                            ('9','Mud on the Tires','12','15','13','Popular','Country','2009-04-06 11:42:29'),
     `Genero` enum('Classical','Popular') NOT NULL,                        ('10','The Essence','5','20','10','Popular','New Age','2009-04-06 11:42:29'),
     `Categoria` varchar(20) NOT NULL,                                     ('11','Embrace','24','11','14','Popular','New Age','2009-04-06 11:42:29'),
     `RowUpdate` timestamp NOT NULL default CURRENT_TIMESTAMP on update    ('12','The Magic of Satie','42','17','17','Classical','General','2009-04-06
   CURRENT_TIMESTAMP,                                                     11:42:29'),
     PRIMARY KEY (`idCd`,`emEncomenda`)                                    ('13','Swan Lake','25','44','28','Classical','Dance','2009-04-06 11:42:29'),
   ) ENGINE=MyISAM AUTO_INCREMENT=25 DEFAULT CHARSET=latin1;               ('14','25 Classical Favorites','32','15','12','Classical','General','2009-04-06
                                                                          11:42:29'),
                                                                           ('15','La Boheme','20','10','5','Classical','Opera','2009-04-06 11:42:29'),
                                                                           ('16','Bach Cantatas','23','12','8','Classical','General','2009-04-06 11:42:29'),
                                                                           ('17','Golden Road','23','10','17','Popular','Country','2009-04-06 11:42:29'),
                                                                           ('18','Live in Paris','18','20','10','Popular','Jazz','2009-04-06 11:42:29'),
                                                                           ('19','Richland Woman Blues','22','5','7','Popular','Blues','2009-04-06 11:42:29'),
                                                                           ('20','Morimur (after J. S. Bach)','28','17','16','Classical','General','2009-04-06
                                                                          11:42:29'),
                                                                           ('21','The Best of Italian Opera','10','35','12','Classical','Opera','2009-04-06
                                                                          11:42:29'),
                                                                           ('22','Runaway Soul','15','30','14','Popular','Blues','2009-04-06 11:42:29'),
                                                                           ('23','Stages','42','0','8','Popular','Blues','2009-04-06 11:42:29'),
                                                                           ('24','Bach: Six Unaccompanied Cello
                                                                          Suites','16','8','8','Classical','General','2009-04-06 11:42:29');
O MySQL
Ligação ao servidor através do PHP | as funções


     •   mysql_connect ( endereço do servidor, utilizador, password ) -> Estabelece ligação
         com servidor de base de dados

     •   mysql_select_db ( nome da base de dados, variável de ligação ) -> Abre base de dados

     •   mysql_query ( query de sql ) -> Envia uma query à base de dados (INSERT, UPDATE,
         DELETE OU SELECT).

     •   mysql_fetch_array ( variável de resultado da query ) -> Devolve array com campos de
         uma linha e avança ponteiro para linha (registo) seguinte.

     •   mysql_num_rows ( variável de resultado da query ) -> Devolve o número de registos da
         consulta (query)

     •   mysql_close ( variável de ligação ) -> Encerra a ligação com o servidor.
O MySQL
Ligação ao servidor através do PHP | exemplo funcional
/////////////////////////////// configuração de acesso ao servidor de base de dados /////////////////////////////////////////
$servidor="localhost"; $utilizador="root"; $passwd="esap"; $baseDados = "Aula1";
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

$ligacao = mysql_connect ( $servidor, $utilizador, $passwd ) or die ( 'Erro ao ligar ao servidor... ' . mysql_error() );
mysql_select_db ( $baseDados, $ligacao ) or die ( 'Erro ao executar mysql_select_db: ' . mysql_error () );

$query_sql = " SELECT * FROM CDs WHERE Categoria='Blues' ";
$resultado = mysql_query ( $query_sql ) or die ( 'Erro ao executar mysql_query: ' . mysql_error () );
echo ("<h1> Primeira ligação à BD {$baseDados} </h1>");
echo ("<h3> Vou fazer a seguinte query: {$query_sql} </h3>");

$contador = 1;

while ( $linhaTabela = mysql_fetch_array ( $resultado ) )
{
	     echo ("{ $contador } > {$linhaTabela ['nomeCd']} - {$linhaTabela ['Categoria']} <br />");
	     $contador++;
}

echo ("<h4> Número de registos encontrados na tabela: " . mysql_num_rows ( $resultado ) . "</h4>");
mysql_close ( $ligacao );
O MySQL
Ligação ao servidor através do PHP | exemplo prático




          http://aulasftp.netai.net/mysql/act1/

Mais conteúdo relacionado

Destaque

funcionamento da internet
funcionamento da internetfuncionamento da internet
funcionamento da internetMarco Pinheiro
 
Linguagem PHP para principiantes
Linguagem PHP para principiantesLinguagem PHP para principiantes
Linguagem PHP para principiantesMarco Pinheiro
 
Dicas para criação rápida de projectos WEB
Dicas para criação rápida de projectos WEBDicas para criação rápida de projectos WEB
Dicas para criação rápida de projectos WEBMarco Pinheiro
 

Destaque (9)

funcionamento da internet
funcionamento da internetfuncionamento da internet
funcionamento da internet
 
PHP e Mysql - SELECT
PHP e Mysql - SELECTPHP e Mysql - SELECT
PHP e Mysql - SELECT
 
PHP e Mysql - DELETE
PHP e Mysql - DELETEPHP e Mysql - DELETE
PHP e Mysql - DELETE
 
Linguagem PHP para principiantes
Linguagem PHP para principiantesLinguagem PHP para principiantes
Linguagem PHP para principiantes
 
Dicas para criação rápida de projectos WEB
Dicas para criação rápida de projectos WEBDicas para criação rápida de projectos WEB
Dicas para criação rápida de projectos WEB
 
PHP e Mysql - UPDATE
PHP e Mysql - UPDATEPHP e Mysql - UPDATE
PHP e Mysql - UPDATE
 
PHP e Mysql - INSERT
PHP e Mysql - INSERTPHP e Mysql - INSERT
PHP e Mysql - INSERT
 
PHP e Mysql - INSERT
PHP e Mysql - INSERTPHP e Mysql - INSERT
PHP e Mysql - INSERT
 
PHP - Introdução
PHP - IntroduçãoPHP - Introdução
PHP - Introdução
 

Semelhante a PHP - Queries a um SGBD MySQL

PHPMyadmin - Introdução
PHPMyadmin - IntroduçãoPHPMyadmin - Introdução
PHPMyadmin - IntroduçãoMarco Pinheiro
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2PrinceGuru MS
 
Produtividade em Integração de Aplicações com Apache Camel
Produtividade em Integração de Aplicações com Apache CamelProdutividade em Integração de Aplicações com Apache Camel
Produtividade em Integração de Aplicações com Apache CamelAlessandro Kieras
 
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...Adriano Tavares
 
Tecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensTecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensAlessandro Binhara
 
O docker vai mudar tudo na sua infra estrutura-ti
O docker vai mudar tudo na sua infra estrutura-tiO docker vai mudar tudo na sua infra estrutura-ti
O docker vai mudar tudo na sua infra estrutura-tiFrancisco Gonçalves
 
4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdfRubenManhia
 
Secomp 2011 - Node.JS - Introdução
Secomp 2011 - Node.JS - IntroduçãoSecomp 2011 - Node.JS - Introdução
Secomp 2011 - Node.JS - IntroduçãoEmerson Macedo
 
Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory gigadrop
 
Docker 101 e Ambientes Imutáveis
Docker 101 e Ambientes Imutáveis Docker 101 e Ambientes Imutáveis
Docker 101 e Ambientes Imutáveis Wallison Marra
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHPPaulo Dayvson
 
O bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsO bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsNuno Paz
 
Programação Multiplataforma em Ambiente Web
Programação Multiplataforma em Ambiente WebProgramação Multiplataforma em Ambiente Web
Programação Multiplataforma em Ambiente WebIsrael Messias
 

Semelhante a PHP - Queries a um SGBD MySQL (20)

PHPMyadmin - Introdução
PHPMyadmin - IntroduçãoPHPMyadmin - Introdução
PHPMyadmin - Introdução
 
PHP e Redis
PHP e RedisPHP e Redis
PHP e Redis
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2
 
Python CGI
Python CGIPython CGI
Python CGI
 
Produtividade em Integração de Aplicações com Apache Camel
Produtividade em Integração de Aplicações com Apache CamelProdutividade em Integração de Aplicações com Apache Camel
Produtividade em Integração de Aplicações com Apache Camel
 
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
 
Tecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensTecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvens
 
PHP(I-Bim).ppt
PHP(I-Bim).pptPHP(I-Bim).ppt
PHP(I-Bim).ppt
 
Php
PhpPhp
Php
 
PHP 5.3 - Introdução
PHP 5.3 - IntroduçãoPHP 5.3 - Introdução
PHP 5.3 - Introdução
 
Cakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudouCakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudou
 
dnad12
dnad12dnad12
dnad12
 
O docker vai mudar tudo na sua infra estrutura-ti
O docker vai mudar tudo na sua infra estrutura-tiO docker vai mudar tudo na sua infra estrutura-ti
O docker vai mudar tudo na sua infra estrutura-ti
 
4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf
 
Secomp 2011 - Node.JS - Introdução
Secomp 2011 - Node.JS - IntroduçãoSecomp 2011 - Node.JS - Introdução
Secomp 2011 - Node.JS - Introdução
 
Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory
 
Docker 101 e Ambientes Imutáveis
Docker 101 e Ambientes Imutáveis Docker 101 e Ambientes Imutáveis
Docker 101 e Ambientes Imutáveis
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHP
 
O bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsO bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.js
 
Programação Multiplataforma em Ambiente Web
Programação Multiplataforma em Ambiente WebProgramação Multiplataforma em Ambiente Web
Programação Multiplataforma em Ambiente Web
 

Mais de Marco Pinheiro

SASS, Compass, Gulp, Greensock
SASS, Compass, Gulp, GreensockSASS, Compass, Gulp, Greensock
SASS, Compass, Gulp, GreensockMarco Pinheiro
 
Projecto de tese | Doutoramento em Ciências da Comunicação (UBI 2011)
Projecto de tese | Doutoramento em Ciências da Comunicação (UBI 2011)Projecto de tese | Doutoramento em Ciências da Comunicação (UBI 2011)
Projecto de tese | Doutoramento em Ciências da Comunicação (UBI 2011)Marco Pinheiro
 
Conceitos de Imagem digital
Conceitos de Imagem digitalConceitos de Imagem digital
Conceitos de Imagem digitalMarco Pinheiro
 
Linguagem SQL (com MySQL)
Linguagem SQL (com MySQL)Linguagem SQL (com MySQL)
Linguagem SQL (com MySQL)Marco Pinheiro
 
IPCOP - Firewalls para os comuns mortais
IPCOP - Firewalls para os comuns mortaisIPCOP - Firewalls para os comuns mortais
IPCOP - Firewalls para os comuns mortaisMarco Pinheiro
 

Mais de Marco Pinheiro (7)

SASS, Compass, Gulp, Greensock
SASS, Compass, Gulp, GreensockSASS, Compass, Gulp, Greensock
SASS, Compass, Gulp, Greensock
 
curso de CSS
curso de CSScurso de CSS
curso de CSS
 
Curso de XHTML
Curso de XHTMLCurso de XHTML
Curso de XHTML
 
Projecto de tese | Doutoramento em Ciências da Comunicação (UBI 2011)
Projecto de tese | Doutoramento em Ciências da Comunicação (UBI 2011)Projecto de tese | Doutoramento em Ciências da Comunicação (UBI 2011)
Projecto de tese | Doutoramento em Ciências da Comunicação (UBI 2011)
 
Conceitos de Imagem digital
Conceitos de Imagem digitalConceitos de Imagem digital
Conceitos de Imagem digital
 
Linguagem SQL (com MySQL)
Linguagem SQL (com MySQL)Linguagem SQL (com MySQL)
Linguagem SQL (com MySQL)
 
IPCOP - Firewalls para os comuns mortais
IPCOP - Firewalls para os comuns mortaisIPCOP - Firewalls para os comuns mortais
IPCOP - Firewalls para os comuns mortais
 

Último

Termo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegraTermo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegrafernando846621
 
Poder do convencimento,........... .
Poder do convencimento,...........         .Poder do convencimento,...........         .
Poder do convencimento,........... .WAGNERJESUSDACUNHA
 
EBOOK LINGUAGEM GRATUITO EUDCAÇÃO INFANTIL.pdf
EBOOK LINGUAGEM GRATUITO EUDCAÇÃO INFANTIL.pdfEBOOK LINGUAGEM GRATUITO EUDCAÇÃO INFANTIL.pdf
EBOOK LINGUAGEM GRATUITO EUDCAÇÃO INFANTIL.pdfIBEE5
 
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfItaloAtsoc
 
Depende De Nós! José Ernesto Ferraresso.ppsx
Depende De Nós! José Ernesto Ferraresso.ppsxDepende De Nós! José Ernesto Ferraresso.ppsx
Depende De Nós! José Ernesto Ferraresso.ppsxLuzia Gabriele
 
Poema sobre o mosquito Aedes aegipyti -
Poema sobre o mosquito Aedes aegipyti  -Poema sobre o mosquito Aedes aegipyti  -
Poema sobre o mosquito Aedes aegipyti -Mary Alvarenga
 
1. CIENCIAS-HUMANAS-GLOBALIZAÇÃO, TEMPO E ESPAÇO-V1.pdf
1. CIENCIAS-HUMANAS-GLOBALIZAÇÃO, TEMPO E ESPAÇO-V1.pdf1. CIENCIAS-HUMANAS-GLOBALIZAÇÃO, TEMPO E ESPAÇO-V1.pdf
1. CIENCIAS-HUMANAS-GLOBALIZAÇÃO, TEMPO E ESPAÇO-V1.pdfRitoneltonSouzaSanto
 
Apresente de forma sucinta as atividades realizadas ao longo do semestre, con...
Apresente de forma sucinta as atividades realizadas ao longo do semestre, con...Apresente de forma sucinta as atividades realizadas ao longo do semestre, con...
Apresente de forma sucinta as atividades realizadas ao longo do semestre, con...Colaborar Educacional
 
FORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaFORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaBenigno Andrade Vieira
 
Como fazer um Feedback Eficaz - Comitê de Gestores
Como fazer um Feedback Eficaz - Comitê de GestoresComo fazer um Feedback Eficaz - Comitê de Gestores
Como fazer um Feedback Eficaz - Comitê de GestoresEu Prefiro o Paraíso.
 
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxAula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxMarceloDosSantosSoar3
 
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123JaineCarolaineLima
 
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARXA CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARXHisrelBlog
 
O-P-mais-importante.pptx de Maria Jesus Sousa
O-P-mais-importante.pptx de Maria Jesus SousaO-P-mais-importante.pptx de Maria Jesus Sousa
O-P-mais-importante.pptx de Maria Jesus SousaTeresaCosta92
 
Verbos - transitivos e intransitivos.pdf
Verbos -  transitivos e intransitivos.pdfVerbos -  transitivos e intransitivos.pdf
Verbos - transitivos e intransitivos.pdfKarinaSouzaCorreiaAl
 
Peixeiras da Coruña. O Muro da Coruña. IES Monelos
Peixeiras da Coruña. O Muro da Coruña. IES MonelosPeixeiras da Coruña. O Muro da Coruña. IES Monelos
Peixeiras da Coruña. O Muro da Coruña. IES MonelosAgrela Elvixeo
 
Atividade de matemática para simulado de 2024
Atividade de matemática para simulado de 2024Atividade de matemática para simulado de 2024
Atividade de matemática para simulado de 2024gilmaraoliveira0612
 

Último (20)

Termo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegraTermo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegra
 
(42-ESTUDO - LUCAS) DISCIPULO DE JESUS
(42-ESTUDO - LUCAS)  DISCIPULO  DE JESUS(42-ESTUDO - LUCAS)  DISCIPULO  DE JESUS
(42-ESTUDO - LUCAS) DISCIPULO DE JESUS
 
Abordagem 1. Análise textual (Severino, 2013).pdf
Abordagem 1. Análise textual (Severino, 2013).pdfAbordagem 1. Análise textual (Severino, 2013).pdf
Abordagem 1. Análise textual (Severino, 2013).pdf
 
Poder do convencimento,........... .
Poder do convencimento,...........         .Poder do convencimento,...........         .
Poder do convencimento,........... .
 
EBOOK LINGUAGEM GRATUITO EUDCAÇÃO INFANTIL.pdf
EBOOK LINGUAGEM GRATUITO EUDCAÇÃO INFANTIL.pdfEBOOK LINGUAGEM GRATUITO EUDCAÇÃO INFANTIL.pdf
EBOOK LINGUAGEM GRATUITO EUDCAÇÃO INFANTIL.pdf
 
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
 
Depende De Nós! José Ernesto Ferraresso.ppsx
Depende De Nós! José Ernesto Ferraresso.ppsxDepende De Nós! José Ernesto Ferraresso.ppsx
Depende De Nós! José Ernesto Ferraresso.ppsx
 
Poema sobre o mosquito Aedes aegipyti -
Poema sobre o mosquito Aedes aegipyti  -Poema sobre o mosquito Aedes aegipyti  -
Poema sobre o mosquito Aedes aegipyti -
 
1. CIENCIAS-HUMANAS-GLOBALIZAÇÃO, TEMPO E ESPAÇO-V1.pdf
1. CIENCIAS-HUMANAS-GLOBALIZAÇÃO, TEMPO E ESPAÇO-V1.pdf1. CIENCIAS-HUMANAS-GLOBALIZAÇÃO, TEMPO E ESPAÇO-V1.pdf
1. CIENCIAS-HUMANAS-GLOBALIZAÇÃO, TEMPO E ESPAÇO-V1.pdf
 
Apresente de forma sucinta as atividades realizadas ao longo do semestre, con...
Apresente de forma sucinta as atividades realizadas ao longo do semestre, con...Apresente de forma sucinta as atividades realizadas ao longo do semestre, con...
Apresente de forma sucinta as atividades realizadas ao longo do semestre, con...
 
FORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaFORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de história
 
Como fazer um Feedback Eficaz - Comitê de Gestores
Como fazer um Feedback Eficaz - Comitê de GestoresComo fazer um Feedback Eficaz - Comitê de Gestores
Como fazer um Feedback Eficaz - Comitê de Gestores
 
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdfAbordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
 
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxAula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
 
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
SEMIOSES DO OLHAR - SLIDE PARA ESTUDO 123
 
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARXA CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
A CONCEPÇÃO FILO/SOCIOLÓGICA DE KARL MARX
 
O-P-mais-importante.pptx de Maria Jesus Sousa
O-P-mais-importante.pptx de Maria Jesus SousaO-P-mais-importante.pptx de Maria Jesus Sousa
O-P-mais-importante.pptx de Maria Jesus Sousa
 
Verbos - transitivos e intransitivos.pdf
Verbos -  transitivos e intransitivos.pdfVerbos -  transitivos e intransitivos.pdf
Verbos - transitivos e intransitivos.pdf
 
Peixeiras da Coruña. O Muro da Coruña. IES Monelos
Peixeiras da Coruña. O Muro da Coruña. IES MonelosPeixeiras da Coruña. O Muro da Coruña. IES Monelos
Peixeiras da Coruña. O Muro da Coruña. IES Monelos
 
Atividade de matemática para simulado de 2024
Atividade de matemática para simulado de 2024Atividade de matemática para simulado de 2024
Atividade de matemática para simulado de 2024
 

PHP - Queries a um SGBD MySQL

  • 1. acesso remoto a bases de dados
  • 2. O MySQL Modelo cliente-servidor da solução usbwebserver O browser cliente pede o ficheiro index.php ao servidor com endereço IP 127.0.0.1 hp No servidor, o serviço Apache está à escuta no porto 80. x.p e ind .0.1) Quando recebe um pedido vai procurar o ficheiro ao directório de .0 definido (root no caso do usbwebserver, ou htdocs noutros) ttp 127 h r p L) http://127.0.0.1/index.php ido rvido sta ph d e po dex. HTM pe (s s re a in igo O Apache observa o código recebido. Se tiver tags <? ?> d gin có envia-o ao interpretador PHP para ele o processar (caso o ( pá s c/ a ap en ficheiro não contenha qualquer tag de php, devolve de imediato o ficheiro ao cliente tal como está guardado) O interpretador recebe o código PHP e processa-o. Se o código tiver pedidos de ligação a um servidor de Base de 127.0.0.1 SQL html dados (local ou remoto) - MySQL neste caso - ele próprio resposta estabelece ligação com o mesmo, envia-lhe uma query de interpretador SQL e recebe a resposta código <? php ?> Depois de processado todo o código php, o interpretador Pasta root devolve ao Apache o resultado da sua tarefa (aqui já só lhe do Apache devolve código HTML, resultado do seu trabalho) (htdocs) index.php O Apache recebe o código HTML do interpretador e envia-o ... 127.0.0.1 para o browser do cliente Uma vez que os browsers entendem código HTML, recebem- no e constroem a página com o resultado final pedido.
  • 3. O MySQL Ligação ao servidor através do PHP | código SQL SET NAMES latin1; INSERT INTO `CDs` VALUES SET FOREIGN_KEY_CHECKS = 0; ('1','Bloodshot','10','5','3','Popular','Rock','2009-04-06 11:42:29'), ('2','The Most Favorite Opera Duets','10','5','3','Classical','Opera','2009-04-06 DROP TABLE IF EXISTS `CDs`; 11:42:29'), ('3','New Orleans Jazz','17','4','1','Popular','Jazz','2009-04-06 11:42:29'), CREATE TABLE `CDs` ( ('4','Music for Ballet Class','9','4','2','Classical','Dance','2009-04-06 11:42:29'), `idCd` smallint(6) NOT NULL auto_increment, ('5','Music for Solo Violin','24','2','5','Classical','General','2009-04-06 11:42:29'), `nomeCd` varchar(50) NOT NULL, ('6','Cie li di Toscana','16','6','8','Classical','Vocal','2009-04-06 11:42:29'), `emStock` smallint(5) unsigned NOT NULL, ('7','Mississippi Blues','2','25','6','Popular','Blues','2009-04-06 11:42:29'), `emEncomenda` smallint(5) unsigned NOT NULL, ('8','Pure','32','3','10','Popular','Jazz','2009-04-06 11:42:29'), `emReserva` smallint(5) unsigned NOT NULL, ('9','Mud on the Tires','12','15','13','Popular','Country','2009-04-06 11:42:29'), `Genero` enum('Classical','Popular') NOT NULL, ('10','The Essence','5','20','10','Popular','New Age','2009-04-06 11:42:29'), `Categoria` varchar(20) NOT NULL, ('11','Embrace','24','11','14','Popular','New Age','2009-04-06 11:42:29'), `RowUpdate` timestamp NOT NULL default CURRENT_TIMESTAMP on update ('12','The Magic of Satie','42','17','17','Classical','General','2009-04-06 CURRENT_TIMESTAMP, 11:42:29'), PRIMARY KEY (`idCd`,`emEncomenda`) ('13','Swan Lake','25','44','28','Classical','Dance','2009-04-06 11:42:29'), ) ENGINE=MyISAM AUTO_INCREMENT=25 DEFAULT CHARSET=latin1; ('14','25 Classical Favorites','32','15','12','Classical','General','2009-04-06 11:42:29'), ('15','La Boheme','20','10','5','Classical','Opera','2009-04-06 11:42:29'), ('16','Bach Cantatas','23','12','8','Classical','General','2009-04-06 11:42:29'), ('17','Golden Road','23','10','17','Popular','Country','2009-04-06 11:42:29'), ('18','Live in Paris','18','20','10','Popular','Jazz','2009-04-06 11:42:29'), ('19','Richland Woman Blues','22','5','7','Popular','Blues','2009-04-06 11:42:29'), ('20','Morimur (after J. S. Bach)','28','17','16','Classical','General','2009-04-06 11:42:29'), ('21','The Best of Italian Opera','10','35','12','Classical','Opera','2009-04-06 11:42:29'), ('22','Runaway Soul','15','30','14','Popular','Blues','2009-04-06 11:42:29'), ('23','Stages','42','0','8','Popular','Blues','2009-04-06 11:42:29'), ('24','Bach: Six Unaccompanied Cello Suites','16','8','8','Classical','General','2009-04-06 11:42:29');
  • 4. O MySQL Ligação ao servidor através do PHP | as funções • mysql_connect ( endereço do servidor, utilizador, password ) -> Estabelece ligação com servidor de base de dados • mysql_select_db ( nome da base de dados, variável de ligação ) -> Abre base de dados • mysql_query ( query de sql ) -> Envia uma query à base de dados (INSERT, UPDATE, DELETE OU SELECT). • mysql_fetch_array ( variável de resultado da query ) -> Devolve array com campos de uma linha e avança ponteiro para linha (registo) seguinte. • mysql_num_rows ( variável de resultado da query ) -> Devolve o número de registos da consulta (query) • mysql_close ( variável de ligação ) -> Encerra a ligação com o servidor.
  • 5. O MySQL Ligação ao servidor através do PHP | exemplo funcional /////////////////////////////// configuração de acesso ao servidor de base de dados ///////////////////////////////////////// $servidor="localhost"; $utilizador="root"; $passwd="esap"; $baseDados = "Aula1"; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// $ligacao = mysql_connect ( $servidor, $utilizador, $passwd ) or die ( 'Erro ao ligar ao servidor... ' . mysql_error() ); mysql_select_db ( $baseDados, $ligacao ) or die ( 'Erro ao executar mysql_select_db: ' . mysql_error () ); $query_sql = " SELECT * FROM CDs WHERE Categoria='Blues' "; $resultado = mysql_query ( $query_sql ) or die ( 'Erro ao executar mysql_query: ' . mysql_error () ); echo ("<h1> Primeira ligação à BD {$baseDados} </h1>"); echo ("<h3> Vou fazer a seguinte query: {$query_sql} </h3>"); $contador = 1; while ( $linhaTabela = mysql_fetch_array ( $resultado ) ) { echo ("{ $contador } > {$linhaTabela ['nomeCd']} - {$linhaTabela ['Categoria']} <br />"); $contador++; } echo ("<h4> Número de registos encontrados na tabela: " . mysql_num_rows ( $resultado ) . "</h4>"); mysql_close ( $ligacao );
  • 6. O MySQL Ligação ao servidor através do PHP | exemplo prático http://aulasftp.netai.net/mysql/act1/