Páginas

sábado, 21 de mayo de 2011

PhpMailer - Language string failed to load: from_failedroot@localhost.local

Este codigo de error generado por la libreria phpMailer se debe a que no registra o encuentra la direccion del remitente, la cual verifica su existencia. no basta con poner loquesea@midominio.com. Para esto ponga los valores correctos en los punteros ->From     y ->FromName como se muestra en el siguiente ejemplo:

<?
//Roman E. Herrera Coronado

require "class.phpmailer.php";

 include("config.php");



 $mail = new phpmailer();

  //Definimos las propiedades y llamamos a los métodos
  //correspondientes del objeto mail

  //Con PluginDir le indicamos a la clase phpmailer donde se
  //encuentra la clase smtp que como he comentado al principio de
  //este ejemplo va a estar en el subdirectorio includes
  //$mail->PluginDir = "includes/";

  //Con la propiedad Mailer le indicamos que vamos a usar un
  //servidor smtp
  $mail->Mailer = "smtp";

  //Asignamos a Host el nombre de nuestro servidor smtp
  $mail->Host = "smtp.midominio.com.mx";

  //Le indicamos que el servidor smtp requiere autenticación
  $mail->SMTPAuth = true;

  //Le decimos cual es nuestro nombre de usuario y password
  $mail->Username = "roman@midominio.com.mx";
  $mail->Password = "mipass";

  //Indicamos cual es nuestra dirección de correo y el nombre que
  //queremos que vea el usuario que lee nuestro correo
  $mail->From = "roman@midominio.com.mx";
  $mail->FromName = "Intranet ";


  //el valor por defecto 10 de Timeout es un poco escaso dado que voy a usar
  //una cuenta gratuita, por tanto lo pongo a 30 
  $mail->Timeout=30;

  //Indicamos cual es la dirección de destino del correo

  $mail->AddAddress("destino@midominio.com.mx");



 

  //Asignamos asunto y cuerpo del mensaje
  //El cuerpo del mensaje lo ponemos en formato html, haciendo
  //que se vea en negrita
  $mail->Subject = "Mi Asunto";
 
  $mail->Body = "Mi mensaje de correo";
  //Definimos AltBody por si el destinatario del correo no admite email con formato html 


  $mail->AltBody = "Solicitud de Requerimiento para la sucursal ".$m12;

  //se envia el mensaje, si no ha habido problemas
  //la variable $exito tendra el valor true
  $exito = $mail->Send();

  //Si el mensaje no ha podido ser enviado se realizaran 4 intentos mas como mucho
  //para intentar enviar el mensaje, cada intento se hara 5 segundos despues
  //del anterior, para ello se usa la funcion sleep    


  $intentos=1;
  while ((!$exito) && ($intentos < 5)) {
    sleep(5);
         //echo $mail->ErrorInfo;
         $exito = $mail->Send();
         $intentos=$intentos+1;   
   
   }

       
   if(!$exito)
   {
    echo "Problemas enviando correo electrónico a ".$valor;
    echo "<br/>".$mail->ErrorInfo;   
   }
   else
   {
    echo "Mensaje enviado correctamente";
   }
   
   
   

echo "&ERROR=1&";



?>

No hay comentarios:

Publicar un comentario

Si te gusta el contenido haz click en alguno de los enlaces para que nuestros patrocinadores nos donen.O bien puedes comprarme un cafe. :) De igual forma si tienes alguna opinion de retroalimentacion, no dudes en comentarla.