Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/02/2006, 06:03
Absimiliard
 
Fecha de Ingreso: febrero-2006
Mensajes: 12
Antigüedad: 18 años, 3 meses
Puntos: 0
AJAX para traerse valores dinamicos hallados con PHP

Hola!

El programa consiste en que cada x tiempo, ejecuto un comando de UNIX, este genera una salida en un fichero, lee del fichero una cadena, y en funcion de esa cadena, actualiza un formulario.
Ese fichero se genera cada x tiempo, por lo que espero a que se genere, y lo vuelvo a leer.
En el foro de PHP hice la siguiente pregunta:
¿Porque la variable $salida siempre me tiene el valor de la primera lectura (cuando se ejecuta por primera vez)?
El fichero va teniendo valores distintos, pero me conserva siempre el primero.

Y me contestaron que es porque asi funciona PHP. Que lo que quería hacer, se podía hacer con AJAX, llamar de forma asíncrona a ese "script" php. Pero no se como hacerlo. Un ayuda?


<script language=javascript>

function actualizarFormulario(){

<?php

$archivo = "C:\apache2triad\htdocs\proyecto\estado";
// aqui me conecto por ssh2 a la maquina, y construyo el fichero salida
.................................................. .......................
$salida = file_get_contents("C:\apache2triad\htdocs\proyecto \estado");
unlink("C:\apache2triad\htdocs\proyecto\estado");

php?>

var estado = "<? echo "$salida"; ?>"

switch (estado){
case "COMPLETED":
id = 'transf_e_env_1'
document.getElementById(id).value = 'Completado'
document.getElementById(id).style.background = '#00CC00'
break;
case "ABORTED":
id = 'transf_e_env_1'
document.getElementById(id).value = 'Cancelado'
document.getElementById(id).style.background = '#FF0000'
break;
case "PENDING":
id = 'transf_e_env_1'
document.getElementById(id).value = 'Pendiente'
document.getElementById(id).style.background = '#FF9900'
break;
}
setTimeout('actualizarFormulario()', 30000)
}

</script>

Muchas gracias, y disculpar por las molestias.