Trabajando con Formularios en PHP


Juan Boyer

03 Oct 2023

Los formularios son una parte esencial de cualquier aplicación web que permita a los usuarios interactuar y enviar información al servidor. PHP es un lenguaje de programación ampliamente utilizado para procesar formularios en aplicaciones web. En este artículo, exploraremos cómo trabajar con formularios en PHP, incluyendo la diferencia entre los métodos GET y POST, los diferentes elementos de entrada de datos, y cómo recuperar información y enviar archivos.

Métodos GET y POST

En PHP, los formularios pueden enviar datos al servidor utilizando dos métodos principales: GET y POST. Ambos métodos son utilizados para transmitir información desde el navegador del cliente al servidor, pero tienen diferencias importantes:

GET:

  1. Los datos se envían a través de la URL y son visibles en la barra de direcciones del navegador.
  2. Se utiliza principalmente para solicitudes que no modifican datos en el servidor, como búsquedas o filtros.
  3. La información se recupera en PHP utilizando la superglobal $_GET.

POST:

  1. Los datos se envían de manera más discreta y no son visibles en la URL.
  2. Se utiliza para enviar datos sensibles o para realizar cambios en el servidor, como enviar un formulario de registro.
  3. La información se recupera en PHP utilizando la superglobal $_POST.

Para crear un formulario que utilice uno de estos métodos, simplemente establece el atributo method del formulario en "get" o "post" según sea necesario.

<form action="procesar.php" method="post">
    <!-- Elementos de entrada aquí -->
    <input type="submit" value="Enviar">
</form>

Elementos de Entrada

Los formularios pueden contener varios elementos de entrada, cada uno destinado a recopilar un tipo específico de información:

1. Input Text:

El elemento input de tipo text se utiliza para recopilar datos de texto, como nombres o direcciones de correo electrónico.

<input type="text" name="nombre">

2. Checkbox:

Los elementos input de tipo checkbox permiten a los usuarios seleccionar múltiples opciones de una lista.

<input type="checkbox" name="intereses[]" value="deportes"> Deportes
<input type="checkbox" name="intereses[]" value="tecnologia"> Tecnología

3. Radio Button:

Los botones de opción (input de tipo radio) permiten a los usuarios seleccionar una sola opción de un conjunto.

<input type="radio" name="sexo" value="masculino"> Masculino
<input type="radio" name="sexo" value="femenino"> Femenino

4. Textarea:

El elemento textarea es útil para recopilar texto largo, como comentarios o descripciones.

<textarea name="comentario"></textarea>

5. Select (Dropdown):

Los elementos select crean una lista desplegable de opciones.

<select name="pais">
    <option value="usa">Estados Unidos</option>
    <option value="canada">Canadá</option>
    <option value="mexico">México</option>
</select>

Recuperando Información

Una vez que el formulario se ha enviado al servidor, es necesario recuperar la información ingresada por el usuario. Esto se hace utilizando las superglobales $_GET o $_POST, según el método que se haya utilizado.

$nombre = $_POST['nombre']; // Para datos enviados con POST
$intereses = $_POST['intereses']; // Para checkbox
$sexo = $_POST['sexo']; // Para radio buttons
$comentario = $_POST['comentario']; // Para textarea
$pais = $_POST['pais']; // Para select

Enviar y Recibir Archivos

Para enviar y recibir archivos, como imágenes o documentos, se utiliza el elemento input de tipo file en el formulario y se establece el atributo enctype en "multipart/form-data". Además, se utiliza la superglobal $_FILES para manejar los archivos recibidos.

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

En el archivo PHP de procesamiento (procesar.php en este ejemplo), puedes manejar el archivo de esta manera:

$nombreArchivo = $_FILES['archivo']['name'];
$tipoArchivo = $_FILES['archivo']['type'];
$tamañoArchivo = $_FILES['archivo']['size'];
$nombreTemporal = $_FILES['archivo']['tmp_name'];

// Mueve el archivo a su ubicación final
move_uploaded_file($nombreTemporal, 'carpeta_destino/' . $nombreArchivo);

¡Con estos conceptos básicos, estás listo para crear formularios en PHP y procesar la información que los usuarios envían! Recuerda siempre validar y sanear los datos del formulario para mejorar la seguridad de tu aplicación web.


0 comentarios

Inicia sesión para comentar