Jump to content


Photo

Refresh Quando Um Novo Dado For Inserido No Bd


  • Faça o login para participar
7 replies to this topic

#1 RMA

RMA

    Turista

  • Usuários
  • 36 posts
  • Sexo:Não informado

Posted 13/05/2005, 14:58

Como faço para que a página seja atualizada toda vez que um novo dado for inserido em uma tabela??

Estou usado Mysql.

#2 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 13/05/2005, 15:07

Você está se referindo a por exemplo, você, no seu micro envia um registro para a tabela, e a página que eu estou visualizando no meu micro, seja atualizada?
Klaus Paiva
Conheça também: Taperás

#3 RMA

RMA

    Turista

  • Usuários
  • 36 posts
  • Sexo:Não informado

Posted 13/05/2005, 15:14

Você está se referindo a por exemplo, você, no seu micro envia um registro para a tabela, e a página que eu estou visualizando no meu micro, seja atualizada?

exato. (y)
Isso mesmo.

Como em web chats.

#4 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 13/05/2005, 15:33

Não é assim nos web chats. =)

O refresh é automático, pré-programado de tempos em tempos.

(Nem faz sentido a página advinhar quando existem novas notícias na tabela...)
Klaus Paiva
Conheça também: Taperás

#5 RMA

RMA

    Turista

  • Usuários
  • 36 posts
  • Sexo:Não informado

Posted 13/05/2005, 15:47

Não é assim nos web chats. =)

O refresh é automático, pré-programado de tempos em tempos.

(Nem faz sentido a página advinhar quando existem novas notícias na tabela...)

Acho q não hein. o web chat da uol não é assim, entre outros.

Imagine vc entrar em um chat e ele ficar atualizando a pagina toda hora, ficaria muito lento. (Eu sei q alguns scripts são assim).

Claro q faz sentido, pois assim q um dado for inserido no banco ai sim a pagina será atualizada, e não a toda hora.

é algo assim:

while ($i == 0)
{
 
//Verifica se há novos dados inseridos no banco, e mostra se existirem. 
    flush();
    sleep(1);
}



#6 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 13/05/2005, 18:27

Exatamente, a página de notícias nunca executa o reload. Apenas a página dinâmica, que fica nessa consulta de dados "eterna" que, quando encontra novos dados para exibição no BD, alimenta-os para a página de exibição.
Klaus Paiva
Conheça também: Taperás

#7 RMA

RMA

    Turista

  • Usuários
  • 36 posts
  • Sexo:Não informado

Posted 13/05/2005, 18:46

Exatamente, a página de notícias nunca executa o reload. Apenas a página dinâmica, que fica nessa consulta de dados "eterna" que, quando encontra novos dados para exibição no BD, alimenta-os para a página de exibição.

acho q entendi.
Como atualizar um IFrames, mas não a página principal???


Voce poderia me dar um exemplo?

#8 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 13/05/2005, 19:57

Existe o método mais elegante e transparente (GMAIL do Google), que usa XMLHttpRequest.

Aonde um script Javascript faz a requisição dos dados do servidor, que recebe esses dados em plain-text ou em XML (recomendável) e os exibe na página. Saiba mais

------

Existe o método dos iframes, mais fácil e prático, que consiste em, no iframe você receber as notícias (ou outro dado) e daí jogar esses dados na janela principal.

Pelo que pude reparar, você já idealizou este método em sua mente (muito bom!), mas não soube como "arremessar" os dados para a janela principal. É simples:

Suponhamos que na janela principal você tenha um <div> de id="textos" que exibirá os textos, daí na página .php que está dentro do iframe, bastará você fazer isso para adicionar os dados no <div>:

<?php

  echo "<script language=\"javascript\">

  var texto = {$consulta["nome_do_seu_campo_na_tabela"]};

  parent.document.getElementById(\"textos\").innerHTML += texto;

</script>";

?>


Klaus Paiva
Conheça também: Taperás




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq