Foros del Web » Programando para Internet » PHP »

detener script ya ejecutandose

Estas en el tema de detener script ya ejecutandose en el foro de PHP en Foros del Web. Hola amigos como puedo denter un scrip en lapzo de tiempo pero que muestre lo que se ha hecho por ejemplo hago una consulta a ...
  #1 (permalink)  
Antiguo 31/03/2005, 11:36
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 14 años, 4 meses
Puntos: 21
Pregunta detener script ya ejecutandose

Hola amigos como puedo denter un scrip en lapzo de tiempo pero
que muestre lo que se ha hecho
por ejemplo

hago una consulta a una tabla
mysql_query("LOCK TABLES $WEB_DIGITOS WRITE;");

$result = mysql_query("SELECT * FROM $WEB_DIGITOS", $conexion);
$row = mysql_fetch_row($result);
$actual=$row[2];

echo $actual;

sleep(10);
mysql_query("UNLOCK TABLES;");


el problema es que sleepp retarda a todo el scritp
yo lo que busco es retardar hasta donde se quedo , quiero que me muestre
el echo que hago antes de poner el sleep

que me sugieren amigos??

espero sus comentarios
__________________
gerardo
  #2 (permalink)  
Antiguo 31/03/2005, 11:44
Avatar de sism82  
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 14 años, 1 mes
Puntos: 1
ese script ya muestra el echo antes de poner el sleep, como dices
  #3 (permalink)  
Antiguo 31/03/2005, 11:54
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 14 años, 4 meses
Puntos: 21
no me muestra

No me muestra nada en pantalla hasta que se termine el sleep
__________________
gerardo
  #4 (permalink)  
Antiguo 31/03/2005, 12:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
PHP guarda en un buffer todo lo que se va generando como salida (por defecto) hasta que termina la ejecución del escript .. momento en el cual se entrega el buffer al cliente.

Puedes "forzar" ese salida del buffer vía:
flush()

Usalo justo despues de echo .. pero antes de tu sleep()

Un saludo,
  #5 (permalink)  
Antiguo 31/03/2005, 15:34
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 14 años, 4 meses
Puntos: 21
Gracias cluster

Pero me sigue haciendo lo mismo
cuando invoco la pagina no me muestra nada hasta que se termine de
ejecutar el sleep

$result = mysql_query("SELECT * FROM $WEB_DIGITOS", $conexion);
$row = mysql_fetch_row($result);
$actual=$row[2];

echo $actual;

flush();
sleep(10);
mysql_query("UNLOCK TABLES;");
__________________
gerardo
  #6 (permalink)  
Antiguo 01/04/2005, 06:52
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Entonces tendrás que revisar más sobre el control del buffer de PHP .. sobre todo de su configuración y detalles .. (a mi por lo menos con un simple flush() me funciona) .. pero hay muchos detalles que ver; por ejemplo .. algunos navegadores hasta que no reciben X bytes .. no empiezan a trabajarlo (procesarlo: mostrarlo) los datos que recibe ..

http://www.php.net/manual/en/ref.outcontrol.php

Un saludo,
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 14:04.