¿Cómo get datos de la database sin tener que volver a cargar la página?

Quiero hacer un panel de preguntas y respuestas cuando el usuario hace cualquier pregunta que se muestra en la parte superior de la split sin volver a cargar la página, por eso creo que tengo que establecer una connection con la database cada pocos segundos. Ahora la pregunta es ¿cómo hacer la connection sin volver a cargar la página y cómo mostrar una nueva pregunta?

Tienes dos opciones:

  1. Ajax , que le permite recuperar datos del server con JavaScript, que luego puede usar para manipular el DOM. La base de Ajax es el object XMLHttpRequest , que le permite recuperar datos completamente detrás de escena en JavaScript. Tenga en count que Ajax está limitado por la misma política de origen , pero para lo que está describiendo, está bien, estará cargando datos del mismo origen.

  2. Marcos (por ejemplo, elementos de iframe ), en los que puede cargar contenido estableciendo su propiedad src .

De los dos, Ajax es mucho más flexible.

Referencias / lectura adicional:

  • Núcleo DOM2
  • DOM2 HTML
  • DOM3 Core
  • API de aplicaciones web HTML5
  • Objeto XMLHttpRequest

Nota al margen: aunque obviamente puede utilizar XMLHttpRequest y los methods DOM directamente, tenga en count que existen diferencias entre browseres (y errores directos), que una buena biblioteca puede corregir como jQuery , Prototype , YUI , Closure o cualquiera de varios otros . También brindan una gran cantidad de funcionalidades de utilidad útiles, lo que le permite concentrarse en el problema real que está tratando de resolver en lugar de en los detalles de la tubería.

Por ejemplo, así es como enviarías una request Ajax a un server usando jQuery y tendrías un elemento en la página actualizado con el fragment de HTML que el server envía de vuelta:

 $("#target").load("get_the_data.php", {article: x}); 

Eso dice: solicite un fragment HTML de get_the_data.php enviándole el article del parámetro con el valor de la variable x , y ponga ese fragment HTML dentro del elemento que tiene el id HTML "objective". Eso sería un buen 10 líneas de código si no usaste una biblioteca. Ahora, eso no es mucho, pero repítelo una y otra vez (y en el process lidiar con un error de IE al search elementos por su id ), y verá cómo puede sumrse.

Te recomiendo que leas las references anteriores para que sepas cómo las bibliotecas están haciendo lo que están haciendo (no es mágico), pero no hay razón para no aprovechar el arduo trabajo que las personas han hecho para facilitar estas cosas.

Creo que lo que necesitas es AJAX. Es una forma de contactar al server con solo una actualización parcial de la página. No sé cómo funciona con php ya que utilizo asp.net pero aquí hay un enlace que puede ayudar.

Es el turno de Ajax. Lo que necesitas es una tecnología llamada AJAX. Puede encontrar algo utilizable en la biblioteca jQuery que proporciona diferentes methods para trabajar con Ajax más fácilmente.

http://api.jquery.com/jQuery.ajax/

Creará una relación con su lenguaje de progtwigción del lado del server y su database a través de un lenguaje de scripting del lado del cliente (Javascript en este caso). Este es un ejemplo de estas realaciones:

http://jqueryui.com/demos/autocomplete/

Debe considerar las tecnologías push / publish / subscription. Pocos de los que sé que son pubnum y commet

    Intereting Posts