danluc 4 Denunciar post Postado Dezembro 5, 2014 Bom dia.. to precisando do seguinte, to querendo fazer um campo de busca... e que quando busca o resultado apareça em baixo, sem precisa troca de pagina.. ai fiz os códigos todos em AJAX ;PHP ;MYSQL.. so que quando executo, ele fica so carregando... CODIGO HTML <!doctype html> <html> <head> <title>Busca simples com Ajax, PHP, MySQL</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <script src="scripts.js"></script> </head> <body> <b>Digite o que procura</b> <!--Aqui o formulário para a busca--> <form name='busca'> <input type="text" name="produto"> <input type="button" value="buscar" onclick="mostraConteudo('busca.php?produto='+document.busca.produto.value,'resultado_busca')"> </form> <!--Fim do formulário busca--> <br /> <b>Resultado da busca</b><br /> <!--Aqui é onde vai aparecer o resultado da busca--> <div id="resultado_busca"></div> </body> </html> CODIGO EM AJAX-JS var xmlhttp = null; // Conexão via XmlHttp try { xmlhttp = new XMLHttpRequest(); } catch(ee) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch(E) { xmlhttp = false; } } } function mostraConteudo(url, div) { // Seleciona objeto obj_div = document.getElementById(div); // Verifica se existe xmlhttp if (xmlhttp) { if(xmlhttp.readyState != 1){ xmlhttp.open("GET", "busca.php?produto=" + url, true); xmlhttp.onreadystatechange = function() { // Verifica estado da requisição if (xmlhttp.readyState > 1) { obj_div.innerHTML = "Aguarde ..."; } else if (xmlhttp.readyState >= 1) { // Verifica status da requisição if (xmlhttp.status <= 500) { obj_div.innerHTML = xmlhttp.responseText; } else { obj_div.innerHTML = "Erro ao carregar ..."; } } } } } xmlhttp.send(null); } CODIGO MYSQL <!doctype html> <html> <head> <meta charset="utf-8"> <title>Documento sem título</title> </head> <body> <?php /*Resgata valor por get digitado no formulário*/ $busca = $_GET['produto']; $conecta = mysql_connect("localhost", "root", "*****") or print (mysql_error()); //selectiona o banco de dados mysql_select_db("clarodb", $conecta) or die(mysql_error()); //Monta consulta SQL $sql = mysql_query("SELECT clarodb.Tel, clarodb.Numero, clarodb.Hora, clarodb.Valor FROM clarodb WHERE Tel LIKE '%".$busca."% AND (Numero NOT IN (SELECT telcm.telefoneCM FROM telcm)OR Numero IS NULL) "); $result = mysql_query($sql); $cont = mysql_affected_rows($conecta); // Verifica se a consulta retornou linhas if ($cont > 0) { // Atribui o código HTML para montar uma tabela $tabela = "<table border='1'> <thead> <thead> <tr> <th>Tel</th> <th>Numero</th> <th>Hora</th> <th>Valor</th> </tr> </thead> <tbody> <tr>"; $return = "$tabela"; // Captura os dados da consulta e inseri na tabela HTML while ($linha = mysql_fetch_array($result)) { $return.= "<td>" . utf8_encode($linha["Tel"]) . "</td>"; $return.= "<td>" . utf8_encode($linha["Numero"]) . "</td>"; $return.= "<td>" . utf8_encode($linha["Hora"]) . "</td>"; $return.= "<td>" . utf8_encode($linha["Valor"]) . "</td>"; $return.= "</tr>"; } echo $return.="</tbody></table>"; } else { // Se a consulta não retornar nenhum valor, exibi mensagem para o usuário echo "Não foram encontrados registros!"; } ?> </body> </html> Compartilhar este post Link para o post Compartilhar em outros sites