Ir para conteúdo
Fórum Script Brasil
  • 0

Pesquisa Em Bd Mysql


José Ricardo

Pergunta

Bom, tenho 1 sistema que faz pesquisas de 10 em 10 segundos em um bd MySql através de (echo "<META HTTP-EQUIV='Refresh' CONTENT='10;URL=pagina.php?Codigo=$Codigo&....'>";) e, dentro desta pagina.php, faço a busca no bd através de "SELECT", ou seja, atualizo a pagina a cada 10 segundos fazendo 1 pesquisa no BD MySql até obter a resposta desejada. Existe alguma forma de acessar, digo, buscar essa resposta sem ficar atualizando a pagina desta forma. Algum mecanismo que eu insira/grave a consulta no bd e ao ser preenchida (por outra pessoa/atendente) c/ todos os resultados validos eu possa abrí-la no browser s/ que o mesmo fica atualizando como expliquei acima.

Valeu pela ajuda e 1 grande abraço a todos.

Editado por José Ricardo
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Bom cara, creio que para você não ficar atualizando a página toda, o melhor mesmo então seja montar em Ajax.

Assim, com o Ajax, você atualiza apenas a DIV dinâmica, sem sequer o usuário perceber!

Ok, eu vou começar estudar Ajax p/ ficar + interado + você poderia me passar como faço isso p/ eu iniciar testes???

O que utilizo hj é o seguinte:

<? echo "<META HTTP-EQUIV='Refresh' CONTENT='13;URL=resultados.php?CodiCli=$CodiCli'>"; ?>

Se puder ajudar, agradeço muito.

Abraço e t +

José Ricardo R. da Silva

JR InfoCenter Comp. e Serv.

Link para o comentário
Compartilhar em outros sites

  • 0

Recomendo mesmo estudar sobre o assunto, é bem útil e interessante.

O AJAX funciona basicamente com a função XMLHttpRequest() do JavaScript.

Bom, para você começar a testar, crie um arquivo chamado ajax.js e insira o seguinte:

function ajaxInit() {
    var req;
    try {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        }
    catch(e) {
        try {
            req = new ActiveXObject("Msxml2.XMLHTTP");
            }
        catch(ex) {
            try {
                req = new XMLHttpRequest();
                }
            catch(exc) {
                alert("Esse browser não tem recursos para uso do Ajax");
                req = null;
                }
            }
        }
    return req;
    }
function Consulta(){
    ajax1 = ajaxInit();
    if(ajax1){
        ajax1.open("GET", "consulta.php", true);
        ajax1.onreadystatechange = function(){
        var StatusServer = document.getElementById("consulta");
            if(ajax1.readyState == 4){
                if(ajax1.status == 200){
                    var conteudostatus=ajax1.responseText;
                    StatusServer.innerHTML=conteudostatus;
                    }
                else {
                    alert(ajax1.statusText);
                    }
                }
            }
        ajax1.send(null);
        }
    }
Aqui eu tento inicializar o AJAX para cada navegador, e se ele não conseguir, retornará a mensagem de erro. No header da pagina.php você precisa incluir a chamada para o ajax.js, da seguinte maneira:
<script src="conf/ajax.js" language="javascript" type="text/javascript"></script>
No corpo da pagina.php você precisará criar uma div com ID consulta, da seguinte maneira:
<div id="consulta">&nbsp;</div>
Agora crie um arquivo chamado consulta.php com sua consulta MySQL, este arquivo será chamado pelo AJAX. Por final, você precisará chamar a função AJAX que mandará abrir a consulta, e ainda definir de quanto em quanto tempo esta será chamada novamente, isso é puro JavaScript:
<script language="Javascript">
function Atualiza(){
    Consulta();
    setTimeout('Atualiza()',10000);
    }
Atualiza();
</script>

O código é praticamente auto-explicativo, mas se tiver aluma dúvida em relação a ele, creio que o pessoal de JavaScript consiga te guiar.

Como disse lá em cima, isso é só para você testar e ver se é o que você precisa, pois o ideal mesmo é estudar sobre o assunto e criar sua própria maneira de trabalhar com o AJAX.

Essa função ajaxInit() e parte da função Consulta() eu retirei de algum fórum, mas não me lembro qual.

Se alguém for o autor, ou souber quem é o autor, por favor, me dê um toque para que possa colocar os devidos créditos!

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...