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.