Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/07/2013, 06:00
rbczgz
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Enviar Mailing Masivo(estilo felicitación de navidad)

Hola kobety,

Te respondo lo que creo que te puede ayudar:

Cita:
Iniciado por kobety Ver Mensaje
Código PHP:
Ver original
  1. <?PHP
  2.   // primero hay que incluir la clase phpmailer para poder instanciar
  3.   //un objeto de la misma
  4.   require "includes/class.phpmailer.php";
  5.  
  6.   //instanciamos un objeto de la clase phpmailer al que llamamos
  7.   //por ejemplo mail
  8.   $mail = new phpmailer();
  9.  
  10.   //Definimos las propiedades y llamamos a los métodos
  11.   //correspondientes del objeto mail
  12.  
  13.   //Con PluginDir le indicamos a la clase phpmailer donde se
  14.   //encuentra la clase smtp que como he comentado al principio de
  15.   //este ejemplo va a estar en el subdirectorio includes
  16.   $mail->PluginDir = "includes/";
Yo esto no lo pondría, creo que es lo que te afecta a los acentos, a mi, sin esto, me funciona perfectamente.

Cita:
Iniciado por kobety Ver Mensaje
Código PHP:
Ver original
  1. //Para acentos.
  2.   $mail*>CharSet = "UTF*8";
  3.   $mail*>Encoding = "quoted*printable";
Cita:
Iniciado por kobety Ver Mensaje
Código PHP:
Ver original
  1. //Con la propiedad Mailer le indicamos que vamos a usar un
  2.   //servidor smtp
  3.   $mail->Mailer = "smtp";
  4.  
  5.   //Asignamos a Host el nombre de nuestro servidor smtp
  6.   $mail->Host = "smtp.dominio.es";
Según tengo entendido, en host, lo que se debe poner es "localhost", si lo envías desde un hosting compartido, o en todo caso, en el soporte del hosting deben decirte qué colocar ahí, yo he probado como lo colocas tú y me tira error 500, por eso te lo digo.

Cita:
Iniciado por kobety Ver Mensaje
Código PHP:
Ver original
  1. //Le indicamos que el servidor smtp requiere autenticación
  2.   $mail->SMTPAuth = true;
  3.  
  4.   //Le decimos cual es nuestro nombre de usuario y password
  5.   $mail->Username = "[email protected]";
  6.   $mail->Password = "contraseña";
  7.  
  8.   //Indicamos cual es nuestra dirección de correo y el nombre que
  9.   //queremos que vea el usuario que lee nuestro correo
  10.   $mail->From = "[email protected]";
  11.   $mail->FromName = "nombre";
  12.  
  13.   //el valor por defecto 10 de Timeout es un poco escaso dado que voy a usar
  14.   //una cuenta gratuita, por tanto lo pongo a 30  
  15.   $mail->Timeout=30;
  16.  
  17.   //Indicamos cual es la dirección de destino del correo
  18.   $mail->AddAddress("a quien va "); //una vez me funcione esto ya me preocuparé para que aquí se meta una cadena...
  19.  
  20.   //Asignamos asunto y cuerpo del mensaje
  21.   //El cuerpo del mensaje lo ponemos en formato html, haciendo
  22.   //que se vea en negrita
  23.   $mail->Subject = "Prueba de phpmailer";
  24.   $mail->Body = "<b>Mensaje de prueba mandado con phpmailer en formato html</b>";
  25.  
  26.   //Definimos AltBody por si el destinatario del correo no admite email con formato html
  27.   $mail->AltBody = "Mensaje de prueba mandado con phpmailer en formato solo texto";
  28.  
  29.   //se envia el mensaje, si no ha habido problemas
  30.   //la variable $exito tendra el valor true
  31.   $exito = $mail->Send();
  32.  
  33.   //Si el mensaje no ha podido ser enviado se realizaran 4 intentos mas como mucho
  34.   //para intentar enviar el mensaje, cada intento se hara 5 segundos despues
  35.   //del anterior, para ello se usa la funcion sleep
  36.   $intentos=1;
  37.   while ((!$exito) && ($intentos < 5)) {
  38.     sleep(5);
  39.         //echo $mail->ErrorInfo;
  40.         $exito = $mail->Send();
  41.         $intentos=$intentos+1; 
  42.    
  43.    }
  44.  
  45.        
  46.    if(!$exito)
  47.    {
  48.     echo "Problemas enviando correo electrónico a ".$valor;
  49.     echo "<br/>".$mail->ErrorInfo; 
  50.    }
  51.    else
  52.    {
  53.     echo "Mensaje enviado correctamente";
  54.    }
  55. ?>

Muchas Gracias!!!!
Por lo que comentas, creo que el problema puede estar en que lo intentas enviar desde tu máquina y no tengas un servidor SMTP instalado, tal como te decía abimaelrc

Espero que te haya servido de ayuda.

.