SlideShare una empresa de Scribd logo
1 de 20
Entender y exponer conceptos y ejemplos
relacionados con AJAX.
M.C.C. Edgar Omar Bañuelos Lozoya.
Tópicos de programación WEB.
No.Control Alumno(s)
10410511 Fernando Cortez Rodríguez
10410555 Noé Aarón Prieto Chaparro
1
¿Que es AJAX?
Ventajas y desventajas de AJAX
Ejemplo
2
3
 AJAX son las siglas de Asynchronous JavaScript And XML.
 No es un lenguaje de programación, sino un conjunto de tecnologías
(HTML-JavaScript-CSS-DHTML-PHP/ASP.NET/JSP-XML).
 La característica fundamental de AJAX es permitir actualizar parte de una
página con información que se encuentra en el servidor sin tener que refrescar
completamente la página. De modo similar podemos enviar información al servidor.
4
 Auto completar campos de texto o el mostrar sugerencias. Ejemplo:
http://www.raymondcamden.com/demos/2012/mar/27/
 Busquedas en tiempo real: http://www.codemashups.com/source/jquery/jquery-
search-autocomplete/
 Chat: http://www.phpfreechat.net/demo
5
 Para utilizar AJAX se tienen que dominar las siguientes tecnologías:
 HTML o XHTML
 CSS
 JavaScript
 DHTML Básicamente debemos dominar todos los objetos que proporciona el
DOM.
 XML Para el envío y recepción de los datos entre el cliente y el servidor.
 PHP o algún otro lenguaje que se ejecute en el servidor (ASP.Net/JSP)
6
7
 Utiliza tecnologías ya existentes.
 Soportada por la mayoría de los navegadores modernos.
 Interactividad. El usuario no tiene que esperar hasta que lleguen los datos del
servidor.
 Portabilidad (no requiere plug-in como Flash y Applet de Java)
 Mayor velocidad, esto debido que no hay que retornar toda la página nuevamente.
 La página se asemeja a una aplicación de escritorio.
8
 Se pierde el concepto de volver a la página anterior.
 Si se guarda en favoritos no necesariamente al visitar nuevamente el sitio se ubique
donde nos encontrábamos al grabarla.
 La existencia de páginas con AJAX y otras sin esta tecnología hace que el usuario se
desoriente.
 Problemas con navegadores antiguos que no implementan esta tecnología.
 No funciona si el usuario tiene desactivado el JavaScript en su navegador.
 Requiere programadores que conozcan todas las tecnologías que intervienen en
AJAX.
 Dependiendo de la carga del servidor podemos experimentar tiempos tardíos de
respuesta que desconciertan al visitante.
9
Pagina1.html
Estilos.css
Funciones.js
Pagina1.php
10
 Enlazamos la hoja de estilo y la hoja javascript en nuestro documento HTML
 <script src="funciones.js" language="JavaScript"></script>
 <link rel="StyleSheet" href="estilos.css" type="text/css">
 En los enlaces del menú de signos del zodiaco podemos observar que cada
hipervínculo solicita la misma página al servidor pero pasándole como parámetro un
valor distinto, con esto podremos detectar en el servidor que signo a elegido el
operador.
11
 Lo primero que se ejecuta es la llamada a la función inicializarEventos()
inmediatamente luego que la página se a cargado por completo en el navegador:
 En esta función registramos el evento click para los doce enlaces de los signos del
horóscopo
12
 La función presión enlace:
Primero detecta que navegador se trata y procede a desactivar el evento por defecto para el
hipervínculo, luego llama a la función cargarHoroscopo pasandole como referencia la url que contiene
el hipervínculo.
13
 Veamos ahora la función cargarHoroscopo:
 Previo a la definición de esta función definimos una variable global llamada conexion1
que será utilizada en esta y la siguiente función.
 La función recibe como parámetro la url a la que debe hacer la petición de datos. Lo
primero que verificamos que el parámetro no llegue vacío, en caso de estar vacío
salimos con el comando return.
14
 El siguiente paso es llamar a la función crearXMLHttpRequest que crea y retorna un
objeto de la clase XMLHttpRequest (luego veremos que este objeto nos permite
comunicarnos con el servidor de forma asincrónica):
 conexion1=crearXMLHttpRequest()
 Esta función se encuentra codificada más abajo dentro del mismo archivo y tiene por
objetivo retornar un objeto de la clase XMLHttpRequest.
 La creación del objeto de la clase XMLHttpRequest se implementa separada en otra
función porque depende del navegador que se trate la sintaxis cambia:
15
 Retornemos a la función cargarHoroscopo y veamos que hacemos con el objeto de la
