1. Introducción a AJAX
Desde CGI a Flash pasando por DHTML
Ventajas e inconvenientes del entorno de las aplicaciones Web actuales
Introducción a Ajax
Definición de Ajax
¿Ajax es una tecnología nueva?
¿Por qué existe tanto interés en torno a Ajax actualmente?
Requisitos para utilizar Ajax
Resumen
2. Conceptos básicos sobre Ajax
Fundamentos de las peticiones y respuestas HTTP
El objeto XMLHttpRequest
Métodos de XMLHttpRequest
abort()
getAllResponseHeader
getResponseHeader("nombreEncabezado")
open("método","URL","async","nombreUsuario","clave")
setRequestHeader("etiqueta","valor")
send("contenido")
Propiedades de XMLHttpRequest
onreadystatechange
readyState
responseText
responseXML
status
statusText
Compatibilidad con distintos navegadores
Enviar una petición al servidor
Ejemplo básico con Ajax
Resumen
3. PHP y Ajax
¿Por qué PHP y Ajax?
Comunicación dirigida por el cliente y procesado en el lado del servidor
Ejemplos básicos
Expandir y contraer contenidos
Autocompletar
Validación de formularios
Mensajes de herramientas
Resumen
4. Ajax a base de datos
Introducción a MySQL
Conectar con MySQL
Consultar una base de datos MySQL
Precauciones y consejos sobre MySQL
Implementar las consultas Ajax de bases de datos en nuestro calendario
Autocompletar correctamente
Cargar el calendario
Resumen
5. Formularios
GET versus POST
Enviar valores
Validación de formularios
Resumen
6. Imágenes
Subir imágenes al servidor
Mostrar imágenes
Cargar imágenes
Generación dinámica de miniaturas
Resumen
7. Aplicación de Ajax al mundo real
El código
Aspecto visual
Funcionamiento
Resumen
8. Visualización ergonómica
Cuándo utilizar Ajax
Problemas con el botón Atrás
Navegación con Ajax
Ocultar y mostrar
Introducción a PEAR
HTML_Table
Resumen
9. Servicios Web
Introducción a los servicios Web SOAP
Dar paso a Ajax
A programar
Funcionamiento de la aplicación SOAP
Resumen
10. Aplicaciones Web con capacidad espacial
¿Por qué es Google Maps tan popular?
Por dónde empezar
Cómo funciona nuestro sistema de mapas
Resumen
11. Compatibilidad entre navegadores
Portabilidad Ajax
El botón Atrás
Interactividad Ajax
Renunciar a JavaScript elegantemente
El elemento noscript
Actualización de navegadores
Resumen
12. Seguridad
Mayor superficie de exposición a ataques
Estrategia 1: Reunir los puntos de entrada relacionados dentro de un contenedor común
Estrategia 2: Utilizar funciones estándar para procesar los datos introducidos por los usuarios
Cross-Site Scripting
Estrategia 1: Eliminar los elementos no deseados de los datos de entrada
Estrategia 2: Aplicar códigos de escape a los elementos cuando se muestren datos enviados por usuarios
Estrategia 3: Proteger las sesiones
Falsificación de peticiones entre sitios
Corfirmar las acciones importantes mediante un testigo único
Confirmar las acciones importantes con la contraseña del usuario
GET versus POST
Ataques CSRF accidentales
Denegación de servicio
Estrategia 1: Aplicar retardos a las peticiones
Estrategia 2: Optimizar los datos que devuelve Ajax
Proteger la propiedad intelectual y la lógica de negocios
Estrategia 1: Ofuscación JavaScript
Estrategia 2: Procesado del lado del servidor en tiempo real
Resumen
13. Prueba y depuración
Informe de errores JavaScript
Extensiones Firefox
La barra de herramientas Web Developer
DOM Inspector
LiveHTTPHeaders
Venkman JavaScript Debugger
Validación HTML
Extensiones de Internet Explorer
Barra de herramientas Internet Explorer Developer
Fiddler
Resumen
14. El DOM
Acceder a elementos del DOM
document.getElementById
getElementsByTagName
Acceder a elementos dentro de un formulario
Añadir y eliminar elementos del DOM
Manipular elementos del DOM
Manipulación XML mediante el DOM
Combinar Ajax y XML con el DOM
Funcionamiento del gestor de ubicaciones Ajax
Resumen alfabético