Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Curso Avanzado de PHP

Curso Avanzado de PHP

Héctor Benitez

Héctor Benitez

Emails

28/35
Recursos

Para enviar los correos electrónicos utilizaremos la librería Swiftmailer que también es usada por Symfony.
Existen varias maneras de enviar correos pero lo más común es usar el protocolo SMTP; podemos trabajar con nuestras cuentas propias pero para producción es recomendable usar servicios especializados. mailtrap.io nos sirve para probar correos electrónicos.
Puedes crear una cuenta gratuita en mailtrap la cual te permitirá tener una bandeja de entrada que puedes usar y en la parte del engranaje está la configuración y verás los datos SMTP.

Al enviar el formulario, se tarda un cierto tiempo en dar una respuesta porque se conecta a un servicio de terceros. Esto es muy común y lo problemático es que estamos bloqueando al usuario y éste no sabrá qué está pasando. Por esto mismo crearemos un proceso asíncrono para guardar los datos, darle respuesta al usuario y posteriormente hacer el envío.

Aportes 12

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Tener en cuenta que en producción el protocolo SMTP puede variar. Lo cual se requiere una configuración adicional.

También se podría usar la función propia de php llamada mail.
En este caso serviría mas que todo para hosting profesionales.

También existe como alternativa (Muy usada) PHPMailer que funciona más o menos similar^^

Sería bueno que enseñaran como usar la función mail de PHP

Excelente clase. muy sencilla, gracias por este grandioso curso, Hector

Nose como llegue aca , solo queria recibir los mensajes que me dejan en mi pagina web.

Buenos días, quisiera hacer una pregunta, tengo un pequeño proyecto pero lo tengo con php, en una tabla de Mysql tengo una tabla con datos como el cumpleaños y el correo electrónico, quisiera que cada vez que un usuario cumpla años se envíe un mensaje de correo electrónico con un mensaje, alguien e podría ayudar.?

Hola,
tengo un problema, al ejecutar el siguiente código:

require_once 'vendor/autoload.php';

$transport = (new Swift_SmtpTransport(SMTP_SERVER, SMTP_PASS))
  ->setUsername(SMTP_USER)
  ->setPassword(SMTP_PASS);

$mailer  = new Swift_Mailer($transport);
$message = (new Swift_Message('Wonderful Subject'))
  ->setFrom(['[email protected]' => 'Queries Tasks'])
  ->setTo(['[email protected]', '[email protected]' => 'A name'])
  ->setBody('alskdja klej klej l');

$result = $mailer->send($message);

me devuelve el siguiente error:

PHP Fatal error:  Uncaught Swift_TransportException: Connection could not be established with host smtp.mailtrap.io [Connection timed out #110] in /tmp/mail/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php:265

Para enviar los correos electrónicos utilizaremos la librería Swiftmailer que también es usada por Symfony.

Existen varias maneras de enviar correos pero lo más común es usar el protocolo SMTP; podemos trabajar con nuestras cuentas propias pero para producción es recomendable usar servicios especializados. mailtrap.io nos sirve para probar correos electrónicos.
Puedes crear una cuenta gratuita en mailtrap la cual te permitirá tener una bandeja de entrada que puedes usar y en la parte del engranaje está la configuración y verás los datos SMTP.

Al enviar el formulario, se tarda un cierto tiempo en dar una respuesta porque se conecta a un servicio de terceros. Esto es muy común y lo problemático es que estamos bloqueando al usuario y éste no sabrá qué está pasando. Por esto mismo crearemos un proceso asíncrono para guardar los datos, darle respuesta al usuario y posteriormente hacer el envío.

El logo de epub parece al de platzi