Foros del Web » Programando para Internet » PHP »

Problema con la funcion mail

Estas en el tema de Problema con la funcion mail en el foro de PHP en Foros del Web. Hola tengo el siguiente problema: Hace mas de 1 año que desde un sitio mio me llegaban las consultas que hacian los visitantes del mismo ...
  #1 (permalink)  
Antiguo 30/12/2010, 07:38
 
Fecha de Ingreso: mayo-2003
Mensajes: 523
Antigüedad: 20 años, 11 meses
Puntos: 6
Problema con la funcion mail

Hola tengo el siguiente problema:
Hace mas de 1 año que desde un sitio mio me llegaban las consultas que hacian los visitantes del mismo en el formulario para dicho proposito al correo electronico.
De repente me dejaron de llegar y el sitio muestra el siguiente mensaje de error: Warning: mail() [function.mail]: SMTP server response: 554 <nanatravelweb.com>: Relay access denied in D:\www\docs\users\nanatravelweb.com\procesa_consul ta.php on line 82
En esa línea está la función mail que envia el mensaje y que ha funcionado siempre bien, nadie tocó la programación.
El soporte técnico del Hosting me dice que el problema es que debo autenticarme con una dirección de mail del dominio y una contraseña.
Aunque tengo esos datos no se dónde incluirlos dentro de la función mail de PHP ¿alguien me puede ayudar?
Desde ya muchas gracias!
  #2 (permalink)  
Antiguo 30/12/2010, 08:35
 
Fecha de Ingreso: diciembre-2010
Ubicación: Rosario, Santa Fe
Mensajes: 326
Antigüedad: 13 años, 4 meses
Puntos: 13
Respuesta: Problema con la funcion mail

Para evitarte dolores de cabeza con la autenticación smtp te recomiendo usar la clase PHPMailer la cual tiene un muy buen soporte para SMTP.
  #3 (permalink)  
Antiguo 30/12/2010, 17:26
 
Fecha de Ingreso: mayo-2003
Mensajes: 523
Antigüedad: 20 años, 11 meses
Puntos: 6
Respuesta: Problema con la funcion mail

Bueno en el hosting tienen algo que se llama PEAR: http://pear.php.net/
Lo he logrado hacer funcionar bien con este codigo:

include("Mail.php");
$recipients = " "; # Mail del receptor del correo
$headers["From"] = ""; # Cuenta de correo valida del dominio
$headers["To"] = ""; # Destinatario del correo
$headers["Subject"] = "Prueba"; # Asunto de mail
$headers["Reply-To"]=""; #Mail de respuesta
$mailbody = "Hola esto es una prueba."; # Cuerpo del mail
$smtpinfo["host"] = ""; # Servidor SMTP
$smtpinfo["port"] = "25";
$smtpinfo["auth"] = true;
$smtpinfo["username"] = ""; # Cuenta de correo para autentificar
$smtpinfo["password"] = ""; # Clave de la cuenta de correo
$mail_object =& Mail::factory("smtp", $smtpinfo);
$mail_object->send($recipients, $headers, $mailbody);
echo "el correo fue enviado";



Sólo me queda un pequeño detalle que quisiera cambiar. Cuando recibo el mail en el campo "De" veo la dirección de correo que coloco en $headers["From"] quisiera en lugar de ver la cuenta ver el nombre de la empresa (Nanatravel), es un detalle... Supongo que debe haber algún encabzado más para hacer esto pero no logro encontrarlo... ¿alguien tiene idea? Gracias!!

Etiquetas: funcion, mail
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 02:10.