Foros del Web » Programando para Internet » PHP »

phpmailer

Estas en el tema de phpmailer en el foro de PHP en Foros del Web. hola a todos, estoy usando phpmailer con smtp para enviar correos, el problema que tengo es que en el servidor local me anda (me envia ...
  #1 (permalink)  
Antiguo 22/12/2008, 14:54
 
Fecha de Ingreso: octubre-2008
Mensajes: 33
Antigüedad: 15 años, 6 meses
Puntos: 2
phpmailer

hola a todos, estoy usando phpmailer con smtp para enviar correos, el problema que tengo es que en el servidor local me anda (me envia los mail) pero en el servidor gratuito con el que pruebo la pagina (260Mb) no anda, es mas se re cuelga (seguramente por el timeout mas que hace los 5 intentos por la cantidad de mails que mande es logico, igual probe con uno e igual resultado)y despues caen todos en $noenviado, no entiendo por que, lo unico que tiene que hacer este codigo es entregarselo al servidor smtp, o estoy entendiendo mal la idea?, se les ocurre por que no funciona en ese servidor, posteo el codigo:

Código PHP:
$enviado=0;
    
$noenviado=0;
    
$novalido=0;

  require_once 
"class.phpmailer.php";
  function 
CrearMail($cuerpo){
          
$mail = new phpmailer();
      
$mail->Mailer "smtp";
      
$mail->Host "mail.speedy.com.ar";
      
$mail->SMTPAuth true;
      
$mail->Username "[email protected]"
      
$mail->Password "contraseña";
      
$mail->From "[email protected]";
      
$mail->FromName "Yo";
      
$mail->Timeout=30;
      
      
$mail->Subject "Consulta";
        
$mail->Body $cuerpo;
        
      return 
$mail;
    }
    
    foreach(
$losmails as $unmail){
        if ((
trim($unmail)!="")) 
        {
          
$mail=CrearMail($mensaje);
          
$mail->AddAddress($unmail);
          
$exito $mail->Send();
          
$intentos=1;
          while ((!
$exito) && ($intentos 5)) {
            
sleep(7);
                
$exito $mail->Send();
                ++
$intentos;    
           }
           if(!
$exito) {
            
//Problemas enviando correo electrónico
            
$noenviado++;
           } else {
            
//Mensaje enviado correctamente
            
$enviado++;
           }
           unset(
$mail); 
        }else{
            
$novalido++;
        }
    }
    echo(
"Mail enviados: ".$enviado."<BR>");
    echo(
"Mail no enviados: ".$noenviado."<BR>");
    echo(
"Mail no valido: ".$novalido."<BR>"); 
Desde ya muchas gracias.
  #2 (permalink)  
Antiguo 22/12/2008, 15:01
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: phpmailer

Puede ser el problema de tantos mails que son, que el servidor SMTP te bloquea, recuerda que muchos hostings tienen directivas muy estrictas respecto al envio masivo de mails.

Saludos.
  #3 (permalink)  
Antiguo 23/12/2008, 05:11
 
Fecha de Ingreso: octubre-2008
Mensajes: 33
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: phpmailer

Es lo primero que yo pense, pero en mi servidor local anduvo. Lo que pasa que un solo mail tampoco funciona, es más la pagina igualmente tarda, se puede decir que minutos en cargar. Perdon no lo pense antes pero tire

Código PHP:
if(!$mail->Send()){
 echo 
$mail->ErrorInfo;

y me tira este error:

Código:
SMTP Error: could not connect to SMTP host server(s)
por lo que vi en otro posteo anterior que Cluster concluyo

Bueno .. en mi anterior mensaje te hacía rerencia y preguntaba sobre que si usas algún proxy/firewall en tu servidores (o red) .. Por qué si tienes bloqueado el puerto 25 (creo recordad que es lo que usa SMTP) te va a dar problemas de conexión.

Me suena que es por eso, ya que el servidor te provee servidor pop3 pero no smtp por lo que calculo deben tambien bloquear el puerto 25, y si es eso no hay forma de solucionarlo. Desde ya muchas gracias.
  #4 (permalink)  
Antiguo 23/12/2008, 12:11
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: phpmailer

En efecto revisa que la dirección hacia el servidor SMTP es la correcta y no hay nada que impida la comunicación.

Saludos.
  #5 (permalink)  
Antiguo 23/12/2008, 14:15
 
Fecha de Ingreso: octubre-2008
Mensajes: 33
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: phpmailer

Efectivamente por descarte, es esa mi conclusion, ya que si anda en el servidor de mi pc y son las mismas paginas que subi, no queda otra. Igualmente no importa si es ese el problema, por que la idea es que luego sera subida a un servidor de pago. Justo vi que hay un post abierto al cual seguire, por las dudas.

Asunto: phpmailer+gmail o alguna manera sin puerto:25.
Autor: naturadinfinitus.

Muchas gracias GatorV.
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 20:02.