sc_mail_send: Configuración y Envío de correo

En este tutorial mostramos cómo configurar los parámetros de la macro sc_mail_send de forma a utilizarlo con nuestro servidor de mails para envíos de correo.

Los dos ejemplos específicos del tutorial son:
1. Configuración de la opción de recuperar contraseña en la aplicación generada por el módulo de seguridad del Scriptcase.
2. Creación de una Plantilla HTML para enviar a una lista de correos de nuestra Base de Datos.

Código y enlaces del ejemplo 2

Comando SQL para crear tabla Clientes en MySQL:

CREATE TABLE `cliente` (
 `idCliente` int(11) NOT NULL AUTO_INCREMENT,
 `NombreCliente` varchar(45) NOT NULL,
 `Documento` varchar(15) DEFAULT NULL,
 `Correo` varchar(100) DEFAULT NULL,
 PRIMARY KEY (`idCliente`),
 UNIQUE KEY `Documento_UNIQUE` (`Documento`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

Evento onValidate:

if ({EnviarMail} == 1)
{
 [Mensaje] = '';
 
 CrearMensaje({NombreCliente}); 
 
 /**
 * Send a simple email
 */

 // Email parameters
 $mail_smtp_server = 'scriptcase.com.py'; // SMTP server name or IP address
 $mail_smtp_user = 'prueba@scriptcase.com.py'; // SMTP user name
 $mail_smtp_pass = 'contraseña'; // SMTP password
 $mail_from = 'prueba@scriptcase.com.py'; // From email
 $mail_to = {Correo}; // To email
 $mail_message = [Mensaje];
 $mail_subject = 'Novedades de la Semana'; // Message body
 $mail_format = 'H'; // Message format: (T)ext or (H)tml

 // Send email
 sc_mail_send($mail_smtp_server,
 $mail_smtp_user,
 $mail_smtp_pass,
 $mail_from,
 $mail_to,
 $mail_subject,
 $mail_message,
 $mail_format,
 '','', '465', 'S');

 if ({sc_mail_ok})
 {
 sc_alert({lang_mail_sended_ok} );
 }
 else
 {
 sc_erro_mensagem({sc_mail_erro});
 }
}

La web donde encontrarán el paso a paso para crear Plantillas HTML es: https://webdesign.tutsplus.com/es/articles/build-an-html-email-template-from-scratch–webdesign-12770

Método CrearMensaje($Cliente):

[Mensaje] = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
 <head>
 <meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />
 <title>Demystifying Email Design</title>
 <meta name='viewport' content='width=device-width, initial-scale=1.0'/>
 </head>
 <body style='margin: 0; padding: 0;'>
 <table border='0' cellpadding='0' cellspacing='0' width='100%'>
 <tr>
 <td style='padding: 20px 0 30px 0;'>
 <table align='center' border='0' cellpadding='0' cellspacing='0' width='600'>
 <tr>
 <td align='center' bgcolor='#70bbd9' style='padding: 40px 0 30px 0;'>
 <img src='imagenes/Cabecera.png' alt='Creating Email Magic' width='300' height='230' style='display: block;' />
 </td>
 </tr>
 <tr>
 <td bgcolor='#ffffff' style='padding: 40px 30px 40px 30px;'>
 <table border='0' cellpadding='0' cellspacing='0' width='100%'>
 <tr>
 <td style='color: #153643; font-family: Arial, sans-serif; font-size: 24px;'>
 <b>Lorem ipsum dolor sit amet!</b>
 </td>
 </tr>
 <tr>
 <td style='padding: 20px 0 30px 0;color: #153643; font-family: Arial, sans-serif; font-size: 16px; line-height: 20px;'>
 Lorem ipsum dolor sit amet, consectetur adipiscing elit. In tempus adipiscing felis, sit amet blandit ipsum volutpat sed. Morbi porttitor, eget accumsan dictum, nisi libero ultricies ipsum, in posuere mauris neque at erat.
 </td>
 </tr>
 <tr>
 <td>
 <table border='0' cellpadding='0' cellspacing='0' width='100%'>
 <tr>
 <td width='260' valign='top'>
 <table border='0' cellpadding='0' cellspacing='0' width='100%'>
 <tr>
 <td>
 <img src='imagenes/ImagenIzq.png' alt='' width='100%' height='140' style='display: block;' />
 </td>
 </tr>
 <tr>
 <td style='padding: 25px 0 0 0;color: #153643; font-family: Arial, sans-serif; font-size: 16px; line-height: 20px;'>
 Lorem ipsum dolor sit amet, consectetur adipiscing elit. In tempus adipiscing felis, sit amet blandit ipsum volutpat sed. Morbi porttitor, eget accumsan dictum, nisi libero ultricies ipsum, in posuere mauris neque at erat.
 </td>
 </tr>
 </table>
 </td>
 <td style='font-size: 0; line-height: 0;' width='20'>
 &nbsp;
 </td>
 <td width='260' valign='top'>
 <table border='0' cellpadding='0' cellspacing='0' width='100%'>
 <tr>
 <td>
 <img src='imagenes/ImagenDer.png' alt='' width='100%' height='140' style='display: block;' />
 </td>
 </tr>
 <tr>
 <td style='padding: 25px 0 0 0;color: #153643; font-family: Arial, sans-serif; font-size: 16px; line-height: 20px;'>
 Lorem ipsum dolor sit amet, consectetur adipiscing elit. In tempus adipiscing felis, sit amet blandit ipsum volutpat sed. Morbi porttitor, eget accumsan dictum, nisi libero ultricies ipsum, in posuere mauris neque at erat.
 </td>
 </tr>
 </table>
 </td>
 </tr>
 </table>
 </td>
 </tr>
 </table>
 </td>
 </tr>
 <tr>
 <td bgcolor='#ee4c50' style='padding: 30px 30px 30px 30px;'>
 <table border='0' cellpadding='0' cellspacing='0' width='100%'>
 <tr>
 <td style='color: #ffffff; font-family: Arial, sans-serif; font-size: 14px;'>
 &reg; Someone, somewhere 2013<br/>
 <a href='#' style='color: #ffffff;'><font color='#ffffff'>Unsubscribe</font></a> to this newsletter instantly
 </td>
 <td align='right'>
 <table border='0' cellpadding='0' cellspacing='0'>
 <tr>
 <td>
 <a href='http://www.twitter.com/'>
 <img src='imagenes/twitter-icono.png' alt='Twitter' width='38' height='38' style='display: block;' border='0' />
 </a>
 </td>
 <td style='font-size: 0; line-height: 0;' width='20'>
 &nbsp;
 </td>
 <td>
 <a href='http://www.twitter.com/'>
 <img src='imagenes/facebook_icono.png' alt='Facebook' width='38' height='38' style='display: block;' border='0' />
 </a>
 </td>
 </tr>
 </table>
 </td>
 </tr>
 </table>
 </td>
 </tr>
 </table>
 </td>
 </tr>
 </table>
 </body>
</html>";

Las Imagenes y la Plantilla HTML pueden ser descargadas desde este enlace: mailing

También pueden descargar el Formulario creado en el ejemplo de forma a importarlo a sus proyectos: form_enviamail

Dando como resultado esta plantilla

sc_mail_send

 

Si aún no probaste la herramienta, recuerda que puedes probar Scriptcase gratis por 20 días y te damos soporte durante ese tiempo.

No olvides suscribirte a nuestro boletín de manera a que te lleguen todos nuestros tutoriales y novedades.suscribirse

Share

8 comentarios sobre «sc_mail_send, Configuración y Envío de correo»

  1. Excelente trabajo, me gustaria saber como se haria lo mismo pero con un archivo adjunto a diferentes destinatarios, no se si es posible. De cualquier forma gracias por las ayudas. Disculpa, me toco repetir el comentario porque mi nombre no quedo bien.

  2. Buen tutorial, me gustaria saber como envío a varios correos, guardo los correos en una variable con una coma para separarlos e igual tengo problemas, la idea es poder enviar el correo a varios destinatarios, no se que caracter usar para separar los correos y los envíe

    1. Ya me funcionó, es el ; solo que no me llegaban rápidos los correos por eso me confundían y parecía que no funcionaba, ahora me llegaron los correos, gracias de todas maneras

    2. Hola Rodrigo,

      Muchas gracias por visitar nuestros tutoriales.

      Para enviar a más de un correo debes utilizar como separador el punto y coma «;».

      Prueba y dinos qué tal te resultó.

      Diógenes.

  3. hola en ambiente de desarrollo funciona perfecto pero al hacer el despliqgue al de producción no funciona… que debo revisar?

  4. Hola en ambiente de desarrollo funciona perfecto después del despliegue genera muchos problemas y ademas solo funciona para enviar desde el email que esta en la api si por algun motivo quiero enviar un mensaje utilizando otro y mail o otro password ya genera error y no envia nada.

    Existe una forma de crear un sistema de envio de emails usando diferentes usuarios y correos?

  5. La verdad que probe en desarrollo con distintas cuentas y configuraciones y no hay forma de enviar un p…mail en todos da error SWIFT…

    Fatal error: Uncaught Swift_TransportException: Connection could not be established with host smtp.mail.yahoo.com [Se produjo un error durante el intento de conexi�n ya que la parte conectada no respondi� adecuadamente tras un periodo de tiempo, o bien se produjo un error en la conexi�n establecida ya que el host conectado no ha podido responder. #10060] in C:\Program Files\NetMake\v9-php73\wwwroot\scriptcase\prod\third\swift\classes\Swift\Transport\StreamBuffer.php:269 Stack trace: #0 C:\Program Files\NetMake\v9-php73\wwwroot\scriptcase\prod\third\swift\classes\Swift\Transport\StreamBuffer.php(62): Swift_Transport_StreamBuffer->_establishSocketConnection() #1 C:\Program Files\NetMake\v9-php73\wwwroot\scriptcase\prod\third\swift\classes\Swift\Transport\AbstractSmtpTransport.php(113): Swift_Transport_StreamBuffer->initialize(Array) #2 C:\Program Files\NetMake\v9-php73\wwwroot\scriptcase\prod\third\swift\classes\Swift\Mailer.php(79): Swift_Transport_AbstractSmtpTransport->start() #3 C:\Program Files\NetMake\v9-php73\wwwro in C:\Program Files\NetMake\v9-php73\wwwroot\scriptcase\prod\third\swift\classes\Swift\Transport\StreamBuffer.php on line 269

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *