CursosEmpresasBlogLiveConfPrecios

Envío de imágenes

Clase 13 de 24 • Curso de PHP: Integración con HTML

Clase anteriorSiguiente clase

Contenido del curso

Introducción
  • 1
    ¿Cómo se renderiza una página web en mi computadora?

    ¿Cómo se renderiza una página web en mi computadora?

    08:20
  • 2
    Levantando un servidor local

    Levantando un servidor local

    09:59
¿Cómo combinar HTML con PHP?
  • 3
    PHP como preprocesador de HTML

    PHP como preprocesador de HTML

    08:43
  • 4
    Imprime texto y etiquetas HTML

    Imprime texto y etiquetas HTML

    07:00
  • 5
    Condicionales

    Condicionales

    11:43
  • 6
    Ciclos

    Ciclos

    09:41
  • 7
    ¿Cómo pasar variables de PHP a JavaScript?

    ¿Cómo pasar variables de PHP a JavaScript?

    16:26
  • 8
    Evita el código espagueti

    Evita el código espagueti

    08:58
  • 9
    Refactorizando código espagueti

    Refactorizando código espagueti

    18:19
Manejo de formularios
  • 10
    Cómo obtener una solicitud al servidor con PHP

    Cómo obtener una solicitud al servidor con PHP

    08:01
  • 11
    Envío de un formulario a través de GET

    Envío de un formulario a través de GET

    12:13
  • 12
    Envío de un formulario a través de POST

    Envío de un formulario a través de POST

    07:38
  • 13
    Envío de imágenes

    Envío de imágenes

    09:02
  • 14
    Guardando imágenes en el servidor

    Guardando imágenes en el servidor

    07:56
  • 15
    Tipos de inputs

    Tipos de inputs

    15:29
  • 16
    Otros tipos de inputs

    Otros tipos de inputs

    07:14
  • 17
    Valida si un formulario ha sido enviado

    Valida si un formulario ha sido enviado

    11:21
  • 18
    Sanitizando datos de mi formulario

    Sanitizando datos de mi formulario

    15:05
  • 19
    Validando datos

    Validando datos

    07:59
Proyecto: formulario de contacto
  • 20
    Creando el maquetado

    Creando el maquetado

    13:03
  • 21
    Haciendo la lógica de recepción del formulario

    Haciendo la lógica de recepción del formulario

    12:02
  • 22
    Integrando PHPMailer

    Integrando PHPMailer

    20:36
  • 23
    Implementando el servidor de correos de Gmail

    Implementando el servidor de correos de Gmail

    07:40
