¿Cómo enviar un e-mail con formulario en php?

19 enero, 2008 por Mr. FotoPex Dejar una respuesta »

 

 

Este post es una variante del primer ejemplo, pero agregaremos un formulario.

Primero el código para el formato del formulario

HTML:
  1.     <title>Contacto</title>
  2. </head>
  3. <style type="text/css">
  4. <!--
  5. .formulario{
  6. color:#666666;
  7. font:Verdana, Arial, Helvetica, sans-serif;
  8. font-size: 10px;
  9. }
  10. .Campos {
  11. font:Verdana, Arial, Helvetica, sans-serif;
  12. font-size:9px;
  13. border: 1px solid #cccccc;
  14. background-color: #ffffff;
  15. }
  16. -->
  17. </style>
  18.  

Ahora el código para validar los datos que recibiremos

PHP:
  1. <?php
  2. if ($_POST['nombre']){ //verificamos si hay datos enviados
  3. // aqu&iacute; se pueden colocar las condiciones para verificar si estan todos los datos.
  4.  
  5.     $nombre=$_POST['nombre'];
  6.     $from=trim($_POST['from']);
  7.     $asunto=$_POST['asunto'];
  8.     $msg=$_POST["mensaje"];
  9.     // Obligatoriamente, cada elemento de la cabecera termina en \r\n Nueva l&iacute;nea.
  10.     //$hdr = 'MIME-Version: 1.0\r\n' ;
  11.     $hdr = "From: $nombre <$from>\r\n";
  12.     $hdr .= "Reply-To: $from <$from>\r\n";
  13.     //$hdr .= "Cc: $nombre <$from>\r\n";
  14.        
  15.     $to = $_POST['contacto'];
  16.  
  17.     $s=mail($to, $asunto, $msg,$hdr);
  18.     if($s<>0){
  19.         echo 'Email enviado OK !<br />';
  20.         echo '<a href="'.$_SERVER['PHP_SELF'].'">Enviar Otro Email</a>';
  21.     }else{
  22.         echo 'Problema al env&iacute;ar el Email !';
  23.         echo '<a href="'.$_SERVER['PHP_SELF'].'">Intentar Nuevamente</a>';
  24.     }
  25. }else{
  26. ?>

Ahora el formulario

HTML:
  1. <form action="<?php $_SERVER['PHP_SELF']?>" method="post" class="formulario">
  2. Your Name:<br>
  3. <input type="text" name="nombre" class="Campos"><br><br>
  4. Your E-mail Address:<br>
  5. <input type="text" name="from" class="Campos"><br><br>
  6. Para:<br>
  7. <select name="contacto" class="Campos">
  8.     <option value="info@empresario.com.mx" selected>Informaci&oacute;n</option>
  9.     <option value="webmaster@empresario.com.mx">Webmaster</option>
  10. </select>
  11. <br><br>
  12. Subject:<br>
  13. <input type="text" name="asunto" class="Campos"><br><br>
  14. Message:<br>
  15. <textarea name="mensaje" cols="50" rows="12" class="Campos"></textarea>
  16. <br><br>
  17. <input type="submit" value="Enviar" class="Campos">
  18. </form>
  19. <?php }?>
  20. </body>
  21. </html>

Y aquí tienes un archivo con el ejemplo

floppy.jpg
Clic para descargar el archivo
Publicidad

2 comentarios

  1. diego dice:

    hola un favor alguien me podria ayudar este este ERROR me sale DEBE ESPECIFICAR EL USUARIO Y PASSWORD ese error me sale por favor alguien que me podria ayudar Gracias
    Pd. sin molestarse podrian enviar a este m il Zerohope_diego@hotmail.com
    lo necesito urgente

  2. Mr. FotoPex dice:

    Hola diego, puedes descargarte los archivos de ejemplo.
    Un saludo

Deja un comentario