viernes, 3 de octubre de 2008

Enviar valores con AJAX y recibirlos con REQUEST o POST (PHP)

En el post anterior (Cargar páginas con PHP y AJAX), comentábamos como sería la forma básica para comenzar con AJAX con las llamadas a otras páginas de manera asíncrona.

Ahora bien, vamos a suponer, que en la página que vamos a cargar, tiene secciones dentro de esta, y solo queremos mostrar una de ellas. Para ello podemos pensar de la manera que lo haríamos con PHP, por ejemplo: Vamos crear un vínculo a la página TARIFAS, lo cual seria asi:



Pero, nosotros queremos mostrar la tarifa para la renta de un Coche, entonces nuestro enlace se le añadirá lo siguiente:


Si tenemos un poco de experiencia con PHP, sabremos que llamamos la pàgina “Tarifas.php” y en la cual mandamos el valor “coches” en la variable “tarifa”.
Recibiremos el valor de la variable “tarifa” con el método POST o REQUEST, de la siguiente forma:


¿Pero como se puede realizar lo anterior con AJAX?

1. Creamos el objeto de AJAX (véase antes: Cargar páginas con PHP y AJAX y Cómo añadir ‘Cargando’ (loading) a AJAX).

2. Agregamos la siguiente función:



La cual recibe la página, el valor, y la capa en donde se cargaran los datos, y lo que envía es el valor recibo.

3. Ya por ultimo, la creación de nuestro enlace, del ejemplo de Tarifas, pero ahora en versión para AJAX:




Y listo!, ahí se tiene una llamada asíncrona con envío de valores.

2 comentarios:

bleyarkngel dijo...

hola Hector otra vez yo.

ahora tengo este problema al copiar esta funcion de "Enviar(_pagina,valor,capa)" dentro de mis anteriros funciones en ajax (js/ajax.js) que pusiste "en cargar pagina y enviar valores mediante un formulario" no me resulta nada ya no carga la pagina simplemente no hace nada.

osea copio esta funcion mas y ya todo se frego ya no carga la pagina y simplemente hago click y click y no pasa nada

y eso que aun no utilize la fucion esta Enviar(_pagina,valor,capa)" simplemente ya no funciona nada.

ahora si please es ayudame en eso que es lo que pasa.

salu2 y estare esperando.

Héctor Guedea dijo...

Que tal,
Mira en el http://guedea.blogspot.com/2008/09/cargar-pginas-con-php-y-ajax.html, quite el parametro (valor) de la función enviar, porque no se utiliza, tienes que agregar, en el enlace <a href="javascript:Enviar('pagina.php','valor','div')">Click</a>, y es asi como te debe de funcionar el de este ejemplo.