Foros del Web » Programando para Internet » Javascript »

Control inicio y detención de setinterval para la lectura de BD MYSQL

Estas en el tema de Control inicio y detención de setinterval para la lectura de BD MYSQL en el foro de Javascript en Foros del Web. Hola, de ante mano se agradece la colaboración, el tema es el siguiente, no he podido controlar la ejecución del comando setInterval al encontrar el ...
  #1 (permalink)  
Antiguo 02/10/2012, 13:13
Avatar de roxrodro  
Fecha de Ingreso: octubre-2012
Ubicación: Chile
Mensajes: 2
Antigüedad: 12 años, 1 mes
Puntos: 0
Control inicio y detención de setinterval para la lectura de BD MYSQL

Hola, de ante mano se agradece la colaboración, el tema es el siguiente, no he podido controlar la ejecución del comando setInterval al encontrar el valor que deseo desde una lectura a la BD, valor que traspaso de una búsqueda realizada en una pagina PHP sobre una BD mysql.
Lo explico a continuación, cargo la pagina principal junto con la ejecución del comando setInterval la que llama a una pagina php que consulta la DB en búsqueda de un dato en particular, cuando encuentre un registro dado le paso a la función que tiene el comando setInterval un valor por una variable php para detener la ejecución del setInterval y poder trabajar con este registro encontrado. mi problema es que no se detiene la ejecución o se detiene y no puedo volver a arrancar el setInterval, todo depende si el registro lo encuentra al iniciarse al cargar la pagina principal o si el registro lo encuentra después de ejecutado el intervalo.

aquí va el código de ejemplo

index.php

<?php
session_start();
?>

<head>
<script type='text/javascript' src="script/jquery.1.7.1.min.js"></script>
<script language="javascript">
var intval = "";
function start(){
intval=setInterval(function(){
$('#echos').load('timerconsulta.php');
stop();
},6000);
}

function stop(){
var variablejs = "<?php echo $_SESSION['ES']; ?>" ;
if (variablejs == "1") {
if(intval!=""){
clearInterval(intval);
intval="";
imprime("Timer detenido");
}
}
if (variablejs == "0") {
imprime("Timer andando");
}
}

function imprime(Texto) {
document.getElementById("Status_Timer").innerHTML = Texto;
}
</script>
</head>
<body onload="start_Int()">
<div id="Status_Timer">Timer andando</div>
<div id=echos><b>Cargando...</b>
<input type='button' id='idparar' value='parar' onClick='stop_Int()' />
<input type='button' id='idandar' value='andar' onClick='start_Int()' />
<input type='button' id='idimpr' value='imprime' onClick='imprime(<?php echo $_SESSION['ES']; ?>)' />
</div>
</body>


timerconsulta.php

<?
session_start();

mysql_connect('localhost','root','pass');
mysql_select_db('sys_ronline');
$ga = mysql_query("SELECT ID_CLIENTE FROM RA_CLIENTES WHERE ACTIVO = '1'");

if (mysql_num_rows($ga)==0) {
$_SESSION['ES'] = 0;
$nuevo_texto = 'VACIO ';
$nuevo_texto .= "<input type='button' id='idparar' value='parar' onClick='stop_Int(1)' />";
$nuevo_texto .= "<input type='button' id='idandar' value='andar' onClick='start_Int(1)' />";
$nuevo_texto .= '<input type="button" id="idimpr" value="imprime" onClick="imprime('.$_SESSION['ES'].')" />';
echo $nuevo_texto;
} else {
$_SESSION['ES'] = 1;
$nuevo_texto = 'es un valor de '.mysql_result($ga,0);
$nuevo_texto .= "<input type='button' id='idparar' value='parar' onClick='stop_Int(1)' />";
$nuevo_texto .= "<input type='button' id='idandar' value='andar' onClick='start_Int(1)' />";
$nuevo_texto .= '<input type="button" id="idimpr" value="imprime" onClick="imprime('.$_SESSION['ES'].')" />';
echo $nuevo_texto;
};
?>
  #2 (permalink)  
Antiguo 03/10/2012, 00:24
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 5 meses
Puntos: 220
Respuesta: Control inicio y detención de setinterval para la lectura de BD MYSQL

Es que estas cometiendo un error por falta de entender algunos concepto

Mira esta linea de codigo

var variablejs = "<?php echo $_SESSION['ES']; ?>" ;

Esto solo te devolverá un valor y no va a volver a tener un resultado hasta que la pagina se recargue ahí esta tu problema, la solución que te proponga seria que un tu ajax que estés haciendo devuelvas un valor de retorno que verifique si se realizo la sesión o no
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #3 (permalink)  
Antiguo 11/10/2012, 14:41
Avatar de roxrodro  
Fecha de Ingreso: octubre-2012
Ubicación: Chile
Mensajes: 2
Antigüedad: 12 años, 1 mes
Puntos: 0
Pregunta Respuesta: Control inicio y detención de setinterval para la lectura de BD MYSQL

Gracias por la respuesta Dradi, pero de que manera le podria entregar a mi ajax un valor que obtenga desde una consulta por PHP a Mysql? algún ejemplo... :) o solo debería consultar desde ajax a la BD?
  #4 (permalink)  
Antiguo 11/10/2012, 14:46
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 5 meses
Puntos: 220
Respuesta: Control inicio y detención de setinterval para la lectura de BD MYSQL

seria bueno que leiras un poco la documentacion para que entiendas como realizar un ajax correctamente

Saludos
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones

Etiquetas: control, html, inicio, input, js, lectura, php, select, setinterval
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:42.