Configurar sendmail

Hola, veras tengo un problemilla. Tengo un sitio web en un servidor gratuito de hospedaje, que según se tiene php 5 instalado. Quiero hacer un formulario que recoja unos datos y los envíe a una dirección de correo. Para ello he creado dos archivos, uno el html con el siguiente código:
<form action="sendmail.php" accept-charset="UNKNOWN" enctype="application/x-www-form-urlencoded" method="post">
<table border="0" width="25%">
<tbody>
<tr>
<td colspan="2">Envio de correos </td>
</tr>
<tr>
<td width="10%">Para</td>
<td width="90%">
<input id="email" maxlength="2147483647" name="email" size="20" type="text" />
</td>
</tr>
<tr>
<td valign="top">Mensaje</td>
<td>
<textarea id="mensaje" cols="50" rows="5" name="mensaje"></textarea>
</td>
</tr>
<tr>
<td colspan="2">
<input maxlength="2147483647" name="Submit" size="20" type="submit" value="Enviar" />
</td>
</tr>
</tbody>
</table>
</form>
------
Y otro llamado sendmail.php con el codigo:
/* VAMOS A HACERNOS LA VIDA MAS FACIL
* EXTRAEMOS DEL REQUEST LOS DATOS Y LOS PASAMOS AUTOMATICAMENTE A VARIABLES
* DE ESTA MANERA NUESTRAS VARIABLES TENDRAN EL MISMO NOMBRE DE LOS CAMPOS DEL FORMULARIO
*/
/*
* Comentario extraido de http://www.php-es.com/function.mail.html
* (Sólo en Windows) Cuando PHP sostiene comunicación con el servidor SMTP directamente,
* si un punto es encontrado al comienzo de la línea, éste es removido.
* Para contrarestar este comportamiento, reemplace estas ocurrencias con dos puntos
*/
$mensaje=str_replace("\n.", "\n..", $mensaje);
// LE APLICAMOS UN AJUSTE DE LINEA AL TEXTO
$mensaje=wordwrap($mensaje,70);
// ESPECIFICAMOS EN LAS CABECERAS QUE ES EN FORMATO HTML PUENEN REMOVERLAS SI
// EL FORMATO QUE DESEN ENVIAR ES SOLO TEXT0
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// CREAMOS LA CABECERA PARA QUE APARESCA QUIEN LO ENVIO
$headers .= 'From:<[email protected]>' . "\r\n";
//Y LISTO ENVIAMOS EL CORREO ASI DE FACIL :D
mail($email,"Titulo del corrreo",$mensaje,$headers);
Bien, ¿he subido esto a mi servidor y no me funciona... Podrías echarme una mano? Mi correo es [email protected] por si no ves bien el código o necesitas alguna aclaración.
Gracias

2 Respuestas

Respuesta
1
Sería buena idea que averiguaras si tu hosting gratuito permite el envío de formularios con el contacto técnico del sitio, si es así, que te indique cual es el comando de sendmail a usar y ese comando lo configuras en las opciones así:
ini_set('sendmail_path', $comando_sendmail);
Al inicio del programa php
Respuesta
1
Tu formulario se ve un poco 'raro'. A parte de que ajustas el maxlength a un número enorme (para eso mejor que no lo pongas), los atributos de la etiqueta form también son muy extraños.
Te recomiendo que, en lugar de:
<form action="sendmail.php" accept-charset="UNKNOWN" enctype="application/x-www-form-urlencoded" method="post">
uses:
<form action="sendmail.php" method="post">
Tampoco veo donde incializas la variable $email que debería tener la dirección correcta del destinatario.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas