Hasta ahora he usado para envio de correo mail(). Pero me quise cambiar a phpmailer y no pude porque en 000webhosting no esta habilitado.
Ahora me cambié para un servidor de pago Host Gator pero me sigue saliendo el mismo error que antes y aparentemente mi codigo no tendria errores.
SMTP Error: Could not connect to SMTP host.
voy a adjuntar el codigo que uso para me me den segerencias.
Tambien quiero preguntarles que tengo que mirar en el php.ini del servidor para ver si tengo que habilitar algo ahi y ver como configurarlo para que me funcione .
Gracias , toda sugenrencia, link o ayuda la agradezco desde ya
Código PHP:
require "includes/class.phpmailer.php";
$mail = new PHPMailer();
//Con PluginDir le indicamos a la clase phpmailer donde se encuentra la clase smtp
$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.gmail.com";
$mail->SMTPAuth = true;
//Le indicamos que el servidor smtp requiere autenticación
$mail->SMTPAuth = true;
//usuario y clave de Gmail pues para hacer uso de este SMTP hace falta autentificación.
$mail->Username = "[email protected]";
$mail->Password = "clave";
echo "Envio del email<br>";
//Indicamos cual es nuestra dirección de correo y el nombre que queremos que vea el usuario que lee nuestro correo
$mail->From = "[email protected]";
$mail->FromName = "mistio.com.uy";
$mail->Timeout=30;
$mail->Subject = "Probando el nuevo sistema";
//en AltBody se envía el mensaje en texto plano
$mail->AltBody = "Hola, te doy mi nuevo numero\nxxxx.";
//MsgHTML el mensaje en formato HTML.
$mail->MsgHTML("Hola, te doy mi nuevo numero<br><b>xxxx</b>.");
//forma de enviar archivos
//$mail->AddAttachment("files/files.zip");
//$mail->AddAttachment("files/img03.jpg");
//AddAddress agregamos los datos del destinatario de nuestro email.
$mail->AddAddress("[email protected]", "Ricardo");
$mail->IsHTML(true);
//la variable $exito tendra el valor true si se envia el mensaje
$exito = $mail->Send();
echo $exito;
exit();
//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;
echo $intentos;
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";
}