CursosEmpresasBlogLiveConfPrecios

Cómo obtener una solicitud al servidor con PHP

Clase 10 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
    Cristobal Nyram

    Cristobal Nyram

    student•
    hace 4 años

    Diferencia entre GET y POST es su nivel de acceso, por ejemplo en las variables GET son de acceso público, ya que están en la URL de nuestro navegador.

    A la variable le gusta lucir

    En cambio, las variables POST son tímidas, puesto que estas no viajan por la URL del navegador

      Yerson Felipe Ramirez Garnica

      Yerson Felipe Ramirez Garnica

      student•
      hace 3 años

      Buen aporte jjeje

      Kevin Giovanni Cano Blanco

      Kevin Giovanni Cano Blanco

      student•
      hace 3 años

      buena hahahaha

    Joel Dominguez Merino

    Joel Dominguez Merino

    student•
    hace 3 años

    No me funcionaba hasta que me di cuenta que el archivo index tenia que ser con la extensión .html y yo lo tenia como .php Si a alguien no le funciona, como primer paso compruebe eso 😢

    Código HTML:

    <!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 - Obtener solicitudes desde PHP</title> </head> <body> <script> // Creación de un objeto de formulario 'FormData' const formData = new FormData(); // Agregar juego de clave-valor al objeto de Formulario formData.append("nombre", "Joel"); formData.append("edad", "22"); // Creación de una petición al servidor fetch("./server.php?color=naranja",{ body: formData, method: 'POST', }).then(res => res.text()) .then(data => {console.log(data)}); </script> </body> </html>

    Código PHP:

    <?php // Se imprimen los valores de las variables globales ($_GET, $_POST, $_REQUEST) // $_GET: Almacena los valores que se pasaron por parametro en la URL var_dump($_GET); // $_POST: Almacena los valores que fueron mandados por atras (POST) var_dump($_POST); // $_REQUEST: Almacena los valores tanto de $_GET y $_POST var_dump($_REQUEST);

    Resultado:

    php.png

      José Luis Luna Rubio

      José Luis Luna Rubio

      student•
      hace 3 años

      Recuerda que para ejecutar archivos .php deberas de tener el entorno de desarrollo (apache) configurado correctamente. Dudo que haya sido por la extension .php, ya que recuerda que .php procesa HTML, por lo que no deberias tener problema , si te devolvio un resultado con la peticion asincrona, muy seguramente escribiste mal la extension .php, RESUMEN: con .php y .html te deberia de haber funcionado

    Cristobal Nyram

    Cristobal Nyram

    student•
    hace 4 años

    Nunca se para de aprender, no conocía la variable superglobal

    REQUEST
    Walter Omar Barrios Vazquez

    Walter Omar Barrios Vazquez

    student•
    hace 4 años

    Si envío dos variables con el mismo nombre, una por GET y otra por POST, qué variable recibe REQUEST o se produce un error?

      Cristian Pisco Intriago

      Cristian Pisco Intriago

      student•
      hace 4 años

      La variable $_REQUEST contiene información de los métodos GET y POST, Siguiendo el ejemplo de esta clase no se produce ningún error. Si estableces dos variables con el mismo nombre en el método GET y POST la variable $_REQUEST tendrá el valor que viene en el POST porque en el fetch estás indicando que vas a enviar datos utilizando POST.

      Kenneth Angulo L

      Kenneth Angulo L

      student•
      hace 3 años

      Esta es una pregunta capciosa, lo se !! 🤣 . Request recibe lo que le envies, ya sea por metodo GET o metodo POST, igual va a recibir la variable enviada. . El chiste es que cuando envias la variable solo puedes hacer envios ya sea por POST o por GET, pero no ambos metodos al tiempo. No es posible!! 😎 . . . Ahora en la practica especificamente se deben recibir metodos por $_GET o por $_POST usando

      $_GET['variable'] o $_POST['variable']

      Usando estas globales, se genera un warning, si equi vocas el metodo, el valor recibido es NULL

      Warning: Undefined array key
    Nelson Gonzalez Escalante

    Nelson Gonzalez Escalante

    student•
    hace 3 años

    GET lleva los datos de forma "visible" al cliente (navegador web). El medio de envío es la URL. Los datos los puede ver cualquiera.

    POST consiste en datos "ocultos" (porque el cliente no los ve) enviados por un formulario cuyo método de envío es post. Es adecuado para formularios. Los datos no son visibles.

    César Augusto Cortés Labrada

    César Augusto Cortés Labrada

    student•
    hace 3 años

    Resumen: GET:

    Éste método permite solicitar información al servidor, pero también nos permite enviar información a través de la URL.

    POST:

    Éste método permite guardar información. Por ejemplo, podemos recabar datos del usuario desde un formulario y mandarlos a nuestro servidor para procesarlos.

    Los datos se envían por “detrás” de la página, en el cuerpo de la petición.

    José Alberto Ramírez Quiroz

    José Alberto Ramírez Quiroz

    student•
    hace 3 años

    Alguna clase de algun curso donde se a fonde en el objeto Form Data?

    Rubén Cuello

    Rubén Cuello

    student•
    hace 3 años

    En la consola me retorna "405 (Method Not Allowed)"

    Y obviamente ahí muere todo. No llego a ver la información que envío al servidor. Alguna solución?

      Andrés Jaramillo

      Andrés Jaramillo

      student•
      hace 3 años

      Fijate cómo estás corriendo el servidor, para que funcione debes correr el servidor interno de PHP

      $ php -S localhost:8000

      O puedes dejar tu código, para ver qué es lo que sucede, un saludo

      LESTHER XITUMUL MANUEL

      LESTHER XITUMUL MANUEL

      student•
      hace 2 años

      Eres del Platzi Team XD

    Mariana Gil

    Mariana Gil

    student•
    hace 10 meses

    Sí, existen limitaciones en el tamaño de los datos que se pueden enviar. Para las peticiones GET, el tamaño máximo de URL, incluyendo los datos enviados, suele ser de 2048 caracteres, aunque esto puede variar según el navegador. En el caso de las peticiones POST, no hay un límite estricto definido por el protocolo, pero los servidores pueden establecer sus propias restricciones, que a menudo rondan desde 2 MB hasta 100 MB. Es importante verificar estas configuraciones en el servidor que estés utilizando.

    Leonardo Jiménez Ubaque

    Leonardo Jiménez Ubaque

    student•
    hace 2 años

    Cómo obtener una solicitud al servidor con PHP

    Para obtener una solicitud al servidor con PHP, generalmente se hace uso de variables superglobales que contienen la información enviada al servidor.

    Variables Superglobales

    Las variables superglobales en PHP son variables especiales predefinidas que contienen información sobre diferentes aspectos del entorno de ejecución y las solicitudes HTTP. Estas variables están disponibles en todos los ámbitos del script y se llenan automáticamente por PHP, proporcionando información útil sobre la solicitud actual, las sesiones, las cookies, los datos del servidor y más.

    PHP define variables superglobales a través de las cuales podemos acceder a cierta información desde cualquier parte del código.

    Algunas de las principales variables superglobales son:

    • $_GET
    • $_POST
    • $_REQUEST

    $_GET

    Este método permite solicitar información al servidor, pero también nos permite enviar información a través de la URL. $_GET es una de las variables superglobales en PHP que se utiliza para acceder a los datos pasados a través de una solicitud HTTP utilizando el método GET. Cuando un usuario hace una solicitud a un servidor web utilizando el método GET, los datos se envían en la URL como parámetros. La variable superglobal $_GET permite acceder a estos parámetros y trabajar con ellos en tu script PHP.

    Cuando se realiza una solicitud GET, los parámetros se adjuntan a la URL de la siguiente manera: http:url/archivo.php?nombre=Juan&edad=25. En este ejemplo, "nombre" y "edad" son parámetros que se pueden acceder utilizando la variable $_GET.

    Recuerda que los datos recibidos a través de $_GET no son seguros por defecto, ya que pueden ser manipulados por el usuario. Por lo tanto, es importante validar y sanitizar los datos antes de usarlos para evitar posibles vulnerabilidades de seguridad, como inyecciones de código o ataques XSS.

    $_POST

    Este método permite guardar información. Por ejemplo, podemos recabar datos del usuario desde un formulario y mandarlos a nuestro servidor para procesarlos.

    Los datos se envían por “detrás” de la página, en el cuerpo de la petición.

    $_POST es otra de las variables superglobales en PHP que se utiliza para acceder a los datos enviados a través de una solicitud HTTP utilizando el método POST. Cuando un usuario envía datos a través de un formulario HTML utilizando el método POST, estos datos se envían al servidor de manera que no son visibles en la URL, a diferencia del método GET. La variable superglobal $_POST permite acceder y manejar estos datos en tu script PHP.

    $_REQUEST

    $_REQUEST es otra de las variables superglobales en PHP que se utiliza para acceder a los datos de las solicitudes HTTP, pero a diferencia de $_GET y $_POST, $_REQUEST incluye datos de ambas solicitudes GET y POST, así como también datos de cookies.

    Esta variable superglobal recopila datos de las siguientes fuentes:

    1. Datos pasados a través de una solicitud GET.
    2. Datos enviados a través de una solicitud POST.
    3. Datos almacenados en cookies.

    Sin embargo, es importante tener en cuenta que debido a que $_REQUEST contiene datos de múltiples fuentes, su uso puede ser menos seguro que el uso de $_GET y $_POST por separado, ya que puede ser más difícil determinar la fuente exacta de los datos. Además, algunas configuraciones de servidor pueden deshabilitar la población de $_REQUEST para aumentar la seguridad.

    Dado que $_REQUEST puede contener datos de múltiples orígenes y podría llevar a confusión, se recomienda utilizar $_GET y $_POST específicamente según el tipo de solicitud que estés manejando. Esto proporciona una mejor comprensión de dónde provienen los datos y puede ayudar a evitar problemas de seguridad.

    JOHAN OROZCO

    JOHAN OROZCO

    student•
    hace 3 años

    para todos los que no entendimos muy bien lo de js les digo que la misión de la clase es que entendamos que son estas variables post get y request

    José Luis Luna Rubio

    José Luis Luna Rubio

    student•
    hace 3 años

    PHP tiene variables SUPERGLOBALES, entre ellas estan

    <?php $_GET; $_POST ; $_REQUEST; ?>

    Las variables o la data que se envia mediante GET son visibles en la URL, mientras que POST son enviadas tras bambalinas, es decir estas se envian por detras y no son visibles al usuario/cliente, solo en el lado del servidor.

    Martha Liliana Dominguez Gonzalez

    Martha Liliana Dominguez Gonzalez

    student•
    hace 3 años

    $_REQUEST es una variable superglobal en PHP que contiene los datos enviados a través de un formulario HTML o a través de una solicitud HTTP. Esta variable se compone de los valores contenidos en las variables $_GET, $_POST y $_COOKIE.

    Joseph Perales Retamozo

    Joseph Perales Retamozo

    student•
    hace 2 años

    Ahora no entiendo el por qué todo lo que se imprima en el server.php aparece en la consola :(

    Brandon Daniel Hernandez García

    Brandon Daniel Hernandez García

    student•
    hace 3 años

    me salen los arreglos vacios alguien tiene idea de porque

      Andrés Jaramillo

      Andrés Jaramillo

      student•
      hace 3 años

      Puedes poner tu código por favor, para tratar de ayudarte, un saludo

    Oscar Emmanuel Mora Morales

    Oscar Emmanuel Mora Morales

    student•
    hace 3 años

    Amigoss me gustaría que alguien me pudiera ayudar, mi problema es formData();

    server-error.JPG

    cuando voy a la consola dice que no se puede acceder antes de inicializarla, no entiendo esa parte, cualquier aporte es bien recibido

      Oscar Emmanuel Mora Morales

      Oscar Emmanuel Mora Morales

      student•
      hace 3 años

      ya vi que era, si no les corre como a mi revisen que el new FormData() esté inicializado con F mayuscula "F" ese era el error

    Leonardo Alexander Peñaranda Angarita

    Leonardo Alexander Peñaranda Angarita

    student•
    hace 7 meses

    ¿Qué son GET y POST?

    Son métodos de envío de datos que se usan en formularios HTML para comunicarse con un servidor (PHP en este caso).

    • GET: ✅ Envía los datos por la URL (visible). ✅ Es útil para búsquedas, filtros, o cuando no importa que la información sea pública. ✅ Límite de caracteres (dependiendo del navegador, aprox. 2000 caracteres).
    • POST: ✅ Envía los datos por el cuerpo de la solicitud (no se ven en la URL). ✅ Es ideal para enviar datos confidenciales (como contraseñas). ✅ Permite enviar más datos (sin límite práctico para formularios normales).
    Bryan Castano

    Bryan Castano

    student•
    hace un año

    Vayah esto { GET , POST } se complementan muy bien con mis clases de Pentesting a SitiosWeb, se hara facinante cuando pueda ver las solicitudes al servidor por BurpSuite y entender la logica del website para ver como se envian las solicitudes al servidor por HTTP , incluso si van por BackEnd se pueden descubirir pues las cabeceras no se encryptan nunca y cualquiera las puede leer en clear text != Contenido en los paquetes que se comparten en una arquitectura Client-Server .

    Daniel Urviola

    Daniel Urviola

    student•
    hace 3 años

    Ahora no se si aprender js antes de continuar, o dejarlo y seguir con el curso 😅 ... bueno lo importante es no parar

    Jhony Cepeda

    Jhony Cepeda

    student•
    hace 3 años

    Recuerdos de Vietnam ![](

    Screenshot_4.png

    🤣🤣 Amo las clases con memes Estoy en la uni y los profesores de seguro no harían eso, pero me gusta el método con memes

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