¿Cómo creo un formulario con PHP?

Importante: Si recibió nuestro correo electrónico sobre la actualización de formularios de sitios web mediante FormMail.pl, siga esta guía para reemplazar el script anterior con una alternativa moderna y segura antes del 30 de noviembre de 2025. Si su sitio tiene varios formularios que usan FormMail.pl, cada formulario debe actualizarse.

Un formulario permite a los visitantes enviar información directamente a su dirección de correo electrónico, ya sea un formulario de contacto, una encuesta de comentarios o un formulario de pedido. En esta guía, lo guiamos a través de la creación de uno usando PHP y cómo puede combinar HTML y PHP script.

Nota: El código utilizado en esta guía es solo un ejemplo de cómo se podría usar el formulario.
Ajusta los diferentes campos y direcciones de correo electrónico para que coincidan con tu sitio web.


Paso 1 - Agregue el código del formulario al archivo PHP

  1. Abre el archivo PHP donde quieres agregar o editar el formulario. Usa un editor de texto, como el Bloc de notas (Windows) o TextEdit (macOS), o un editor HTML, como Visual Studio Code. 

    Propina: Si su formulario actual está en un archivo .html, puede convertirlo fácilmente en un archivo .php simplemente cambiando la extensión del archivo. Por ejemplo, si se llama al archivo contact.html, renombrándolo a contact.php es suficiente.

    Al cambiar el nombre del archivo se cambia la URL de la página, recuerde actualizar cualquier enlace que apunte a esta página para evitar enlaces rotos (errores 404).

  2. Copia el código del formulario HTML proporcionado y pégalo en la ubicación deseada dentro del archivo PHP. Asegúrate de que el formulario esté ubicado dentro de la sección <body> del documento PHP.

    Haz clic para ver el código que puedes insertar en tu sitio web:

    • Código para el formulario

      <?php
      // if "email" variable is filled out, send email
      if (isset($_REQUEST['email'])) {

      //Email information
      $to = "recipient@example.com";
      $subject = "Message from website";

      $message = "From: " . $_REQUEST['name'] . "<br>" .
      "Email: " . $_REQUEST['email'] . "<br>" .
      "Message:" . $_REQUEST['message'];

      $headers = [
      'From' => 'sender@example.com',
      'X-Sender' => 'sender@example.com',
      'X-Mailer' => 'PHP/' . phpversion(),
      'X-Priority' => '1',
      'MIME-Version' => '1.0',
      'Content-Type' => 'text/html; charset=utf-8'
      ];

      //Send email
      mail($to, $subject, $message, $headers);

      //Email response
      echo "Thank you for contacting us!"; }

      //if "email" variable is not filled out, display the form
      else { ?>

      <form method="post" >
      <label for="name">Name* </label><br />
      <input name="name" required="true" /><br />

      <label for="email">Email* </label><br />
      <input name="email" required="true" /><br />

      <label for="message">Your message*</label><br />
      <textarea cols="100" rows="10" name="message" required="true"></textarea><br />

      <p><small>* Required fields</small></p>

      <input type="submit" value="Send" />
      </form>


      <?php } ?>

Paso 2 - Cambia y personaliza el código del formulario

Captura de pantalla del código del formulario.


Cambios necesarios en el formulario:

línea 6 → Reemplace la dirección de correo electrónico aquí con la dirección de correo electrónico donde desea recibir los envíos del formulario.

Línea 14 → Esta es la dirección de correo electrónico del remitente. Tiene que ser una dirección de correo electrónico de tu dominio. Por ejemplo, para el dominio one-example.com, debe ser @one-example.com.

línea 15 → Esta es la dirección de correo electrónico donde se enviarán las respuestas.

Consejo: Te recomendamos mantener estas direcciones de correo electrónico iguales para evitar que los correos electrónicos terminen en spam.

Personalización y cambios opcionales en el formulario:

línea 7 → Esta es la línea de asunto del correo electrónico.

línea 26 → Este es el mensaje de agradecimiento al remitente del formulario.

Líneas 32, 35, 38 → Este es el texto que aparece encima de los campos de entrada. Para indicar que el campo es obligatorio, tienes que añadir manualmente el asterisco (*). 

En las líneas 33, 36 y 39 siguientes, el código es lo que realmente lo hace obligatorio. Cambia "true" a "false" para que el campo no sea obligatorio:

required="true"

línea 41 → Este texto se muestra debajo del formulario y puede ser cualquier mensaje, generalmente utilizado para hacer referencia al asterisco (*) para los campos de entrada obligatorios (en nuestro ejemplo, líneas 32, 35 y 38).

línea 43 → Este es el texto del botón.

Las líneas 2, 5, 22, 25, 28 son solo comentarios y se pueden eliminar si es necesario. 


Paso 3 – Guardar y cargar los cambios

  1. Guarda los cambios en el archivo PHP después de agregar o editar el código del formulario.
  2. Sube el archivo PHP actualizado al servidor web usando un cliente SFTP o el File Manager de one.com.

Paso 4 - Prueba el formulario

Para garantizar que el nuevo formulario funcione correctamente, abra su sitio web en un navegador y vaya a la página con su formulario de contacto. Complete el formulario con la información de prueba y envíelo usando el botón. Verifique la dirección de correo electrónico especificada para el formulario para confirmar que el mensaje de prueba llega.

 

Artículos relacionados:

¿Fue útil este artículo?

¿No puedes encontrar lo que buscas?

Inicia un chat

Es la forma más rápida de ponerse en contacto, todos los días del año.

Llámanos

Chatea con nosotros de lunes a viernes de 9:00 a 16:00