Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/07/2012, 09:34
nicolasroma
 
Fecha de Ingreso: julio-2011
Mensajes: 108
Antigüedad: 12 años, 9 meses
Puntos: 4
Información Enviar un Mail con PHP [Aporte]

Hola como principiante que soy quería hacer un minúsculo aporte a la comunidad por si alguien lo necesita. Quien son mas experimentados, si quieren comentar, corregir, aconsejar, lo que sea que sirva para mejorar, se agradece.

Lo que voy a poner es el formulario HTML y el archivo PHP para enviar el mail y que llegue de con formato HTML, para que tenga una cabecera con un logo por lo menos.

Nombre del archivo enviarMail.html
Código HTML:
Ver original
  1. <!-- FORMULARIO DE CONTACTO HTML BASICO -->
  2.     <form name='' method='post' action='enviarMail.php' onsubmit='return validMail();'>
  3.         <tr><td><input type='text' name='nombre' id='nombre'/></td></tr>
  4.         <tr><td><input type='text' name='asunto' id='asunto'/></td></tr>
  5.         <tr><td><input type='text' name='mail' id='mail'/></td></tr>
  6.         <!-- tr><td><input type='text' name='ccMail' id=''/></td></tr OPCIONAL -->
  7.         <!-- tr><td><input type='text' name='ccoMail' id=''/></td></tr OPCIONAL -->
  8.         <tr><td><textarea name='mensaje'></textarea></tr></td>
  9.         <tr><td><input type='submit' value='Enviar'/></tr></td>
  10.     </form>

Nombre del archivo PHP enviarMail.php
Código PHP:
Ver original
  1. <?
  2. /* CODIGO PHP BASICO PARA ENVIAR MAIL (METODO POST) */
  3.  
  4. $para = '/*MAIL@DESTINO*/';
  5. $asunto = $_POST['asunto'];
  6. $nombre = $_POST['nombre'];
  7. $de = $_POST['mail'];
  8.  
  9. $cuerpo  = '';
  10. $cuerpo .= '<html>';
  11. $cuerpo .= '<head>';
  12. $cuerpo .= '<title>/*TITULO*/</title>';
  13. $cuerpo .= '</head>';
  14. $cuerpo .= '<body>';
  15. $cuerpo .= '<div id="contenedor" style="width:500px; margin:auto;>';
  16. $cuerpo .= '<div id="socaloSup" style="width:500px; height:150px">';
  17. $cuerpo .= '<img src="/*LOGO*/" style="height:150px"/>'
  18. $cuerpo .= '</div>';
  19. $cuerpo .= '<div id="mensaje" style="width:450px; padding:10px 25px;">';
  20. $cuerpo .= $_POST['mensaje'];
  21. $cuerpo .= '</div>';
  22. $cuerpo .= '</div>';
  23. $cuerpo .= '</body>';
  24. $cuerpo .= '</html>';
  25.  
  26. $cabecera = "MIME-Version: 1.0\r\n";                        //
  27. $cabecera .= "Content-type: text/html; charset=iso-8859-1\r\n"; //para el envío en formato HTML
  28. $cabecera .= "De: ".$nombre." <".$de.">\r\n"; //dirección del remitente
  29. //$cabecera .= "Responder: /*CORREO*/ \r\n";//dirección de respuesta, si queremos que sea distinta que la del remitente (opcional)
  30. //$cabecera .= "Return-path: /*CORREO*/ \r\n";//ruta del mensaje desde origen a destino (opcional)
  31. //$cabecera .= "Cc:".$_POST['ccMail']."\r\n"; //direcciones que recibián copia (opcional)
  32. //$cabecera .= "Cco:".$_POST['ccoMail]."\r\n";//direcciones que recibirán copia oculta (opcional)
  33.  
  34. mail($para,$asunto,$cuerpo,$cabecera);//funcion para enviar los datos
  35. ?>

La función de validMail(); de java script no la puse porque no hice todavia una buena con expreciones regulares y demas.

Espero que les sirva.