clase XMLHttpRequest que acabamos de crear:
 La propiedad onreadystatechange se inicializa con la referencia de una función que será
la encargada de procesar los datos enviados por el servidor, veremos el código de esta
función más adelante.
 Seguidamente llamamos al método open que tiene tres parámetros:
 Primero el método de envío de datos (GET o POST) Recordemos que si los datos se
envían como parámetros (como es nuestro ejemplo) debemos indicar que utilizamos el
método GET
 El segundo parámetro es la url y la página que procesará los datos que le enviemos.
 El tercer parámetro indicamos si se procesarán los datos de forma asíncrona (true) o
síncrona (false)
 Por último nos falta llamar al método send para que comience el proceso:
16
Queda explicar la función procesarEventos que se ejecuta cada vez que el objeto conexion1 de la
clase XMLHttpRequest cambia de estado. Tengamos en cuenta que los estados posibles de este
objeto son:
 0 No inicializado.
 1 Cargando.
 2 Cargado.
 3 Interactivo.
 4 Completado.
 Para conocer el estado del objeto debemos acceder a la propiedad readyState que almacena alguno
de los cinco valores que enunciamos.
 Decíamos que cuando la propiedad readyState almacena 4 significa que todos los datos han llegado
desde el servidor, luego mediante el método responseText recuperamos la información enviada por
el servidor. Luego cualquier otro valor que contenga la propiedad readyState mostramos dentro del
div el mensaje 'cargando...'.
17
Archivo PHP
Mediante el vector asociativo $_REQUEST recuperamos el valor del parámetro cod y
mediante una serie de if verificamos si almacena el valor 1 procedemos a generar un
texto referente al signo Aries, si tiene un 2 generamos un texto referente al signo Tauro
y así sucesivamente.
18
 Es importante conocer los conceptos básicos de AJAX para poder implementar una
web dinámica que permita interactuar al usuario con el servidor en tiempo real.
 El conocer sus ventajas nos permite dar una idea de la capacidad que tiene esta
tecnología para realizar diversas funciones y poder determinar cual de ellas se
adaptaría mejor a la web que se fuera a desarrollar.
 Pero también es importante conocer y manejar las diferentes tecnologías que el
desarrollo web nos ofrece, para asi poder comprender y utilizar de una mejor manera
la tecnología AJAX.
 Inconvenientes: No se presentaron inconvenientes.
 El tiempo aproximado de la elaboración de la exposición fue de 6 horas.
19
 http://www.ajaxya.com.ar/temarios/descripcion.php?cod=8&punto=1
 http://www.ajaxya.com.ar/temarios/descripcion.php?cod=34&punto=2
 http://www.ajaxya.com.ar/temarios/descripcion.php?cod=9&punto=3
20

Más contenido relacionado

La actualidad más candente

Que es AJAX
Que es AJAXQue es AJAX
Que es AJAX
ITSTB
 

La actualidad más candente (17)

Clase 9 eventos
Clase 9 eventosClase 9 eventos
Clase 9 eventos
 
Usando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHPUsando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHP
 
Tema servlets
Tema servletsTema servlets
Tema servlets
 
SALUDOS EN INGLES
SALUDOS EN INGLESSALUDOS EN INGLES
SALUDOS EN INGLES
 
Que es AJAX
Que es AJAXQue es AJAX
Que es AJAX
 
Taller programación web ajax con jquery
Taller programación web  ajax con jqueryTaller programación web  ajax con jquery
Taller programación web ajax con jquery
 
Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012
 
Connection
ConnectionConnection
Connection
 
CTF Hackademic.RTB2
CTF Hackademic.RTB2CTF Hackademic.RTB2
CTF Hackademic.RTB2
 
Diseño web clase03
Diseño web clase03Diseño web clase03
Diseño web clase03
 
Conexión a postgres desde
Conexión a postgres desdeConexión a postgres desde
Conexión a postgres desde
 
Web de noticias en Ajax
Web de noticias en AjaxWeb de noticias en Ajax
Web de noticias en Ajax
 
Practica 1 html_basico
Practica 1 html_basicoPractica 1 html_basico
Practica 1 html_basico
 
Curso Java Avanzado 2 Servlets
Curso Java Avanzado   2 ServletsCurso Java Avanzado   2 Servlets
Curso Java Avanzado 2 Servlets
 
Web service
Web serviceWeb service
Web service
 
Intro phpmin53
Intro phpmin53Intro phpmin53
Intro phpmin53
 
Explicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundoExplicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundo
 

Similar a Ajax

Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jsp
dtbadboy0
 
Ajax ya temas 4-6 Equipo 2
Ajax ya temas 4-6 Equipo 2Ajax ya temas 4-6 Equipo 2
Ajax ya temas 4-6 Equipo 2
Guillermo Nassi
 

