• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
PHP - Queries a um SGBD MySQL
 

PHP - Queries a um SGBD MySQL

on

  • 1,161 views

 

Statistics

Views

Total Views
1,161
Views on SlideShare
1,158
Embed Views
3

Actions

Likes
0
Downloads
14
Comments
0

1 Embed 3

http://www.linkedin.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    PHP - Queries a um SGBD MySQL PHP - Queries a um SGBD MySQL Presentation Transcript

    • 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. HTMpe (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 MySQLLigaçã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 MySQLLigaçã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 MySQLLigaçã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 MySQLLigação ao servidor através do PHP | exemplo prático http://aulasftp.netai.net/mysql/act1/