Ver Mensaje Individual
  #4 (permalink)  
Antiguo 27/03/2006, 20:57
Avatar de uamistad
uamistad
 
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 11 meses
Puntos: 1
El ejemplo tal cuál no lo tengo, pero para hacerlo, ya que necesitas pedirle a la base de datos cada cierto tiempo que te dé información, necesitas un dominio moderado de Javascript para que continuamente estés llamando a un evento y sea ese evento el que, mediante el objeto XMLHttpRequest, sea el que esté preguntando contínuamente si la base de datos ha cambiado.

Mira, así que digas "súper-complicado", no es.

Te doy unas ideas de cómo comenzaría yo a resolver este problema (un plan, puede que tú encuentre uno más fácil), nota que el paso 3 es el típico ejemplo de cómo se usa AJAX que encuentras en cualquier tutorial:

1) Poner un botón de formulario que al pulsarlo, me devuelva una ventanita ALERT con el mensaje "hola mundo".

2) El mismo botón, pero ahora al presionarlo, escribe "hola mundo" en un DIV utilizando para ello la función getElementById()

3) El mismo botón, pero ahora al presionarlo, me crea un objeto XMLHttpRequest y le pide a una página que le devuelva algo, un "hola mundo" por ejemplo. Este es un simple:

echo "hola mundo"

...que no va a extraer de ninguna DB, pues aquella página, nombrémosla paginaprueba.php, lo único que hace es imprimir "hola mundo". La impresión la hará en el DIV que ya habíamos creado.

4) El mismo botón, pero ahora le pide a la página paginaprueba.php que se conecte a la base de datos y que extraiga un campo de alguna tabla, para decirle qué campo, se lo decimos por medio de un parámetro:

paginaprueba.php?campo=5

y el resultado lo imprimes en el DIV.

5) El mismo botón, pero ahora al presionarlo, llamarás al mismo evento que antes de terminar (el evento), tendrá un llamado tipo:

setTimeout("elEvento()",5000)

hacia sí mismo (al mismo evento, autollamándose cada 5000 milisegundos, es decir cada 5 segundos), y el resultado lo imprime en el DIV.

Claro, notarás que la información no está cambiando, pero ahora vas a la base de datos y cambias el campo y regresas a tu aplicación y ves que en pocos segundos, el valor cambiará y lo habrás logrado.


Como dijo Napoleón: Divide y Vencerás, =)

Y si tienes problemas, pues por aquí postea el código de lo que tienes y quien le sepa te tira un cable.

Saludos
__________________
"Di no al Internet Explorer" -Proverbio Chino-