El sistema operativo del servidor es una ubuntu server, y el servidor esta instalado con el paquete Xampp, que se supone que te instala sendmail por defecto para este tipo de cosas.
Tengo una de mis webs alojada en mi server local, y en ella hay un formulario que quiero que los usuarios rellenen y que sea enviado a un correo externo tipo [email protected], pero no doy con el código correcto. Tampoco se si tengo que configurar algo en el php.ini, pq ya he visto numerosas soluciones en las que se cuenta como habilitar el SMTP, pero claro, al estar bajo linux, no se que hacer.
El formulario es un html en el que se llama a un script php. Cuando lo ejecuto, me dice que el mail se ha enviado correctamente, pero nunca llega a la carpeta de entrada de mi correo E de gmail.
No se si lo que pretendo se puede hacer o no, ni como, pero agradeceré de corazón toda la ayuda prestada.
Cuelgo el último código que he probado:
formulario.html
Código:
<html> <head> <title>Formulario</title> </head> <body> <FORM ACTION="procesa.php" name="formulario" METHOD="post" onsubmit="return emailCheck(this.email.value);"> Asunto (título) del envío: <input type="text" maxlength="40" size="35" name="asunto"><br> Nombre y Apellido: <input type="text" maxlength="40" size="35" name="nombre"><br> Correo electrónico (E-mail): <input type="text" maxlength="31" size="35" name="email"><br> <input type="submit" value="Enviar" onfocus="this.blur()"> <input type="reset" value="Borrar" onfocus="this.blur()"> </FORM> </body> </html>
procesa.php
Código:
<?php //E-mail en donde se recibirá el Formulario. //puedes poner Varios Email separados por coma "," $recipiente = "[email protected]"; //URL de tu Sitio Web. $sw = "http://mi_sitio"; //Mensaje que te llegará al Correo, con los datos ingresados. $msg = " $email envia a través del formulario de mi_sitio lo siguiente: Nombre: $nombre E-mail: $email"; //Comprobamos que campos del formulario se encuentren completos. if(empty($asunto)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has seleccionado un Asunto.</b></font></p>"; } if (empty($nombre)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado Nombre y Apellido.</b></font></p>"; } if(empty($email)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado tu E-mail.</b></font></p>"; } else{ //Limpiamos de posibles ataques. $comentario = ereg_replace("rn","<br>", $comentario); $nombre = htmlentities($nombre); $email = htmlentities($email); //Enviamos el E-mail con todos los datos. mail("$recipiente", "$asunto", "$msg", "FROM: $email"); //Damos las gracias al visitante por contactarnos. echo"<font face=tahoma size=2> <p align=center>Gracias por enviarnos los datos de: <b>$nombre</b>. <p align=center>Responderemos tu envio en un plazo de 24 a 48 horas.<br><br> <br> <br> <br> <br> </p> <p align=center><br> <a href=$sw><b>Regresar a mi_sitio</b></a>.</p>"; } ?>