Tutorial: ¿Cómo crear un formulario PHP para nuestros websites?

¿Por qué montamos un sitio en Internet? Podría ser para dar a conocer algo: desde simple información acerca de algún tema específico o bien para vender nuestros productos. En todos los casos, darle al visitante una herramienta para que nos contacte es esencial.

En este caso, vamos a crear un formulario PHP de contacto, ideal para cuando tenés tu sitio en HTML o PHP puro. Más adelante, en otro artículo, veremos cómo configurar un formulario en otra plataforma tal como WordPress o Joomla.

Uno de los requisitos que debe tener nuestro formulario es que utilice la autenticación contra el servidor de correo, ya que por una cuestión puramente de seguridad no usamos sendmail en los planes de hosting compartido.

Para lograr la autenticación, vamos a usar la clase SMTP AUTH y crearemos una cuenta en nuestro panel de control que será la que enviará el mensaje.

Lo primero que haremos será descargar PHPMailer desde el siguiente enlace:

https://github.com/PHPMailer/PHPMailer/archive/master.zip

Una vez que lo descargamos y lo descomprimimos, deberemos identificar el archivo class.phpmailer.php y editarlo con nuestros datos.

He aquí un ejemplo:

<?php
require 'PHPMailerAutoload.php';

$mail = new PHPMailer;

//$mail->SMTPDebug = 3;                               // Enable verbose debug output

$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp1.example.com;smtp2.example.com';  // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = 'user@example.com';                 // SMTP username
$mail->Password = 'secret';                           // SMTP password
$mail->SMTPSecure = 'tls';                            // Enable TLS encryption, `ssl` also accepted
$mail->Port = 587;                                    // TCP port to connect to

$mail->setFrom('from@example.com', 'Mailer');
$mail->addAddress('joe@example.net', 'Joe User');     // Add a recipient
$mail->addAddress('ellen@example.com');               // Name is optional
$mail->addReplyTo('info@example.com', 'Information');
$mail->addCC('cc@example.com');
$mail->addBCC('bcc@example.com');

$mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
$mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
$mail->isHTML(true);                                  // Set email format to HTML

$mail->Subject = 'Here is the subject';
$mail->Body    = 'This is the HTML message body <b>in bold!</b>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}

Una vez que esté cargado con todos nuestros datos, lo subimos a nuestro hosting y lo conectamos con nuestro formulario de contacto que hayamos desarrollado,  o bien con este que te dejo a modo de ejemplo:

<form method="post" action="email.php">
  Email: <input name="email" id="email" type="text" /><br />

  Message:<br />
  <textarea name="message" id="message" rows="15" cols="40"></textarea><br />

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

Asegurate que arriba de todo, donde dice action=”email.php”>, indique el nombre del archivo que tiene las variables de phpmailer.

Si tenés algún comentario o duda, podés registrarte y escribirnos aquí abajo, o bien contactarte con Soporte Técnico desde el área de clientes.

 

Facebooktwittergoogle_pluslinkedinFacebooktwittergoogle_pluslinkedin

Deja un comentario