Como enviar una petición AJAX con POST con parametros

Hola a todos, hoy os voy a explicar como podemos recuperar datos con un GET en AJAX.

La mejor forma de conectar PHP con Javascript, es usando AJAX, en nuestro caso, vamos a mandar desde Javascript un objeto y con PHP nos va a crear un fichero JSON con ese objeto.

Recordar que Javascript no puede crear ficheros, pero PHP si.

Para quien no lo sepa, AJAX es Asynchronous JavaScript And XML, esto significa que no ejecuta al momento, sino que hace una petición y este espera a que reciba la respuesta, continuando el flujo del programa.

Mi recomendación es hacer este ejemplo en un servidor local o un servidor real, ya que tenemos código  PHP que ejecutar.

Tendremos un HTML básico, sin nada mas que un Javascript asociado:

Lo primero que haremos es crear la estructura de HTML.

 

Ya teniendo creado nuestro main.js, empezamos creando nuestra función y asociarlo con el onload para que se ejecute al principio.

Creo el objeto que es el que hará la llamada:

Indicamos la ruta del fichero PHP al que llamare, en mi caso esta en el mismo sitio que  el fichero JS.

Os voy a pasar el contenido del fichero PHP.

Creo el objeto que yo le voy a querer pasar al PHP.

Como queremos pasar el objeto al fichero PHP, debemos poner parámetros. Así lo hacemos:

Si queréis mandar mas de uno, tendrás que hacerlo así:

Ahora vamos a establecer que función realizara nuestra petición al recibir los datos.

La condición del if sirve para comprobar que la petición ha llegado correctamente.

Y dentro del if lo que hacemos es parsear el objeto que con llega en responseText.

Por ultimo, debemos lanzar la petición, con los métodos open y send del XMLHttpRequest.

En open, indica el tipo de llamada (POST), la url a la que llamo (la del fichero PHP) y si es asíncrono o no (si, es decir, true).

Al hacer send, enviamos la petición donde le hemos indicado y al recibir los datos llamara a la función que le hemos indicado, tenemos que pasarle los parámetros.

También deberemos añadir esta linea, antes de enviar la petición.

Sino la ponemos, nos puede dar problemas. OS recomiendo ponerlo.

Veamos todo el ejemplo completo:

Con esto estaría todo, vamos a probarlo en el navegador (abrir la consola del navegador):

Y se creara este fichero:

Os dejo un vídeo donde lo explico todo con mas detalle:

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539