test - actualizar una parte de la página web en php
php samples (4)
Hay una buena guía sobre cómo funciona el objeto XMLHttpRequest en http://www.jibbering.com/2002/4/httprequest.html
Solo necesita usar eso, con cualquier condición en la que desee desencadenar su actualización, y un script PHP que generará solo los datos que le interesan.
desarrollo una página en la que necesito actualizar una parte de una página web, no una completa en php usando Ajax. Por favor, ayúdame a hacer esto, gracias de antemano
La forma más rápida es usar la función de carga jquery
digamos que los contenidos que desea cambiar están dentro de un div
entonces puedes simplemente:
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$().ready(function() {
$("#dynamic").load("http://url/to/the/dynamic/data");
});
</script>
PHP no puede hacer esto, solo un lenguaje del lado del cliente como JavaScript. Dicho esto, la biblioteca jQuery le permitirá hacer esto muy fácilmente con su funcionalidad AJAX .
Index.php
<div id="scores"><!-- score data here --></div>
Podría actualizarse con el siguiente JavaScript:
$("#scores").load("index.php #scores");
Eso cargaría los contenidos de #score
del índice nuevamente sin refrescar toda la página.
Incluso puedes automatizarlo para actualizar cada 30 segundos usando setInterval()
;
var $scores = $("#scores");
setInterval(function () {
$scores.load("index.php #scores");
}, 30000);
Puede leer más acerca de $.load()
en http://api.jquery.com/load/#loading-page-fragments .
Aquí hay un ejemplo básico usando PrototypeJS .
new Ajax.Updater(''containerId'', ''/url/to/get/content'', {
parameters: { somename: ''somevalue'' }
});
- El primer argumento es la ID del contenedor para poner el resultado de la llamada Ajax.
- El segundo argumento es la URL para enviar la solicitud a
- El tercer argumento, en su forma más básica, es la lista de parámetros para enviar a la URL.
Para obtener más detalles sobre la solicitud Prototype Ajax, consulte la documentación de Ajax.Request .
Tomando una página de la buena respuesta de jQuery de Jonathan , así es como ejecutarías la solicitud de Ajax en un temporizador usando PeriodicalExecuter de Prototype.
new PeriodicalExecuter(function(pe) {
new Ajax.Updater(''containerId'', ''/url/to/get/content'', {
parameters: { somename: ''somevalue'' }
});
}, 30);