Formulario de contacto

Recomienda este artículo Versión imprimible
Publicado por MijT el 16/Ene/2007 en PHP y MySQL | 1783 Lecturas | 3 comentarios
Este es un sencillo pero funcional script que sirve para contactar con el webmaster, tiene entre sus funciones la de validar que el formato de correo ingresado sea el correcto y que el resto de campos no estén en blanco. Todo ello hecho en PHP.

Este script cuenta con dos archivos, uno es la función para validar que el correo ingresado sea de un formato correcto y el otro es el formulario propiamente dicho con la función que enviará los datos al correo del webmaster. Es de fácil instalación e implementación amén de ser mejorable sólo necesitas copiar el código fuente que pondré a continuación y pegarlo en tu editor web preferido. Empezamos...

Lo primero como dije anteriormente será crearnos una pequeña función que validará que el correo ingresado esté en un formato correcto del tipo nombre@dominio.com

valida_email.php

<?php
  
function email_valido($correo) {
    if (
eregi("^[_\.0-9a-z-]+@[0-9a-z\._\-]+\.[a-z]{2,4}$"$correo)) return true;
    else return 
false;
  }
?>


contactar.php

<?php 
  
if($enviar) {  // si se ha pulsado en el botón enviar
    
include('valida_email.php'); // incluimos el archivo que contiene la función que valida la dirección de correo
    
if($_POST['nombre'] == '') {
      echo 
"No has ingresado tu Nombre.";
    }elseif(
$_POST['email'] == '') {
      echo 
"No has ingresado tu Email.";
    }elseif(!
email_valido($_POST['email'])) {
      echo 
"El Email ".$_POST['email']." no es una dirección válida.";
    }elseif(
$_POST['asunto'] == '') {
      echo 
"No has ingresado el Asunto del mensaje.";
    }elseif(
$_POST['mensaje'] == '') {
      echo 
"No has ingresado el Mensaje.";
    }else {
      
mail ("tucorreo@tupagina.com""$asunto""$mensaje""From: $nombre <$email>"); // coloque aquí su correo 
      
echo '<div style="text-align: center;">El email ha sido enviado con éxito.</div>'
    }
  }
?>
<form method="post" action="contactar.php">
  <label>Nombre / Nick:</label>
  <input type="text" name="nombre" />
  <label>Email:</label>
  <input name="email" type="text" size="45" />
  <label>Asunto:</label>
  <input name="asunto" type="text" size="60" />
  <label>Mensaje:</label>
  <textarea name="mensaje" cols="80" rows="10"></textarea>
  <p style="padding-top: 5px;"><input type="submit" name="enviar" value="Enviar Mensaje" />
  <input type="reset" name="enviar" value="Borrar datos" /></p>
</form>


Como se habrán dado cuenta no es nada difícil, este script es mejorable, pero así como está hecho de momento funciona muy bien, espero les pueda servir.
Compártelo:
Enviar a Del.icio.us Enviar a Technorati Enviar a Barrapunto Floréalo Enviar a Menéame Enviar a Facebook Enviar a Google Bookmarks Enviar a Yahoo! Enviar a Bitacoras Enviar a Webéame Enviar a Digg Enviar a Fresqui Enviar a Furl Enviar a NeoDiario Enviar a Wikio

Artículos Relacionados

No hay post relacionados
3 Comentarios a: Formulario de contacto
Supremo comentó:
El 10 de Abr. del 2007 a las 22:30
Haber... dices que en el archivo: valida_email.php va lo siguiente:

<?php
function email_valido($correo) {
if (eregi("^[_\.0-9a-z-]+@[0-9a-z\._\-]+\.[a-z]{2,4}$", $correo)) return true;
else return false;
}
?>


Todo esta muy bien, solo que cuando edites algo hazlo bien, ya que $correo esta mal, no es $email ? ya que como piensas validar el e-mail del visitante si le das otro nombre la funcion para validar el email?

Otra cosa... por que usar el include() para verificar el correo? no puedes agregarlo en el mismo archivo contactar.php ?

luisa comentó:
El 22 de Ago. del 2008 a las 12:10
como corrijo un error en el formulario de contacto?

aparece el siguiente mensaje:

Call to undefined method PEAR_Error::send()

TUTI comentó:
El 8 de Abr. del 2009 a las 14:09
Necesito que me ayuden con un codigo lo antes posible. tengo una plantilla hecha en dreamweaver y realice un php. Me manda por mail el formulario bien, el tema es q no me esta tomando los campos obligatorios ni se como hacer para que tome los checkbox....

Comenta este artículo

Nos encantaría que dejaras tu comentario acerca de esta entrada, pero para ello debes tener en cuenta lo siguiente:

  • No escribas todo el texto en mayúsculas.
  • Procura que tus comentarios estén relacionados con lo que se ha publicado en esta entrada.
  • Respeta a los demás lectores de este blog. Si hay algún comentario que no es de tu agrado, expón tus ideas de forma alturada.
  • No utilices groserías en tus comentarios.

Los comentarios que incumplan los puntos mencionados serán eliminados inmediatamente.

Para escribir tu comentario dispones de un editor de texto para agregar negrita, cursiva, subrayado, links, etc. Si no sabes cómo usarlo, entra aquí