Resumen de PHP: Bases de Datos, Formularios y MVC
PHP: Bases de Datos, Formularios y MVC para Estudiantes
Introducción
PHP es un lenguaje de scripting del lado del servidor diseñado para generar contenido dinámico en páginas web y procesar información en el servidor. En este material revisaremos conceptos centrales de PHP relacionados con sesiones, mezcla de HTML con PHP, inclusión y autocarga de archivos, interacción con bases de datos (sin entrar en programación orientada a objetos ni desarrollo web avanzado), y variables superglobales usadas para recibir datos.
Definición: PHP es un lenguaje de scripting interpretado que se ejecuta en el servidor y permite generar HTML dinámico, manejar sesiones y procesar datos recibidos desde el cliente.
1. Sesiones en PHP
¿Qué es una sesión?
Una sesión permite almacenar datos del usuario en el servidor entre distintas solicitudes HTTP. Se identifica mediante una cookie o un parámetro en la URL que mantiene el identificador de sesión.
Definición: Una sesión es un mecanismo para mantener datos persistentes por usuario entre peticiones HTTP, habitualmente mediante la función session_start().
Cómo iniciar y usar sesiones
- Siempre iniciar la sesión antes de enviar cualquier salida al navegador: usar session_start(); al comienzo del script.
- Almacenar datos en la superglobal $_SESSION, por ejemplo: $_SESSION['usuario'] = 'María';
- Recuperar datos con $_SESSION['usuario'].
- Cerrar o destruir la sesión con session_unset(); y session_destroy(); si es necesario.
Ejemplo práctico (esquema):
- Al inicio del script:
- session_start();
- $_SESSION['carrito'] = array();
- Para mostrar datos:
- session_start();
- echo $_SESSION['carrito'][0];
2. Mezclar PHP y HTML
Principio básico
El código PHP siempre debe ir entre las etiquetas de apertura y cierre: <?php y ?>. Dentro de esas etiquetas escribimos PHP; fuera de ellas escribimos HTML. Esto permite mezclar lógica y presentación.
Definición: Mezclar PHP y HTML es el uso conjunto de ambos lenguajes en un mismo archivo para generar contenido dinámico en el navegador.
Ejemplo con variables y echo
- Definir variables en PHP: $nombre = 'Ana';
- Insertar en HTML con echo o con la salida corta: <?php echo $nombre; ?>.
Ejemplo de uso con tabla y bucles:
- Crear un array de contactos y recorrerlo para generar cada fila de una tabla HTML.
- Ventaja: al agregar más elementos al array la tabla se actualiza sin cambiar el HTML estático.
Práctica recomendada:
- Mantener la lógica mínima en la plantilla; para proyectos más grandes separar responsabilidades (evitar mezclar mucho código PHP con HTML sin estructura).
3. Estructuras de repetición para generar HTML
- Usar foreach, for o while para recorrer datos y generar filas de tablas automáticamente.
- Ejemplo conceptual:
- $contactos = array(array('nombre'=>'Luis','apellido'=>'Pérez','email'=>'luis@example.com'), ...);
- foreach ($contactos as $c) { echo "<tr><td>{$c['nombre']}</td><td>{$c['apellido']}</td><td>{$c['email']}</td></tr>"; }
Beneficios:
- Escalabilidad: añadir elementos al array no requiere modificar el HTML.
- Mantenimiento: menos repetición y menor riesgo de errores humanos.
4. Incluir archivos: include vs require
Concepto
PHP permite reutilizar código mediante inclusión de archivos. Hay dos sentencias principales: include y require.
Definición: include y require insertan el contenido de un archivo externo en el script actual; la diferencia está en el tratamiento de errores si el archivo no existe.
Tabla comparativa:
| Característica | include | require |
|---|---|---|
| Si el archivo no existe | Warning (continúa ejecución) | Fatal error (detiene ejecución) |
| Uso recomendado | Archivos no críticos | Archivos críticos (clases esenciales) |
Buenas prácticas:
- Incluir una sola vez cada clase/archivo de definición importante para ev
¿Ya tienes cuenta? Iniciar sesión
PHP: conceptos esenciales
Klíčové pojmy: Iniciar sesiones con session_start() y usar $_SESSION para datos persistentes, Colocar PHP entre <?php y ?> al mezclar con HTML, Usar foreach/for/while para generar tablas dinámicas desde arrays, Preferir require para archivos críticos; include para no críticos, spl_autoload_register() evita múltiples includes y carga clases al necesitarlas, $_POST recibe datos de formularios con method="POST", $_GET recibe parámetros desde la URL; evitar datos sensibles por GET, $_REQUEST mezcla GET, POST y COOKIE y puede causar ambigüedad, Siempre validar y sanitizar datos recibidos antes de usarlos, Al añadir elementos al array, la interfaz HTML se actualiza sin cambiar código