Revisão XMLHttpRequest

Para detalhar o funcionamento da API (objeto) XMLHttpRequest vamos carregar informações de um JSON dentro de uma tabela.

Uma vez que nestes exemplos iremos explorar consultas a bancos de dados, é importante utilizarmos um servidor remoto (XAMPP ou AMPPS)

O arquivo abaixo, index.html, apresenta um código simples importando todas as dependências (via CDN) da biblioteca bootstrap e do plugin DataTables

Para iniciarmos uma tabela com os recursos do DataTables é necessário o código de inicialização, este código será apresentado no arquivo main.js

index.html

Abaixo o arquivo em Javascript que irá importar de forma assíncrona as informações de um arquivo json. O resumo linha a linha está apresdentado abaixo
Linha 1 - o botão do arquivo index.html é declarado
Linha 4 - função "escutadora" de eventos, relacionada ao botão da linha 1 .
Linha 2 - a tabela é inicializada - utilizando a chamada padrão do JQUERY.
Linha 5 - Função do Datatables para limpar a tabela, neste caso utilizada para que novas informações não fiquem duplicadas.
Linha 7 - Declaração do objeto XMLHttpRequest propriemante dito
Linha 9 - A requisição do tipo GET é utilizada para carregar as informações do arquivo nomes.json (Apresentado abaixo)
Linha 10 - Sempre que uma requisição assíncrona (i.e. XMLHttpRequest) é utilizada, é necessário implementar um evento para que a informação seja renderizada, após ser carregada e processada.
Linha 12 - O texto sem predefinições é carregado
Linha 13 - Uma vez que o padrão desta informação é do tipo JSON, este comando converte a string em um JSON
Linha 13 - Uma vez que o padrão desta informação é do tipo JSON, este comando converte a string em um JSON
Linha 16 a Linha 22 - As informação são listadas linha por linha e adicionadas a tabela
Linha 25 - Assim que essa instrução é enviada o evento da linha 10 é executado (podemos estabecer um paralelo com o botão. Aqui seria o equivalente a "clicar" o botão)

main.js

nomes.json

Essas são as informações que serão carregadas de forma assíncrona. Para verificar o funcionamento, adicione novos nomes e aperte o botão do index.html, você irá notar que os nomes adicionados serão no json irão ser renderizados no html sem a necessidade de atualização do site.

Trocar o json pelo PHP

Neste segundo exemplo vamos seguir o mesmo raciocínio, mas ao invés de usar um arquivo json pronto, vamos utilizar um php cuja saída seja um JSON.

A primeira coisa a fazer é criar um novo database, atribuir um usuário e criar uma tabela nomes. Utilizar o phpmyadmin no processo.

Abaixo a tabela que usaremos como exemplo:

script para criar tabelas tbpessoas

O arquivo php abaixo trará a mesmo formato de informação do json utilizado anteriormente, entretanto, será buscará as informações de um banco de dados


nomes.php (substituir no main.js o nomes.json por nomes.php)
Verificar a semelhança entre os arquivos nomes.json e nomes.php - Utilize os caminhos de cada arquivo para comparar
Linha 2 a linha 13 Conexão com o banco de dados.
Linha 15 - Query de pesquisa SQL.
Linha 17 - Executa query
Linha 18 - Verifica se há retorno de valores (se a tabela possui registros)
Linha 20 - Linha 23 Formata a resposta do banco seguindo a padronização JSON
Linha 24 - Remove a última vírgula
Linha 28 - Imprime a variável

nomes.php

Exercício: Implemente o CPF na tabela e no PHP