Conclusión
  • 24
    Es tu turno de poner todo en práctica

    Es tu turno de poner todo en práctica

    01:50
    Leslie

    Leslie

    student•
    hace 3 años

    Hola, con la intencion de tener un codigo mas limpio y legible hice una funcion para usar var_dump y ver el contenido de una variable, espero les sirva

    function debugger($variable) { echo "<pre>"; var_dump($variable); echo "</pre>"; }

    luego el uso solo es debugger($_FILES) por ejemplo

      Carlos Andrés Aristizabal

      Carlos Andrés Aristizabal

      student•
      hace 3 años

      ¡Súper bueno el aporte! Te cuento que todavía la podrías mejorar incluso más adicionando luego del último echo la función integrada die() , esta función interrumpe la ejecución del código para que puedas hacer un mejor debug. La implementación que lograrías ya existe en el framework Laravel y se conoce como dd() o dump and die.

      function dd($variable) { echo "<pre>"; var_dump($variable); echo "</pre>"; die(); }
      Raymundo Lara Garcia

      Raymundo Lara Garcia

      student•
      hace 3 años

      Increíble aporte, gracias! Tambien puedes hacerlo snippet si usas VS code:

      1. Abre la paleta de comandos (CTRL + SHIFT + P)
      2. Escribe "snippets" y pulsa ENTER
      3. Escribe PHP y pulsa ENTER
      4. Te abrirá un archivo JSON, pega el siguiente código al final de los comentarios:
      "Debugger":{ "prefix": "debugger", "body": [ "echo \"<pre>\";", "print_r($1);", "echo \"</pre>\";" ], "description": "Create a debugger structure" }
      • Guarda los cambios y ejecuta tu snippet en tu archivo php usando el valor de "prefix", en este caso "debugger"
      • Y como por arte de magia se escribirá todo el código y aparecerá el cursor donde indica "$1" para que escribas tu arreglo a debuggear
      • Puedes usar este truco para crear snippets de bloques de código que usas muy seguido
    Juan Camilo Figueroa Sierra

    Juan Camilo Figueroa Sierra

    student•
    hace 4 años

    justo necesitaba hacer una app web para subir documentos, Gracielas.

      Cristobal Nyram

      Cristobal Nyram

      student•
      hace 4 años

      x2

    Joel Dominguez Merino

    Joel Dominguez Merino

    student•
    hace 3 años

    Muy interesante como poder enviar archivos o imágenes desde el HTML al Servidor. Ahora, importante saber como guardar esa imagen antes de que sea eliminada de la carpeta temporal. Comparto mi apunte de la clase:

    Index

    <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>iJCode - Envío de imágenes</title> </head> <body> <!-- Creación de formulario --> <!-- Se debe cambiar el tipo de encriptación para el envío de imágenes --> <form action="./server.php" method="POST" enctype="multipart/form-data"> <label for="name">Nombre de la imágen: </label> <input type="text" name="name" id="name"> <br/> <label for="image">Selecciona la imágen</label> <input type="file" name="image" id="image"> <button type="submit">Enviar formulario</button> </form> </body> </html>

    Server

    <?php // Se obtienen los datos almacenados en las variables globales '$_POST' y '$_FILES' // Se imprime lo que se mando por el método POST print_r("<b>¿Qué contiene POST?</b>"); echo("<pre>"); var_dump($_POST); /* Ejemplo de salida: array(1) { ["name"]=> string(4) "Joel" } */ echo("</pre>"); // Se obtiene el nombre $nombre = (isset($_POST['name'])) ? $_POST['name'] : 'Sin nombre'; // Impresión de la variable $nombre print_r("<b>Nombre</b>"); echo("<pre>"); var_dump("Nombre: $nombre"); // string(12) "Nombre: Joel" echo("</pre>"); // Impresión de la variable global $_FILES print_r("<b>Imagen</b>"); echo("<pre>"); var_dump($_FILES ); /* Ejemplo de salida: array(1) { ["image"]=> array(5) { ["name"]=> string(9) "fondo.jpg" ["type"]=> string(10) "image/jpeg" ["tmp_name"]=> string(24) "C:\xampp\tmp\phpBC2E.tmp" ["error"]=> int(0) ["size"]=> int(1426311) } } */ var_dump($_FILES['image']['type']); // string(10) "image/jpeg" echo("</pre>");

    Resultado

    result.png

    Juan David Rueda Quiroga

    Juan David Rueda Quiroga

    student•
    hace 3 años

    Guardar los archivos directamente en el servidor desde el formulario nos deja expuesto a un hackeo https://book.hacktricks.xyz/pentesting-web/file-upload

    Santiago Velásquez Serna

    Santiago Velásquez Serna

    student•
    hace 2 años

    Para que el cuadro de dialogo solo muestre imagenes en las opciiones, podemos agregar a la etiqueta img el atributo: accept="image/*"

    José Luis Luna Rubio

    José Luis Luna Rubio

    student•
    hace 3 años

    Otra de las super variables globales de PHP es

    <?php $_FILES; ?>

    Cuando subimos un archivo mediante un formulario toda la data sera almacenada en dicha variable de PHP, es importante mencionar que para poder subir archivos en el formulario se debera de colocar el enctype="multipart/form-data", de lo contrario no podremos trabajar con archivos en el formulario.

    Jose Alejandro Pantoja Giraldo

    Jose Alejandro Pantoja Giraldo

    student•
    hace 2 años

    a ratos las cosas son solo de debuguear, verdad de dios que si jajaja xD

    LESTHER XITUMUL MANUEL

    LESTHER XITUMUL MANUEL

    student•
    hace 2 años

    Configurar tus propios snippets de código en Visual Studio Code

    1. Press CTRL + SHIFT + P
    2. Write Snippets
    3. Write the programming language’s name. It can be php in this case, then, press ENTER
    4. The previous step is gonna open a JSON file, here you can configure your snippets.
    "PHP Debugger":{ "prefix": "phpdebug", "body": [ "echo \"<pre>\";", "var_dump($$1);", "echo \"</pre>\";" ], "description": "Create a debugger structure" }

    El snippet de PHP proporcionado se llama "PHP Debugger" y tiene las siguientes propiedades:

    • prefix: El prefijo es el texto que debes escribir en tu editor de código para activar el snippet.
    • body: El cuerpo del snippet contiene el código que se insertará cuando se active el snippet. En este caso, el código imprimirá en el navegador el contenido de una variable utilizando la función var_dump y lo envolverá en etiquetas HTML <pre> para una mejor visualización.
    • description: La descripción es una breve explicación del propósito del snippet. En este caso, el propósito es crear una estructura de depuración para imprimir variables en PHP.
    LESTHER XITUMUL MANUEL

    LESTHER XITUMUL MANUEL

    student•
    hace 2 años

    Envío de archivos al servidor con PHP y HTML

    Para enviar archivos al servidor utilizando PHP y HTML, se utiliza el atributo enctype del elemento <form> con el valor "multipart/form-data". Además, se utiliza el input type "file" para permitir a los usuarios seleccionar y enviar archivos.

    Aquí tienes un ejemplo práctico de cómo enviar un archivo al servidor utilizando PHP y HTML:

    <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Enviar archivo al servidor</title> </head> <body> <h2>Enviar archivo al servidor</h2> <form action="procesar.php" method="POST" enctype="multipart/form-data"> <input type="file" name="archivo"> <button type="submit">Enviar</button> </form> </body> </html>

    En el ejemplo anterior, se crea un formulario con un campo de entrada de tipo "file" y se especifica el atributo enctype con el valor "multipart/form-data". Cuando el usuario selecciona un archivo y envía el formulario, el archivo se enviará al servidor.

    En el script PHP que procesa el formulario (procesar.php en este caso), se puede acceder al archivo enviado utilizando la superglobal $_FILES. Por ejemplo:

    <?php if(isset($_FILES['archivo'])) { $nombreArchivo = $_FILES['archivo']['name']; $tipoArchivo = $_FILES['archivo']['type']; $tamanoArchivo = $_FILES['archivo']['size']; $ubicacionTemporal = $_FILES['archivo']['tmp_name']; $errorArchivo = $_FILES['archivo']['error']; // Aquí puedes realizar acciones con el archivo, como guardarlo en una ubicación específica o procesar su contenido. // Por ejemplo, para mover el archivo a una carpeta "uploads" en el servidor: $carpetaDestino = 'uploads/'; move_uploaded_file($ubicacionTemporal, $carpetaDestino . $nombreArchivo); }

    En el ejemplo anterior, se accede a diferentes propiedades del archivo enviado a través de la superglobal $_FILES. Estas propiedades incluyen el nombre del archivo, el tipo de archivo, el tamaño del archivo, la ubicación temporal del archivo en el servidor y cualquier error relacionado con el archivo.

    Puedes realizar acciones con el archivo, como guardar el archivo en una ubicación específica en el servidor o procesar su contenido según tus necesidades.

    Recuerda que al trabajar con archivos enviados por los usuarios, es importante realizar validaciones y asegurarse de que el archivo cumpla con los requisitos deseados (por ejemplo, tamaño máximo, tipo de archivo permitido) antes de procesarlo o guardarlos en el servidor. Además, considera tomar medidas de seguridad adicionales, como renombrar los archivos antes de guardarlos y evitar la ejecución de archivos maliciosos en el servidor.

    Shelley Valdés Herrera

    Shelley Valdés Herrera

    student•
    hace 2 años

    Cambiar el servidor apache para mac

    Leonardo Jiménez Ubaque

    Leonardo Jiménez Ubaque

    student•
    hace 2 años

    Envío de Imágenes

    Para enviar archivos al servidor usando PHP tenemos la variable superglobal $_FILES.

    $_FILES

    Cualquier archivo subido y enviado al servidor es guardado en una carpeta temporal que se limpia cada cierto tiempo.

    La variable superglobal $_FILES contiene información en forma de array acerca del archivo que estamos manipulando, incluyendo su ruta a la carpeta temporal.

    $_FILES es una de las variables superglobales en PHP que se utiliza para acceder a la información relacionada con los archivos que se han cargado en el servidor a través de una solicitud HTTP POST. Esta variable es especialmente útil cuando estás trabajando con formularios HTML que permiten a los usuarios cargar archivos, como imágenes, documentos, videos, etc.

    Cuando un usuario envía un archivo a través de un formulario HTML con el atributo enctype configurado como "multipart/form-data" y el método POST, los detalles del archivo cargado se almacenan en el arreglo $_FILES. El contenido de $_FILES se organiza en un formato que proporciona información sobre el archivo cargado, como el nombre del archivo, su tipo MIME, la ubicación temporal en el servidor y otros detalles relevantes.

    Aquí hay un ejemplo básico de cómo utilizar $_FILES para manejar un archivo cargado:

    Supongamos que tienes un formulario HTML en un archivo llamado formulario.html:

    <form action="procesar.php" method="post" enctype="multipart/form-data"> <input type="file" name="archivo"> <input type="submit" value="Subir archivo"> </form>

    Luego, en un archivo llamado procesar.php, puedes manejar el archivo cargado usando $_FILES:

    <?php if ($_SERVER['REQUEST_METHOD'] === 'POST') { if (isset($_FILES['archivo'])) { $nombreArchivo = $_FILES['archivo']['name']; $tipoArchivo = $_FILES['archivo']['type']; $rutaTemporal = $_FILES['archivo']['tmp_name']; // Mover el archivo temporal a una ubicación permanente $rutaDestino = 'carpeta_destino/' . $nombreArchivo; move_uploaded_file($rutaTemporal, $rutaDestino); echo "Archivo subido con éxito: $nombreArchivo"; } else { echo "No se seleccionó ningún archivo."; } } else { echo "Esta página solo acepta solicitudes POST."; } ?>

    En este ejemplo, estamos verificando si la solicitud es una solicitud POST y luego accediendo a los detalles del archivo cargado a través de $_FILES. Luego, movemos el archivo temporal a una ubicación permanente utilizando move_uploaded_file().

    Recuerda que el manejo de archivos cargados también debe ser seguro. Debes validar y verificar el archivo para asegurarte de que es seguro antes de moverlo o procesarlo en tu servidor.

    Multipart Form Data

    Por defecto, al enviar formularios en HTML tenemos un tipo de encriptación “application/x-www-form-urlencoded”, sin embargo, cuando trabajamos con archivos debemos cambiar este tipo de encriptado a “multipart/form-data”.

    Código desarrollado para la clase:

    Formulario en HTML

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Formulario con envío de imágenes</title> </head> <body> <!-- Formulario --> <form action="server.php" method="post" enctype="multipart/form-data"> <!-- Nombre --> <label for="nombre">Nombre:</label> <input type="text" name="nombre" id="nombre" placeholder="Nombre"><br> <!-- Apellido --> <label for="apellido">Apellido:</label> <input type="text" name="apellido" id="apellido" placeholder="Apellido"><br> <!-- Edad --> <label for="edad">Edad:</label> <input type="number" name="edad" id="edad" placeholder="Edad"><br> <!-- Imagen --> <label for="edad">Imagen:</label> <input type="file" name="imagen" id="imagen"><br> <!-- Envio --> <input type="submit" value="Enviar"> </form> </body> </html>

    Servidor PHP

    <?php // Truco para debugear y ver lo que llega por POST echo "<pre>"; var_dump($_FILES); // Recupera la información que se envía por FILES echo "</pre>"; // Recuperamos los datos del formulario $nombre = $_POST['nombre']; $apellido = $_POST['apellido']; $edad = $_POST['edad']; $nombreImagen = $_FILES['imagen']['name']; // Recuperamos el nombre de la imagen // Mostramos los datos echo "Hola $nombre $apellido, tienes $edad años, tu imagen es $nombreImagen"; ?>
    jaime sandoval

    jaime sandoval

    student•
    hace 2 años

    cada vez q veo la configuracion distinta para mac, mas me gusta fedora jijiji

    Raymundo Lara Garcia

    Raymundo Lara Garcia

    student•
    hace 3 años

    Les dejo un mini tutorial para crear un snippet para debuggear arreglos:

    1. Abre la paleta de comandos (CTRL + SHIFT + P)
    2. Escribe "snippets" y pulsa ENTER
    3. Escribe PHP y pulsa ENTER
    4. Te abrirá un archivo JSON, pega el siguiente código al final de los comentarios:
    "Debugger":{ "prefix": "debugger", "body": [ "echo \"<pre>\";", "print_r($1);", "echo \"</pre>\";" ], "description": "Create a debugger structure" }
    • Guarda los cambios y ejecuta tu snippet en tu archivo php usando el valor de "prefix", en este caso "debugger"
    • Y como por arte de magia se escribirá todo el código y aparecerá el cursor donde indica "$1" para que escribas tu arreglo a debuggear
    • Puedes usar este truco para crear snippets de bloques de código que usas muy seguido
    Christopher Bruno Carrillo Pulido

    Christopher Bruno Carrillo Pulido

    student•
    hace 3 años

    Hola, no sé si a alguno de ustedes le servirá este tip, pero si les pasa como a mí, que andan en Ubuntu y no les gusta Chrome por los anuncios así que se fueron a Brave (Muy poco probable XD) al seleccionar una imagen como lo hicimos en el curso les saldrá lo siguiente:

    prueba_de_que_es_mejor_chrome.jpg
    Les sugiero que usen un navegador popular a estar días buscando si tenías un error tú 😢

    Emerson David Cabrera Salas

    Emerson David Cabrera Salas

    student•
    hace 3 años

    Demasiado pro esta clase!

    Nelson Gonzalez Escalante

    Nelson Gonzalez Escalante

    student•
    hace 3 años

    $_FILES

    Se suele usar para el trabajo con archivos en varios formatos, con esta Variable Super Global puedes acceder a la información del archivo que estas subiendo al servidor, por ejemplo si en un formulario el usuario carga una imagen y luego la sube al servidor haciendo clic en un botón Enviar imagen, cuando procesa la subida puedes ir obteniendo los datos de dicha imagen y manipular la imagen

    <?php if(isset($_FILES['imagen'])){ $datos = array(); $nombre = $_FILES['imagen']['name']; $pesodelaimagen = $_FILES['imagen']['size']; $temporal = $_FILES['imagen']['tmp_name']; $formato =$_FILES['imagen']['type']; // Acá puedes decidir que hacer con los datos que obtienes de la imagen que el usuario cargue al servidor } ?>

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads