Descargué PHPMailer para poder enviar correos de activación de cuenta de manera más correcta y sencilla pero me esta dando un quebradero de cabeza bastante severo y no encuentro el motivo del fallo.
Código PHP:
function email_bienvenida($usuario,$email,$clave,$codigo_activacion) {
$mail = new PHPMailer(true);
$plantilla_email = new Plantilla('email_bienvenida');
$plantilla_email->asigna_variables(array());
try {
$mail->SetFrom('[email protected]', 'Yo mismo');
$mail->AddAddress($email, $usuario);
$mail->Subject = $GLOBALS['idioma']['bienvenido_registro'];
$mail->IsHTML(true);
$mail->MsgHTML($plantilla_email->muestra(false));
$mail->Send();
} catch (phpmailerException $e) {
echo $e->errorMessage();
echo 'error';
return false;
} catch (Exception $e) {
echo $e->getMessage();
echo 'error2';
return false;
}
return true;
}
Es la función que uso para enviar el email y no lo envía.
Aclaro que el email lo tengo como una plantilla la cual invoco desde una clase con la que puedo pasar variables y escribirlas dentro de la plantilla.
No me salta ningún tipo de error cuando ejecuto el código y el email nunca llega.
He probado a variar el contenido de la plantilla por si fuese cosa de tamaño pero quitando y poniendo cosas no sigue una pauta lógica de funcionamiento, quito un párrafo y funciona, quito otro y deja de funcionar.