
Este texto foi classificado como Muito bomComo fazer um autocompletar - exemplo prático com php e mysql
Acompanhe O Desenvolvedor por Feeds!
Escrevi esse texto acho que um ano atrás, para um outro site (acabou não dando em nada). Estou reeditando o mesmo :)
Vamos ver como fazer o básico para um auto-completar de um input (parecido com o Google Suggest). No nosso caso, vamos procurar por usuários em uma tabela de um banco de dados. Para isso, utilizarei PHP no lado do servidor. Mas, a linguagem do lado do servidor não é o que realmente importa. Uma funcionalidade que utiliza
a metodologia o modelo ajax deve ser: um cliente javascript acessando um serviço que está no servidor (tanto faz a tecnologia).
No nosso caso, criei uma página PHP (name.php) que:

Feito o nosso serviço no lado do servidor, vamos nos preocupar agora com a apresentação: criei uma página simples, que contém um formulário com um label e um campo input. E ainda uma área (div), a qual será usada para mostrar os resultados do auto-completar.

Depois, foi criada a formatação CSS. O mais importante no CSS é ver que a div#usersList tem sua posição definida como absoluta, e não está visível quando se entra na página.
Ela só ficará visível quando o usuário estiver digitando na caixa de texto e retornarem resultados.

Agora, temos toda a parte de layout pronta. Falta ligarmos isso com o serviço.
Como faremos? Há inúmeras formas.
A grande maioria das pessoas que utiliza PHP no lado do servidor, ou usa algum frameworks como o Sajax e o Xajax para criar a chamada às funções automaticamente, ou cria arquivos PHP que geram arquivos XML e no lado do cliente, criam na mão javascript para ler e tratar esse XML.
Eu quis, nesse nosso exemplo, dar uma outra forma a vocês de como fazer; na página 1, fiz uma página em PHP que retorna dados no formato JSON. Se eu fiz isso lá, no cliente vou ter que ler os dados também no formato JSON.
Antes de chegar lá, vamos ver como fazer para chamar o serviço criado.

Pessoal, no final teremos uma página (ok, layout está bem simples, mas o propósito é mostrar a funcionalidade) onde o usuário vai digitando num campo input e através de uma rotina em PHP vão sendo feitas consultas no banco de dados, com filtro de usuários

Os arquivos estão disponíveis para
. Podem mexer, utilizar onde quiserem, modificar.
Cayo Medeiros aka. yogodoshi
[www]
Ricardo Miranda
[www]
João F. Melo
[www]
Ricardo miranda
Alan
Estela
Chris Benseler
Estela
Chris Benseler
Estela
Pita
Chris Benseler
victor mangia
[www]
victor mangia
[www]
Chris Benseler
[www]
Dermeval
[www]
Everton
Leandro
Leandro
Alessandra
Chris Benseler
Alessandra
Chris Benseler
viConcursos
[www]
Renata
Gustavo
weslley clyton
Odilon
will
Daniele Dantas
[www]