Jump to content


Photo

Dados Atualizados Por Js Ou Ajax


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

#1 rogerio_st

rogerio_st

    Novato no fórum

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

Posted 11/01/2007, 11:44

Galera,

Acho que estou a meio caminho, mas ainda preciso de ajuda.

Penerei nos fóruns o seguinte código:

<html>
<head>
<title>Sample Page</title>
 
<script language="JavaScript" type="text/javascript">
 
var intervalId;
var counter2=0;
var counter3=0;

function NeverEnding(input) {
   document.getElementById('result2').innerHTML=counter2;
	 if(counter2==5){
  counter3=counter3+counter2;
	 document.getElementById('result3').innerHTML=counter3;
  counter2=0;
	 }
   counter2 ++;
   if(counter2>=5) {
	  window.cleanrInterval(intervalId);
   }
}
 
function StartItNonEnding() {
   intervalId=window.setInterval(NeverEnding,1000,10);
}
</script>
</head>
<body onLoad="StartItNonEnding()">
<table border="1">
  <tr>
	<td>
	Contador 1	</td>
	<td>
	<span id="result2">&nbsp;</span>	</td>
  </tr>
  <tr>
	<td>
	Contador 2	</td>
	<td>
	<span id="result3">&nbsp;</span>	</td>
  </tr>
 </table>
</body>
</html>

Se vc salvar esse código, vai ver que ele simplesmente gera 2 contadores, (de segundo e segundo, e a cada 5 segundos).

Agora, vi um outro código que ao fazer um select, ou seja com a interação do usuário, ele gera o retorno automatico em uma outra combo (select).

http://forum.wmonlin...howtopic=116461

Minha pergunta é: É possível fazer uma chamada da função dentro do temporizador (sem que o usuário precise atuar), e podemos jogar a resposta em caixas de texto (type-text), ou em div's??

Estou precisando buscar os valores de de 6 campos de uma tabela, e 1 de outra.

Me parece que é possível fazer, mas isso está muito além dos meus conhecimentos.

Sei que já estou abusando mas se vc souber disso, fico muito agradecido.

ABS
Rogerio

#2 carneiro

carneiro

    programador web

  • Usuários
  • 155 posts
  • Sexo:Não informado
  • Localidade:cascavel - pr
  • Interesses:programação e design para web

Posted 11/01/2007, 13:10

Bom nao sei se intendi direito..
Voce quer que a pagina execute uma funcao a cada determinado tempo eh isso?
Bom, existe a funcao.. setTimeout(function(), time);
Ela executa uma funcao no tempo determinado em milesegundos..
Mas ele faz uma vez e para...
teria que fazer uma recursao

<script>

function funcao(){
 document.getElementById('nomeID').innerHTML = 'texto';
}


function recursao(){
setTimeout('funcao()', 1000);
setTimeout('recursao()', 2000);
}
recursao();
</script>

Agora para vc receber dados de um Banco..
Voce vai precisar do Ajax..
Ai vai um link com uma classe para utilizar o AJAX
http://forum.wmonlin...howtopic=165252

Não sei se eh isso que vc pidiu
B)
Descrição
Alexandre Magno Semmer
www.alexandresemmer.com
Programador Web

Programação
ASP, PHP, JavaScript, CSS, SQL, JAVA, C, Paschal, Ajax, XML
Usuário
Posted Image
Links
Ajax Online - FireBug (Firefox) - Documentação PHP - Documentação Prototype - Documentação jQuery - Script.Aculo.Us

#3 rogerio_st

rogerio_st

    Novato no fórum

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

Posted 11/01/2007, 14:25

carneiro,

É isso mesmo que eu preciso, no link que eu postei existe um exemplo no qual tem uma função que chama uma página php, essa página gera (echo) um valor, essa função busca o valor e monta uma combo, o que eu preciso é colocar essa função dentro do temporizador, para a cada 5 segundos ser executada, além disso eu teria que colocar os valores ou em div's ou em campos tipo text, não saco quase nada de JS, e muito menos de Ajax, mas somente com PHP não posso fazer isso, e não devo continuar usando o refresh na página, acontece muitas falhas de conexão dessa maneira.

Vou dar uma olhada noo link que vc indicou, e tentar entender.

Meu problema é que tenho que buscar vários campos de 2 tabelas, para preencher um player de uma rádio com as informações da música que está tocando (artista, nome, album, capa do disco, etc...)

Se souber de alguma maneira simples de fazer isso, porque eu sou leigo no assunto.

ABS
Rogerio

#4 carneiro

carneiro

    programador web

  • Usuários
  • 155 posts
  • Sexo:Não informado
  • Localidade:cascavel - pr
  • Interesses:programação e design para web

Posted 11/01/2007, 16:31

Humm..
Tenta fazer o seguinte..

- Cria o arquivo ajax.js ta aqui no link ( http://forum.wmonlin...howtopic=165252 )
- Na tua pagina coloca esse codigo

<script language="javascript" src="ajax.js"></script>
<script language="javascript">
/**
Funcao que recebera as informacoes da pagina PHP
**/
function chamaAjax()
{
	// Instancia a classe ajax
	var ajx = new AJAX();
	// Define a url
	ajx.url = 'pagina.php';
	// Define o modo T = (Text), X = (XML)
	ajx.modo = 'T';
	// Mostra uma mensagem enquanto a pagina nao foi carregada
	document.getElementById('retorno').innerHTML= 'Carregando..';
	// Processa o resultado e retorna na variavel r
	ajx.processaresultado = function(r){
				 // Coloca o resultado na div 'retorno'
				document.getElementById('retorno').innerHTML= r;
	}
	// Conecta ao Ajax
	ajx.conectar();	
}
/**
Funcao recursiva que executara a funcao chamaAjax()
a cada 5 segundos
**/
function recursao(){
	setTimeout('chamaAjax()', 1000);
	setTimeout('recursao()', 5000);
}
recursao();
</script>
<div id="retorno"></div>

Cria uma pagina separada soh para vc fazer o teste,
assim vc intenderia melhor, tipo:
- teste.php ( Que contem esse codigo acima)
- ajax.js (com a classe ajax )
- pagina.php (Que retornará um texto )

+ No caso das duas tabelas no banco de dados.
Utilize o INNER JOIN, tipo:

SELECT tab1.nome, tab2.usuario
FROM tab1
INNER JOIN tab2
ON tab2.cod_tab1 = tab1.cod_tab1
WHERE .....


Nao sei se deu pra intende
qualque coisa posta ai
:D
Descrição
Alexandre Magno Semmer
www.alexandresemmer.com
Programador Web

Programação
ASP, PHP, JavaScript, CSS, SQL, JAVA, C, Paschal, Ajax, XML
Usuário
Posted Image
Links
Ajax Online - FireBug (Firefox) - Documentação PHP - Documentação Prototype - Documentação jQuery - Script.Aculo.Us

#5 rogerio_st

rogerio_st

    Novato no fórum

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

Posted 15/01/2007, 11:25

carneiro,

Tentei a sua sugestão mas não retornou nada, rodei a pagina.php e lá sim ele busca as informações, logo o código php está correto, mas não consigo fazer a pagina testeajax.php buscar esse resultado, vou te mandar um PM com os códigos que eu fiz (copiei??) e o códig para gerar a tabela, se vc puder dar uma olhada pra ver onde eu estou vacilando...

ABS
Rogerio




0 user(s) are reading this topic

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

IPB Skin By Virteq