mysql para jquery via php xml ajax

3
Página | 1 MySQL para jQuery, via PHP, XML e AJAX Rodrigo Araujo MySQL para jQuery, via PHP, XML e AJAX Obtendo dados de um banco de dados usando PHP, que converter seus dados para um arquivo XML e a leitura do XML é através de jQuery via AJAX. Parece complexo, mas é na verdade, muito fácil. Este tutorial assume que você sabe como se conectar ao seu banco de dados. Ele também presume que você tenha uma configuração de tabela chamada "pessoas" com 3 colunas: "título", "nome" e "email". Insira alguns dados para esta tabela. Estrutura do XML estruturar A idéia deste tutorial é ler um arquivo XML com uma chamada de AJAX do jQuery, portanto é necessário estruturar nossos dados corretamente. Aqui está um exemplo da estrutura do que nosso documento XML irá gerar: Arquivo “pessoas.xml”: O código PHP para criar o arquivo XML Primeiro, irá obter os dados do banco de dados e então por meio de cada resultado de linha para gerar o XML. Faremos isso utilizando a função PHP DOMDocument() que cria um documento XML para “nós” e também permite adicionar “nós” e as “child” para o XML dinamicamente.

Upload: luciano-melo

Post on 31-Dec-2014

112 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mysql Para Jquery via Php XML Ajax

P á g i n a | 1 MySQL para jQuery, via PHP, XML e AJAX

Rodrigo Araujo

MySQL para jQuery, via PHP, XML e AJAX Obtendo dados de um banco de dados usando PHP, que converter seus dados para um arquivo XML e a leitura do XML é através de jQuery via AJAX. Parece complexo, mas é na verdade, muito fácil. Este tutorial assume que você sabe como se conectar ao seu banco de dados. Ele também presume que você tenha uma configuração de tabela chamada "pessoas" com 3 colunas: "título", "nome" e "email". Insira alguns dados para esta tabela. Estrutura do XML estruturar A idéia deste tutorial é ler um arquivo XML com uma chamada de AJAX do jQuery, portanto é necessário estruturar nossos dados corretamente. Aqui está um exemplo da estrutura do que nosso documento XML irá gerar: Arquivo “pessoas.xml”:

O código PHP para criar o arquivo XML

Primeiro, irá obter os dados do banco de dados e então por meio de cada resultado de linha para gerar o XML. Faremos isso utilizando a função PHP DOMDocument() que cria um documento XML para “nós” e também permite adicionar “nós” e as “child” para o XML dinamicamente.

Page 2: Mysql Para Jquery via Php XML Ajax

P á g i n a | 2 MySQL para jQuery, via PHP, XML e AJAX

Rodrigo Araujo

Arquivo “criararquivoxml.php”:

Em seguida precisamos salvar o arquivo XML. A forma como fazemos isso é dizer o arquivo PHP para salvar o documento XML com a função de saveXML(), obtem o script PHP para responder com um cabeçalho de tipo XML. Assim, após o código acima, adicione isso: 1.$xml_string = $doc->saveXML(); 2. 3.header('Content-Type: application/xml; charset=IS O-8859-1'); 4. 5.echo $xml_string;

A parte do cabeçalho informa ao navegador que este é um tipo de conteúdo XML, e o resto é simplesmente a estrutura de dados XML, como mencionado anteriormente. Espero que agora, quando você executa esse script PHP você deve retornar um documento XML válido.

Ajax com jQuery

A última peça para este quebra-cabeça é conseguir ler os dados XML em uma página HTML usando jQuery e ajax. Novamente, é muito fácil fazer, aqui está a estrutura básica de HTML que estou usando para este tutorial:

Page 3: Mysql Para Jquery via Php XML Ajax

P á g i n a | 3 MySQL para jQuery, via PHP, XML e AJAX

Rodrigo Araujo

Arquivo “index.html”:

Você precisa incluir, obviamente, a biblioteca jQuery, eu também estou incluindo um arquivo javascript externo para o nosso código de jQuery. Assim, vá em frente e crie um arquivo de javascript chamado scripts.js e colocar o código abaixo para ele:

Este código fará a chamada do evento de clique do botão e, em seguida, trás os dados via GET AJAX para o script PHP que fizemos anteriormente.

Uma vez que receber os dados do arquivo XML, este interage em cada nó de "pessoa". Observe, estou retornando duas diferentes fontes de dados de XML, os dados entre as marcas <nome> e <email>, bem como também retornar os dados para um atributo de nó XML, neste caso "título".

Isso realmente não faz muito sentido neste contexto, mas o que ela demonstra é a forma como você pode acessar informações de atributo com a função.

Veja um exemplo funcionando em: http://www.inovese.com.br/dicas/php/mysql_jquery_php_xml_ajax/ Baixe os arquivos em: http://www.inovese.com.br/dicas/php/mysql_jquery_php_xml_ajax/mysql_jquery_php_xml_ajax.rar Espero ter sido claro e ter ajudado.