Foros del Web » Programando para Internet » PHP »

Error en codigo mail(...

Estas en el tema de Error en codigo mail(... en el foro de PHP en Foros del Web. Hola a todos: Tengo el siguiente codigo para enviar a un E-mail un formulario, que nunca recibo... No se donde estará el error, ya que ...
  #1 (permalink)  
Antiguo 23/10/2004, 04:14
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 14 años, 6 meses
Puntos: 1
Error en codigo mail(...

Hola a todos:

Tengo el siguiente codigo para enviar a un E-mail un formulario, que nunca recibo... No se donde estará el error, ya que parece que el codigo se ejecuta correctamente.
Os pongo el codigo:

<?
if (!$HTTP_POST_VARS){
?>

AQUI VA EL FORMULARIO HTML

<?
}else{
//Estoy recibiendo el formulario, compongo el cuerpo

$cuerpo = "<html>\n";
$cuerpo .= "<head> \n";
$cuerpo .= "<title>Titulo</title> \n";
$cuerpo .= "</head> \n";
$cuerpo .="<body topmargin='0' leftmargin='0' rightmargin='0' bgcolor='#A9C8A7'> \n ";
$cuerpo .= "<div align='center'> \n";
$cuerpo .= "<table width='680' border='0' cellpadding='0' cellspacing='0'> \n";
$cuerpo .="<tr> \n";
$cuerpo .= "<td height='90' bgcolor='#729F70'><font color='#FFFFFF' size='4' face='Arial, Helvetica, sans-serif'><strong>Alta de inmuebles</strong></font></td> \n";
$cuerpo .="</tr> \n";
$cuerpo .="<tr> \n";
$cuerpo .="<td style='padding-left:20; padding-right:20;'> \n";
$cuerpo .="<p><font face='Verdana, Arial, Helvetica, sans-serif' size='2'> \n";
$cuerpo .="Enviado nuevo formulario con las siguientes caracter&iacute;sticas: \n";
$cuerpo .="</font></p> \n";
$cuerpo .="<p> \n";

$cuerpo .= "Nombre del Propietario: " . $HTTP_POST_VARS["name"] . "\n";
$cuerpo .= "Telefono: " . $HTTP_POST_VARS["tlf"] . "\n";
$cuerpo .= "Dirección: " . $HTTP_POST_VARS["direccion"] . "\n";


$cuerpo .="</p> \n";
$cuerpo .="</td> \n";
$cuerpo .="</tr> \n";
$cuerpo .="</table> \n";
$cuerpo .="</div> \n";
$cuerpo .="</body> \n";
$cuerpo .="</html> \n";


$destino ="[email protected]";
$asunto = "este el asunto";

// Mando encabezado en html
$encabezado = "MIME-Version: 1.0\r\n";
$encabezado .= "Content-type: text/html; charset=iso-8859-1 \n";
$encabezado .= "From: Servidor <[email protected],com\n";
$encabezado .= "To: Ese<[email protected]> \n";
$encabezado .= "X-Mailer:PHP/".phpversion()."\n";

//mando el correo...
mail($destino, $asunto, $cuerpo, $encabezado);

//doy las gracias por el envío
echo "<font size='2' face='Arial'>Gracias por rellenar el formulario. Se ha enviado correctamente.</font>";
}
?>


Gracias adelantadas
  #2 (permalink)  
Antiguo 23/10/2004, 09:17
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 13 años, 6 meses
Puntos: 2
Ponlo así para ver si realmente ha un error en el código

if(mail($destino, $asunto, $cuerpo, $encabezado)){
echo "<font size='2' face='Arial'>Gracias por rellenar el formulario. Se ha enviado correctamente.</font>";
}else{
echo "error en el envio";
}

activa en tu php.ini los errores si no lo tienes activado (display_errors=on) si parece que todo va bien el error puede estar en tu servidor smtp. ¿has probado a enviar a varias cuentas o solamente has hecho pruebas con una?
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #3 (permalink)  
Antiguo 23/10/2004, 12:12
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 14 años, 6 meses
Puntos: 1
Hola:

Este es el error que me da...

Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\Archivos de programa\Apache Group\Apache2\htdocs\laliebana\files\anade.php on line 485
error en el envio


Como puedo solucionarlo???

Gracias de nuevo
  #4 (permalink)  
Antiguo 23/10/2004, 12:21
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 14 años
Puntos: 0
mmmm cuando tuve un problema como el tuyo...en modo "Local", lo solucione colocando como SMTP el servidor de mi ISP, en mi caso es Terra por lo que puse en mi php.ini la Ip del SMTP de terra, saludos
  #5 (permalink)  
Antiguo 23/10/2004, 12:54
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 13 años, 6 meses
Puntos: 2
Tienes instalado un servidor smtp en tu ordenador?. Me temo que no. Si no quieres instalarte uno como hitek hizo puedes probar con el servidor smtp de alguna compañía siempre y cuando no requiera de autentificación en el envio.
Lo mejor es no depender de ningún servidor externo así que te recomiendo que instales un programa como argosoft mail server para poder hacer pruebas sin problemas.

http://www.argosoft.com/mailserver/
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #6 (permalink)  
Antiguo 23/10/2004, 16:45
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 14 años, 6 meses
Puntos: 1
Mi problema tambien sucede en el servidor.

Tengo alojado tambien en mi servidor las pruebas, y desde allí tampoco puedo enviar ningun correo...
  #7 (permalink)  
Antiguo 24/10/2004, 13:30
 
Fecha de Ingreso: junio-2003
Mensajes: 778
Antigüedad: 14 años, 6 meses
Puntos: 1
Hola de nuevo:

He hecho la prueba cambiando la cuenta del script, y ahora si que los recibo.
Lo que no se es por que en una cuenta los recibo y en otras no...

He probado con cuentas del propio servidor que SI reciben (configuradas en Outlook) y en otras de ONO configuradas en Outlook Express que NO funcionan... ¿?¿?

No se por que...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:35.