Similar a Ajax (20)

AJAX EN CURSO PHP
AJAX EN CURSO PHPAJAX EN CURSO PHP
AJAX EN CURSO PHP
 
Presentacion ajax
Presentacion   ajaxPresentacion   ajax
Presentacion ajax
 
Clase 5 AJAX - Desarrollo de aplicaciones móviles
Clase 5  AJAX - Desarrollo de aplicaciones móvilesClase 5  AJAX - Desarrollo de aplicaciones móviles
Clase 5 AJAX - Desarrollo de aplicaciones móviles
 
Capitulo 4.7 prog iii
Capitulo 4.7 prog iiiCapitulo 4.7 prog iii
Capitulo 4.7 prog iii
 
Ajax
AjaxAjax
Ajax
 
Ajax
AjaxAjax
Ajax
 
Como usar ajax con jquery
Como usar ajax con jqueryComo usar ajax con jquery
Como usar ajax con jquery
 
introduccion a Ajax
introduccion a Ajaxintroduccion a Ajax
introduccion a Ajax
 
7. Utilización de mecanismos de comunicación asíncrona
7. Utilización de mecanismos de comunicación asíncrona7. Utilización de mecanismos de comunicación asíncrona
7. Utilización de mecanismos de comunicación asíncrona
 
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control ToolkitDesarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
 
Curso ajax
Curso ajaxCurso ajax
Curso ajax
 
expo
expoexpo
expo
 
Servlet
ServletServlet
Servlet
 
Dar lab1819
Dar lab1819Dar lab1819
Dar lab1819
 
01 Ext Js Introduccion
01 Ext Js   Introduccion01 Ext Js   Introduccion
01 Ext Js Introduccion
 
Ajax
AjaxAjax
Ajax
 
Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jsp
 
Ajax ya temas 4-6 Equipo 2
Ajax ya temas 4-6 Equipo 2Ajax ya temas 4-6 Equipo 2
Ajax ya temas 4-6 Equipo 2
 
4. Curso Java JSP (Java Server Pages) - Curso 2005-2006
4. Curso Java JSP (Java Server Pages) - Curso 2005-20064. Curso Java JSP (Java Server Pages) - Curso 2005-2006
4. Curso Java JSP (Java Server Pages) - Curso 2005-2006
 
Ajax Huancayo
Ajax HuancayoAjax Huancayo
Ajax Huancayo
 

Último

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Último (15)

Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 

