Contenido
Introducción una instalación LAMP - WAMP - MAMP
LAMP = Linux Apache MySQL PHP
WAMP = Windows Apache MySQL PHP
MAMP = Macintosh Apache MySQL PHP
Introducción a la plataforma tecnológica de desarrollo Web con PHP.
- Ventajas de una instalación LAMP - WAMP - MAMP
- Organizaciones y empresas que desarrollan y soportan la tecnología LAMP - WAMP - MAMP
- Configuración LAMP en Linux (Red Hat Enterprise Linux 5.1, Fedora 8, Ubuntu 7.10 u openSUSE 10.3)
- Instalación y configuración WAMP en Windows 2000, XP y Vista
- Instalación y configuración MAMP en OS X 10.5 (Leopard)
Aclaraciónes
- En nuestras instalaciones contamos con WIndows XP y Linux.
- Si desea trabajar con Windows Vista o Apple OS X 10.5 (Leopard) tendrá que traer su propio equipo.
- El curso NO incluye soporte para OS X 10.4 (Tiger), solo Leopard.
MySQL
MySQL es la base da datos más frecuentemente utilizada con PHP. En esta sección se cubre la instalación, configuración y administración esencial tanto en Linux, Windows y OS X 10.5.
- Instalación de MySQL 5.0 en Windows
- Utilizacion de los paquetes de MySQL en Linux
- Instalación de MySQL 5.0 en OS X 10.5 (Leopard)
- Trabajando con el daemon(servicio) de MySQL: Como arrancar, detener y verificar el estatus del daemon
- Configuración del daemon para que arranque automáticamente con el sistema operativo
- Reforzando la seguridad de MySQL
- Ejecución de scripts
- Importando información de archivos de texto en MySQL
- Creación de bases de datos
- Manejo de tablas: MyISAM, InnoDB, transacciones, integridad referencial
- Manejo de campos: Tipo de datos, atributos, indices
- Administración de Usuarios: Crear, borrar, cambiar passwords
- Administración de privilegios: Otorgar, revocar, etc.
- Respaldos
- Instalacion y utilización de cliente web phpMyAdmin
- Novedades en la versión 5.0.x: Modo estricto, procedimientos almacenados y vistas.
Apache
Instalación, configuración y administración básica en Linux, Windows y OS X 10.5.
- Instalación de Apache 2.2 en Windows
- Utilización de Apache en Linux
- Utilización de Apache en OS X 10.5 (Leopard)
- Trabajando con el daemon(servicio) de Apache: Cómo arrancar, detener y verificar el estatus del daemon
- Configuración del daemon para que arranque automáticamente con el sistema operativo
- Alojamiento de paginas Web
PHP
Instalación y configuración de PHP en Linux, Windows y OS X 10.5.
- Instalación de PHP 5.2 en Windows
- Utilización de los paquetes de PHP en Linux
- Utilización de los paquetes de PHP en OS X 10.5 (Leopard)
- Configuración de PHP
- Integrar PHP con Apache
Habilidades esenciales de HTML
Una situación muy común en el curso es que los asistentes no cuentan con los conocimientos esenciales de HTML.
Aunque HTML es muy sencillo, para desarrollar aplicaciones Web con PHP se debe contar con estos conocimientos.
Esta sección busca que los asistentes que no conocen HTML se familiaricen con las etiquetas HTML mas útiles y necesarias.
- Manejo de texto
- Rutas absolutas y relativas
- Imágenes
- Ligas
- Tablas HTML
- Hojas de Estilo en Cascada o CSS
Formas HTML
En esta parte se hace un rápido recorrido de las etiquetas HTML para el manejo de formas. Después nos concentramos en recibir y enviar información en PHP a través de las formas.
- Formas HTML: Campos de texto, casillas de selección (checkbox), botones de radio, listas y menús, campos ocultos
- Distintas maneras de enviar información: POST y GET
- Ventajas y desventajas de los métodos disponibles: POST vs GET
- Obtener la información de las formas HTML con PHP
- Enviando información al navegador con PHP
- Proteger las aplicaciones PHP contra ataques Cross Site Scripting (XSS)
- Generando formas HTML dinámicamente
El lenguaje PHP
El lenguaje de programación PHP utiliza sintaxis tipo C, en esta parte cubrimos los aspectos más relevantes y prácticos del lenguaje.
Esta sección está dirigida especialmente a desarrolladores que no conocen la sintaxis tipo C.
- Detalle del manejo de variables
- Tipos de datos que pueden contener las variables
- Manejo de constantes
- Alcance de las variables
- Operadores
- Conversión de datos
- Funciones útiles para manipular variables string y numéricas
- Manejo de arreglos
- If..else…elseif
- Switch
- Ciclos: For , Foreach, y While
- Funciones
- Include Files
Fechas
PHP maneja las fecha de manera muy diferente a otros lenguajes, en esta seccion cubrimos detalladamente como trabajar con distintas unidades de tiempo.
- Manejo de fechas con marcas de tiempo o timestamps
- Limitaciones de las marcas de tiempo
- Aplicar formato a fechas
- Calcular fechas a futuro o pasado
- Calcular diferencias de tiempo entre dos fechas
- Trabajar con fechas en base a semanas
- Convertir fechas texto a marcas de tiempo
- Validar fechas
Encabezados HTTP
Aunque PHP cuenta con numerosas funciones para interactuar con los navegadores, en ciertos casos es necesario utilizar encabezados del protocolo HTTP para controlar el funcionamiento de los navegadores.
- Redireccionar automáticamente a los usuarios de una página a otra
- Evitar que una página se aloje en el caché de los navegadores, proxys y/o firewalls
- Actualizar o "refrescar" automáticamente una página en cierto intervalo de tiempo
- Detección de las características de los navegadores: Tipo, idioma, dirección IP, etc.
Cookies
Las cookies son archivos de texto que se guardan en los equipos de los visitantes.
Son el mecanismo más utilizado para personalizar el contenido de un sitio para los visitantes.
- Ventajas y desventajas de almacenar información en las cookies
- Creando Cookies
- Almacenar y leer información de las Cookies
- Protegiendo las Cookies
- Determinando cuándo expiran las Cookies
- Eliminar las Cookies
Sesiones
Las sesiones son el equivalente de las cookies pero que se almacenan en el servidor Web. Nos permiten manejar información personalizada para cada usuario de nuestras aplicaciones.
- Ventajas y desventajas de las variables de sesión
- Sacando ventaja de las sesiones
- Habilitando las sesiones en PHP
- Crear, leer y borrar variables de sesión
- Control de la duración de las sesiones
- "Sacar" a los usuarios de una aplicación web en un tiempo limite de inactividad
Correo electrónico
El código para enviar correos electrónicos es muy sencillo, la dificultad es que PHP no envía correos por sí mismo, sino que lo hace utilizando un servicio adicional.
En el caso de Linux típicamente es Sendmail o Postfix, en el caso de Windows puede utilizar el que incluye el IIS. OS X 10.5 incluye Postfix.
En el caso de Windows utilizaremos PostCast Server (software gratuito) para el envío de correos.
- Enviando correo electrónico en Linux con Sendmail
- Enviando correo electrónico en Windows con PostCast Server
- Enviando correo electrónico en OS X 10.5 (Leopard) con Postfix
- Enviando correo en formato HTML
- Enviando correo en formato Texto
- Enviando archivos atados (attachments)
- Autenticacion con servidores SMTP
Introducción a las clases
Las clases son una manera de organizar el código para facilitar su reutilización.
Existen cientos de clases PHP disponibles en Internet a las que les puede sacar provecho.
El objetivo de esta sección es que se familiarize con la terminología y utilizar clases disponibles, así como crear sus propias clases.
- Ventajas de lo objetos sobre las funciones regulares
- Utilizando clases
- Creando nuestras propias clases
- Encapsulación
- Herencia
MySQLi (Extensión Mejorada)
PHP 5 incluye una extensión mejorada que nos permite explotar las capacidades de MySQL 4.1 y 5.0.
- Conectarse con MySQL desde PHP utilizando la interfase orientada a objetos
- Proteger las aplicaciones contra ataques de SQL Injection
- Insertar, actualizar, borrar y seleccionar información con PHP
- Integrar tablas de MySQL con formas HTML
- Coloreo alterno de registros
- Paginación de registros (mostrar cierto número de registros a la vez por página)
- Manejo de fechas y timestamps de MySQL
- Formato de fechas en MySQL
- Convertir fechas de PHP a fechas MySQL y viceversa
- Utilización de estatutos preparados
- Transacciones
- MySQL 5.0: Utilizar Procedimientos Almacenados desde PHP
- MySQL 5.0: Utilizar Vistas desde PHP
- Técnicas para separar la informacion de conexion (servidor, usuario, password y base de datos) del codigo fuente