// JavaScript Document
// FUNÇÃO RESPONSÁVEL DE CONECTAR A UMA PAGINA EXTERNA NO NOSSO CASO A BUSCA_NOME.PHP
// E RETORNAR OS RESULTADOS
function ajax(url)
{
//alert(nick);
//alert(dest);
//alert(msg);
req = null;
// Procura por um objeto nativo (Mozilla/Safari)
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange;
req.open("GET",url,true);
req.send(null);
// Procura por uma versão ActiveX (IE)
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange = processReqChange;
req.open("GET",url,true);
req.send();
}
}
}
function processReqChange()
{
// apenas quando o estado for "completado"
if (req.readyState == 4) {
// apenas se o servidor retornar "OK"
if (req.status ==200) {
// procura pela div id="pagina" e insere o conteudo
// retornado nela, como texto HTML
document.getElementById('pagina').innerHTML = req.responseText;
} else {
alert("Houve um problema ao obter os dados:n" + req.statusText);
}
}
}
busca_nome.php
<?php
if(!empty($_GET["valor"]))
{
// O CAMPO VALOR CONTERÁ O QUE O USUARIO DIGITOU ATÉ O MOMENTO..
// CONECTA AO BANCO COLOCA PARAMENTROS IP,USUARIO,SENHA
require_once('../conecta.php');
// EXECUTA A INSTRUÇÃO SELECT PASSANDO O QUE O USUARIO DIGITOU
$sql="select * from pessoa where nome like '$_GET[valor]%'";
$resultado=mysql_query($sql) or die (mysql_error());
//VERIFICA A QUANTIDADE DE REGISTROS RETORNADOS
$linhas=mysql_num_rows($resultado);
if($linhas>0){
//EXECUTA UM LOOP PARA MOSTRAR OS NOMES DAS PESSOAS
// VALE LEMBRAR QUE TODOS ESSES RESULTADOS SERAO MOSTRADOS DENTRO DA PAGINA INDEX.PHP
// DENTRO DO DIV 'PAGINA'
while($pegar=mysql_fetch_array($resultado))
echo "$pegar[nome] <br>";
}
}
?>
index.html
<html>
<head>
<title>BUSCA DINÂMICA</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script src="script.js"></script>
<script>
function pesquisa(valor)
{
//FUNÇÃO QUE MONTA A URL E CHAMA A FUNÇÃO AJAX
url="busca_nome.php?valor="+valor;
ajax(url);
}
</script>
</head>
<body>
<table width="657" border="0" bgcolor="#f7f7f7">
<tr>
<td align="center" bgcolor="#CCCCCC"><strong><font color="#FF0000" size="1" face="Verdana, Arial, Helvetica, sans-serif"><-
BUSCA DINÂMICA -></font></strong></td>
</tr>
<tr>
<td><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><strong>DIGITE
AQUI O NOME DA PESSOA</strong></font>:
<!-- NOTE Q A CADA TECLA PRESSIONADA É CHAMADA A FUNÇÃO PESQUISA PASSANDO O QUE O USUARIO TEM DIGITADO ATÉ O MOMENTO -->
<input type="text" name="nome" onKeyPress="pesquisa(this.value)"></td>
</tr>
<tr>
<td>
<!-- AQUI SERÁ APRESENTADO O RESULTADO DA BUSCA DINÂMICA.. OU SEJA OS NOMES -->
<div id="pagina"></div></td>
</tr>
</table>
</body>
</html>
Este sistema me retorna o resultado da busca dentro da div="pagina" que está no index.html. Porém ele só me retorna uma única coluna da tabela do BD.
Sei que para obter mais colunas é só acrescentá-las no "echo" do código php, mas elas virão todas juntas na div="pagina".
Gostaria que essas colunas viessem cada uma em um campo text.
EX:
cod dentro do campo cod
produto dentro do campo produto.
O que preciso fazer nestes códigos para obter este resultado?
Pergunta
Anderson Gouveia
Pessoal, boa noite.
Tenho o seguinte código de busca dinâmia:
script.js
busca_nome.php index.htmlEste sistema me retorna o resultado da busca dentro da div="pagina" que está no index.html. Porém ele só me retorna uma única coluna da tabela do BD.
Sei que para obter mais colunas é só acrescentá-las no "echo" do código php, mas elas virão todas juntas na div="pagina".
Gostaria que essas colunas viessem cada uma em um campo text.
EX:
cod dentro do campo cod
produto dentro do campo produto.
O que preciso fazer nestes códigos para obter este resultado?
Desde já agradeço a atenção.
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.