Ajax

  • 1. Entender y exponer conceptos y ejemplos relacionados con AJAX. M.C.C. Edgar Omar Bañuelos Lozoya. Tópicos de programación WEB. No.Control Alumno(s) 10410511 Fernando Cortez Rodríguez 10410555 Noé Aarón Prieto Chaparro 1
  • 2. ¿Que es AJAX? Ventajas y desventajas de AJAX Ejemplo 2
  • 3. 3
  • 4.  AJAX son las siglas de Asynchronous JavaScript And XML.  No es un lenguaje de programación, sino un conjunto de tecnologías (HTML-JavaScript-CSS-DHTML-PHP/ASP.NET/JSP-XML).  La característica fundamental de AJAX es permitir actualizar parte de una página con información que se encuentra en el servidor sin tener que refrescar completamente la página. De modo similar podemos enviar información al servidor. 4
  • 5.  Auto completar campos de texto o el mostrar sugerencias. Ejemplo: http://www.raymondcamden.com/demos/2012/mar/27/  Busquedas en tiempo real: http://www.codemashups.com/source/jquery/jquery- search-autocomplete/  Chat: http://www.phpfreechat.net/demo 5
  • 6.  Para utilizar AJAX se tienen que dominar las siguientes tecnologías:  HTML o XHTML  CSS  JavaScript  DHTML Básicamente debemos dominar todos los objetos que proporciona el DOM.  XML Para el envío y recepción de los datos entre el cliente y el servidor.  PHP o algún otro lenguaje que se ejecute en el servidor (ASP.Net/JSP) 6
  • 7. 7
  • 8.  Utiliza tecnologías ya existentes.  Soportada por la mayoría de los navegadores modernos.  Interactividad. El usuario no tiene que esperar hasta que lleguen los datos del servidor.  Portabilidad (no requiere plug-in como Flash y Applet de Java)  Mayor velocidad, esto debido que no hay que retornar toda la página nuevamente.  La página se asemeja a una aplicación de escritorio. 8
  • 9.  Se pierde el concepto de volver a la página anterior.  Si se guarda en favoritos no necesariamente al visitar nuevamente el sitio se ubique donde nos encontrábamos al grabarla.  La existencia de páginas con AJAX y otras sin esta tecnología hace que el usuario se desoriente.  Problemas con navegadores antiguos que no implementan esta tecnología.  No funciona si el usuario tiene desactivado el JavaScript en su navegador.  Requiere programadores que conozcan todas las tecnologías que intervienen en AJAX.  Dependiendo de la carga del servidor podemos experimentar tiempos tardíos de respuesta que desconciertan al visitante. 9
  • 11.  Enlazamos la hoja de estilo y la hoja javascript en nuestro documento HTML  <script src="funciones.js" language="JavaScript"></script>  <link rel="StyleSheet" href="estilos.css" type="text/css">  En los enlaces del menú de signos del zodiaco podemos observar que cada hipervínculo solicita la misma página al servidor pero pasándole como parámetro un valor distinto, con esto podremos detectar en el servidor que signo a elegido el operador. 11
  • 12.  Lo primero que se ejecuta es la llamada a la función inicializarEventos() inmediatamente luego que la página se a cargado por completo en el navegador:  En esta función registramos el evento click para los doce enlaces de los signos del horóscopo 12
  • 13.  La función presión enlace: Primero detecta que navegador se trata y procede a desactivar el evento por defecto para el hipervínculo, luego llama a la función cargarHoroscopo pasandole como referencia la url que contiene el hipervínculo. 13
  • 14.  Veamos ahora la función cargarHoroscopo:  Previo a la definición de esta función definimos una variable global llamada conexion1 que será utilizada en esta y la siguiente función.  La función recibe como parámetro la url a la que debe hacer la petición de datos. Lo primero que verificamos que el parámetro no llegue vacío, en caso de estar vacío salimos con el comando return. 14
  • 15.  El siguiente paso es llamar a la función crearXMLHttpRequest que crea y retorna un objeto de la clase XMLHttpRequest (luego veremos que este objeto nos permite comunicarnos con el servidor de forma asincrónica):  conexion1=crearXMLHttpRequest()  Esta función se encuentra codificada más abajo dentro del mismo archivo y tiene por objetivo retornar un objeto de la clase XMLHttpRequest.  La creación del objeto de la clase XMLHttpRequest se implementa separada en otra función porque depende del navegador que se trate la sintaxis cambia: 15
  • 16.  Retornemos a la función cargarHoroscopo y veamos que hacemos con el objeto de la clase XMLHttpRequest que acabamos de crear:  La propiedad onreadystatechange se inicializa con la referencia de una función que será la encargada de procesar los datos enviados por el servidor, veremos el código de esta función más adelante.  Seguidamente llamamos al método open que tiene tres parámetros:  Primero el método de envío de datos (GET o POST) Recordemos que si los datos se envían como parámetros (como es nuestro ejemplo) debemos indicar que utilizamos el método GET  El segundo parámetro es la url y la página que procesará los datos que le enviemos.  El tercer parámetro indicamos si se procesarán los datos de forma asíncrona (true) o síncrona (false)  Por último nos falta llamar al método send para que comience el proceso: 16
  • 17. Queda explicar la función procesarEventos que se ejecuta cada vez que el objeto conexion1 de la clase XMLHttpRequest cambia de estado. Tengamos en cuenta que los estados posibles de este objeto son:  0 No inicializado.  1 Cargando.  2 Cargado.  3 Interactivo.  4 Completado.  Para conocer el estado del objeto debemos acceder a la propiedad readyState que almacena alguno de los cinco valores que enunciamos.  Decíamos que cuando la propiedad readyState almacena 4 significa que todos los datos han llegado desde el servidor, luego mediante el método responseText recuperamos la información enviada por el servidor. Luego cualquier otro valor que contenga la propiedad readyState mostramos dentro del div el mensaje 'cargando...'. 17
  • 18. Archivo PHP Mediante el vector asociativo $_REQUEST recuperamos el valor del parámetro cod y mediante una serie de if verificamos si almacena el valor 1 procedemos a generar un texto referente al signo Aries, si tiene un 2 generamos un texto referente al signo Tauro y así sucesivamente. 18
  • 19.  Es importante conocer los conceptos básicos de AJAX para poder implementar una web dinámica que permita interactuar al usuario con el servidor en tiempo real.  El conocer sus ventajas nos permite dar una idea de la capacidad que tiene esta tecnología para realizar diversas funciones y poder determinar cual de ellas se adaptaría mejor a la web que se fuera a desarrollar.  Pero también es importante conocer y manejar las diferentes tecnologías que el desarrollo web nos ofrece, para asi poder comprender y utilizar de una mejor manera la tecnología AJAX.  Inconvenientes: No se presentaron inconvenientes.  El tiempo aproximado de la elaboración de la exposición fue de 6 horas. 19