Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

eucyelle

[Resolvido] setInterval()

Recommended Posts

Olá estou com uma dificuldade ao tentar atualizar uma div. Se alguém poder me ajudar??

 

<script type="text/javascript">

 	$(document).ready(
		function()
		{
                           atualiza();
 		 	});


	function atualiza()
	{
       	    document.getElementById(myChart).hrerf="grafico.php";

                   setInterval('atualiza()', 5000);
               }
      <table>
       .....

      <div id="myChart" style="width:550px; height:350px; background:#E9EAEF"></div>

      <script type="text/javascript">

         // aqui o código para a criação de um gráfico que precisa ser atualizado de 5 em 5 segundos

</script>

      </table>

</script>





Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o problema exatamente?

 

eu preciso de 5 em 5 segundos atualizar um gráfico, esse gráfico eh gerado a partir de dados do BD. Acredito que o caminho seja esse mas não tah dando certo se você tiver alguma outra maneira? Aqui tah a parte do código onde eu pego do banco de dados e depois na div "myChart" ploto o gráfico.

 



    <script type="text/javascript">

 	$(document).ready(
		function()
		{
              atualiza();
 		 	});

	 // FUNÇÃO PARA ATUALIZAR A DIV AUTOMÁTICAMENTE A CADA X SEGUNDOS	
	function atualiza()
	{
       	document.getElementById(par).hrerf="grafico.php";

            setInterval('atualiza()', 3000);
       }

</script>




  <form action="" method="post"> 
  <table width="100%" border="0" cellspacing="0" cellpadding="5">
 <tr>
   <td colspan="4">Dados e Gráfico</td>
   </tr>
 <tr>


 <?php




		include('conecta.php');

		$iLeitor=$_POST['escolha'];

		if($iLeitor=="selecione")
		{
			echo "<script>history.go(-1),alert('Por favor selecione um Sensor!')</script>";
		}

		//Coordenar a seleção
		$iCont2 = 0;
		$iCont = 0;

		// Seleção dos dados
		$sql="SELECT * FROM leituras WHERE sensor LIKE '%$iLeitor%'";
		$linha=mysql_query($sql,$conexao);
		$iContando = mysql_affected_rows(); // Conta as linhas q tem ma execução anterior
		$iContArray = 0;


		// Selecionar o Leitor
		$sql2="SELECT * FROM sensores WHERE id LIKE '%$iLeitor%'";
		$linha2=mysql_query($sql2,$conexao);
		$campo2=mysql_fetch_row($linha2);

		$iGerente=$campo2[3];

		// Seleciona o Genrente
		$sql3="SELECT * FROM gerentes WHERE id LIKE '%$iGerente%'";
		$linha3=mysql_query($sql3,$conexao);
		$campo3=mysql_fetch_row($linha3);

?>
   <td>Leitor: </td>
   <td colspan="2"><?php echo $campo2[1]?></td>
   <td></td>
 </tr>
 <tr>




   <td width="9%">Gerente: </td>
   <td colspan="2"><?php echo $campo3[1]?></td>
   <td width="28%">      </td>
 </tr>
 <tr>
   <td colspan="3" rowspan="2">




     <div id="myChart" style="width:550px; height:350px; background:#E9EAEF"></div>


     <script type="text/javascript">


	var chart = new EJSC.Chart("myChart", 
	{
		// tira a legenda
		show_legend: false,
		title: " ",

		axis_bottom:
		{
			caption: "Amostras",

			color: 'rgb(255,0,0)',
			crosshair:
			{
				color: 'rgb(255,0,0)',
				show: true
			},
			cursor_position:
			{
				caption: 'X:',
				className: undefined,
				color: 'rgb(255,0,0)',
				formatter: undefined,
				show: true,
				textColor: 'rgb(0,0,0)',
			}
		},
		axis_left: 
		{
			caption: "Corrente A"
		}		
	});

	chart.addSeries(new EJSC.LineSeries(new EJSC.ArrayDataHandler([

	<?php


		while(($campo = mysql_fetch_array($linha, MYSQL_NUM)) &&  ($iCont < $iContando))
		{
			if(($iCont == ($iContando - 1)))
			{
			?>
				[<?php echo $iCont?>,<?php echo $campo[2]?>]
			<?php 
			$iContGrava=$iCont;
			$iValorGrava=$campo[2];

			break;

			}//fim if($iCont2 == 4)
			else
			{
			?>
				[<?php echo $iCont?>,<?php echo $campo[2]?>],
			<?php
			}// fim else
			$iCont ++;
		}//fim  while($campo = mysql_fetch_array($consultar) &&  $iCont < 5)

		mysql_free_result($linha);
		mysql_free_result($campo);
	?>
	]),
	{
		autosort: false,
 	   		color: 'rgb(54,54,54)',
    		hint_string: ' Amostra: [x]<br/>Corrente: [y] A'
 		}

	));

</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente assim:

setInterval(atualiza, 5000);

 

Sem parenteses e sem aspas

 

Pensei assim mas não deu certo tbm!

 


setInterval( function()
	{
		atualizar();	
	}, 5000);  

	atualizar()
	{
		document.getElementById('myChart').hrerf="grafico.php";
	}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Funcionou!! rs

 

Obrigada!!!

 

Solução: Criei uma sessão pra salvar a Variável

 


<?php 

include('conecta.php');

session_start ();
$iLeitor = $_SESSION['escolha'];

?>

.

 

 

 

 

 

<script type="text/javascript">

	$(document).ready(function()
	{
       	atualiza();
       });

       function atualiza()
	{
       // FUNÇÃO PARA ATUALIZAR A DIV AUTOMÁTICAMENTE A CADA X SEGUNDOS
       	$.get('grafico.php', function(resultado)
		{
           	$('#myChart').html(resultado);
           })
           	setTimeout('atualiza()', 10000);
       } 	



</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.