Foros del Web » Estrategias Digitales y Negocios Online » Negocios »

Enviar un correo con aspecto web

Estas en el tema de Enviar un correo con aspecto web en el foro de Negocios en Foros del Web. Hola: igual el titulo no esta bien escogido pero trato de explicarme: He diseñado un codigo web, la idea es mandarla por correo, como tantos ...
  #1 (permalink)  
Antiguo 21/12/2014, 04:11
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Enviar un correo con aspecto web

Hola:

igual el titulo no esta bien escogido pero trato de explicarme:

He diseñado un codigo web, la idea es mandarla por correo, como tantos correos que recibo.

Pero no se como hacerlo, estoy intentándolo con windows live mail y con gmail, pero no doy con el truco.

Alguna idea?

un saludo
  #2 (permalink)  
Antiguo 23/12/2014, 03:10
Avatar de garciasanchezdani  
Fecha de Ingreso: noviembre-2011
Mensajes: 429
Antigüedad: 12 años, 5 meses
Puntos: 51
Respuesta: Enviar un correo con aspecto web

Hola @miriamgomez ¿puedes explicarme mejor qué es lo que quieres hacer?...o ponerme algún ejemplo...es que no sé si he entendido bien, pero parece que quieres enviar un correo, maquetado en html, donde quizás insertas algunos datos "que te traes de tu base de datos" de tu página web, ¿o algo así?...¿o es un correo con html estático (es decir, siempre lo mismo)?

Saludos :)
__________________
Diseño Web Jaén
  #3 (permalink)  
Antiguo 23/12/2014, 04:32
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Enviar un correo con aspecto web

Hola:

lo primero es agradecerte tu respuesta.

Lo que quiero enviar es un correo "maqueteado" en html: meter mi cabeceras, darle por ejemplo color de fondo al correo, alguna imagen, textos en H1, H2, p..., enlaces.

Vamos que el correo parezca una web jajajja

un saludo
  #4 (permalink)  
Antiguo 23/12/2014, 12:56
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Enviar un correo con aspecto web

pues envialo como html, como lo quieres enviar? por medio de tu editor de correo o tienes alguna aplicacion para esto???
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 23/12/2014, 15:12
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Enviar un correo con aspecto web

Hola:

esa es mi duda, como debe hacerse para enviarlo en html?

un saludo
  #6 (permalink)  
Antiguo 23/12/2014, 15:46
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 3 meses
Puntos: 10
Respuesta: Enviar un correo con aspecto web

Código PHP:
<?php
// multiple recipients
$to  '[email protected]', '// note the comma
$to .= '[email protected]';

// subject
$subject 'Birthday Reminders for August';

// message
$message '
<html>
<head>
  <title>Birthday Reminders for August</title>
</head>
<body>
  <p>Here are the birthdays upcoming in August!</p>
  <table>
    <tr>
      <th>Person</th><th>Day</th><th>Month</th><th>Year</th>
    </tr>
    <tr>
      <td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
    </tr>
    <tr>
      <td>Sally</td><td>17th</td><td>August</td><td>1973</td>
    </tr>
  </table>
</body>
</html>
'
;

// To send HTML mail, the Content-type header must be set
$headers  'MIME-Version: 1.0' "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' "\r\n";

// Additional headers
$headers .= 'To: Mary <[email protected]>, Kelly <[email protected]>' "\r\n";
$headers .= 'From: Birthday Reminder <[email protected]>' "\r\n";
$headers .= 'Cc: [email protected]"\r\n";
$headers .= 'Bcc: [email protected]"\r\n";

// Mail it
mail($to$subject$message$headers);
?>
  #7 (permalink)  
Antiguo 24/12/2014, 01:53
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Enviar un correo con aspecto web

Cita:
Iniciado por moginn Ver Mensaje
Código PHP:
<?php
// multiple recipients
$to  '[email protected]', '// note the comma
$to .= '[email protected]';

// subject
$subject 'Birthday Reminders for August';

// message
$message '
<html>
<head>
  <title>Birthday Reminders for August</title>
</head>
<body>
  <p>Here are the birthdays upcoming in August!</p>
  <table>
    <tr>
      <th>Person</th><th>Day</th><th>Month</th><th>Year</th>
    </tr>
    <tr>
      <td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
    </tr>
    <tr>
      <td>Sally</td><td>17th</td><td>August</td><td>1973</td>
    </tr>
  </table>
</body>
</html>
'
;

// To send HTML mail, the Content-type header must be set
$headers  'MIME-Version: 1.0' "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' "\r\n";

// Additional headers
$headers .= 'To: Mary <[email protected]>, Kelly <[email protected]>' "\r\n";
$headers .= 'From: Birthday Reminder <[email protected]>' "\r\n";
$headers .= 'Cc: [email protected]"\r\n";
$headers .= 'Bcc: [email protected]"\r\n";

// Mail it
mail($to$subject$message$headers);
?>
Hola;

Muchas gracias por tu respuesta, la estoy probando y funciona¡¡¡

solo un pero: cuando intento añadirle una hoja de estilo:
Código HTML:
Ver original
  1. <head>
  2.   <title>Novedades Articulos</title>
  3. <link href="estilo.css" media="screen" rel="StyleSheet" type="text/css">
  4.  
  5. </head>

No la toma, he comprobado la direccion, que estuviera subida...

Pero no doy con el fallo...
  #8 (permalink)  
Antiguo 24/12/2014, 02:14
Avatar de garciasanchezdani  
Fecha de Ingreso: noviembre-2011
Mensajes: 429
Antigüedad: 12 años, 5 meses
Puntos: 51
Respuesta: Enviar un correo con aspecto web

Hola de nuevo @miriamgomez , en los mailings no puedes utilizar hojas de estilo externas, en su lugar, debes utilizar hojas de estilo inline. Por ejemplo:

Código HTML:
Ver original
  1. <head>
  2.   body {background-color:lightgray}
  3.   h1   {color:blue}
  4.   p    {color:green}
  5. </head>

Así sí que te pillará los estilos :)

¡saludos!
__________________
Diseño Web Jaén
  #9 (permalink)  
Antiguo 24/12/2014, 02:16
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 3 meses
Puntos: 10
Respuesta: Enviar un correo con aspecto web

Cita:
Iniciado por miriamgomez Ver Mensaje
Hola;

Muchas gracias por tu respuesta, la estoy probando y funciona¡¡¡

solo un pero: cuando intento añadirle una hoja de estilo:
Código HTML:
Ver original
  1. <head>
  2.   <title>Novedades Articulos</title>
  3. <link href="estilo.css" media="screen" rel="StyleSheet" type="text/css">
  4.  
  5. </head>

No la toma, he comprobado la direccion, que estuviera subida...

Pero no doy con el fallo...
Prueba de poner los estilos así

<head>
<style></style>
</head>

o usa url absoluta:

<link href="http://miweb.com/estilo.css" media="screen" rel="StyleSheet" type="text/css">
  #10 (permalink)  
Antiguo 24/12/2014, 02:49
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Enviar un correo con aspecto web

Esto avanza¡¡¡¡

Gracias a ambos.

Un par de dudas:

- He optado por la opcion de rutas absolutas y funciona, pero no actuliza, se queda como con memoria, los cambios que voy haciendo en la hoja de estilo no los toma. Ando cambiando el nombre del archivo, pero voy por el 14 jajajajja

- Como colocar la tipica leyenda de: "si no ve este correo haga click aqui"

- La manera mas sencilla de hacer un "Unsubscribe"

Muchas gracias
  #11 (permalink)  
Antiguo 24/12/2014, 02:58
Avatar de garciasanchezdani  
Fecha de Ingreso: noviembre-2011
Mensajes: 429
Antigüedad: 12 años, 5 meses
Puntos: 51
Respuesta: Enviar un correo con aspecto web

Hola de nuevo :) me alegro de que vaya viento en popa jejeje

- ¿Puede ser la caché de tu navegador? Es decir, entre prueba y prueba, limpia la caché y las cookies de tu navegador, y comprueba que tus nuevos cambios en tu style se reflejen correctamente. Si no....pues a llegar hasta el 9999 jajaja

- He visto, en algunos mails, que suelen poner al principio lo de "Si no ves bien este correo...", y lo que es en realidad es una etiqueta <a href> que te redirecciona a un html que tienes en tu servidor (por ejemplo donde tienes tu style)

- Yo tengo un mailing semanal creado por mí, y lo que hago es, como en todos los mails, colocar al final de mi email, en chiquitito, el texto "Si no quieres recibir correos de este tipo, pincha aquí". Es una etiqueta <a href> que redirecciona a un html de mi web, con un formulario, que pide el email o nombre usuario (como tú quieras) del usuario en concreto....Y a partir del email o nombre de usuario dado, actualizo en base de datos un campo recibir_notificaciones (o como quieras llamarlo) al valor "n", "no" (como quieras). Por defecto, todos mis usuarios reciben correos, pero si un usuario expresamente quiere darse de baja, actualizo este campo, y listo. Luego, antes de enviar el mail, recojo para cada usuario el valor del campo recibir_notificaciones, y si es "n" no envío el mailing a ese usuario...

Espero haberte sido de ayuda.

¡Saludos! Daniel
__________________
Diseño Web Jaén
  #12 (permalink)  
Antiguo 24/12/2014, 03:15
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 3 meses
Puntos: 10
Respuesta: Enviar un correo con aspecto web

primero puedes poner los estilos asi: <style> </style> y luego cuando te guste el resultado lo trasladas al .css. Así no tendrás que renombrar tantas veces.

Para darse de baja puedes generar un token aleatoriamente usando esta función:

Código PHP:
    public static function generateToken($length 20
    {
        
$chars 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
        
$count mb_strlen($chars);
    
        for (
$i 0$result ''$i $length$i++) {
            
$index rand(0$count 1);
            
$result .= mb_substr($chars$index1);
        }
    
        return 
$result;
    } 
y lo guardas en la tabla Usuario. Luego envías el token por correo y, cuando hagan click en el enlace, buscas el usuario que tenga como token el token recibido y lo das de baja.
  #13 (permalink)  
Antiguo 24/12/2014, 03:20
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Enviar un correo con aspecto web

joder¡¡¡ que maquinas sois.

Por lo que os leo, no añadeis los correos "manualmente" sino desde una base de datos.

¿como lo haceis?

Un saludo
  #14 (permalink)  
Antiguo 24/12/2014, 03:27
Avatar de garciasanchezdani  
Fecha de Ingreso: noviembre-2011
Mensajes: 429
Antigüedad: 12 años, 5 meses
Puntos: 51
Respuesta: Enviar un correo con aspecto web

Yo los correos los tengo ya en la base de datos, de los usuarios que se han registrado en mi web...
Por ejemplo, tengo mailings diferentes para:

-Usuarios registrados en mi web (mailing promociones para usuarios registrados)
-Usuarios que no se han registrado en la web, pero han dejado su mail para recibir noticias sobre un producto en concreto, etc...

Como ves, eso ya depende de qué es lo que buscas conseguir...

Saludos
__________________
Diseño Web Jaén
  #15 (permalink)  
Antiguo 24/12/2014, 03:31
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 3 meses
Puntos: 10
Respuesta: Enviar un correo con aspecto web

Cita:
Iniciado por miriamgomez Ver Mensaje
joder¡¡¡ que maquinas sois.

Por lo que os leo, no añadeis los correos "manualmente" sino desde una base de datos.

¿como lo haceis?

Un saludo
pues usando mysql_connect


Código PHP:
<?php
mysql_connect
("localhost""mysql_user""mysql_password") or
    die(
"Could not connect: " mysql_error());
mysql_select_db("mydb");

$result mysql_query("SELECT id, name FROM mytable");

while (
$row mysql_fetch_array($resultMYSQL_NUM)) {
    
printf("ID: %s  Name: %s"$row[0], $row[1]);  
}

mysql_free_result($result);
?>
  #16 (permalink)  
Antiguo 24/12/2014, 11:42
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Enviar un correo con aspecto web

Hola:

gracias por vuestra ayuda¡¡¡¡

ya tengo el formulario donde se recogen los destinatarios de los correos en una columna, en el campo $row[1]

Pero como unir los dos formularios?

Un saludo
  #17 (permalink)  
Antiguo 24/12/2014, 12:50
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 3 meses
Puntos: 10
Respuesta: Enviar un correo con aspecto web

Cita:
Iniciado por miriamgomez Ver Mensaje
Hola:

gracias por vuestra ayuda¡¡¡¡

ya tengo el formulario donde se recogen los destinatarios de los correos en una columna, en el campo $row[1]

Pero como unir los dos formularios?

Un saludo
¿qué dos formularios? para hacer un "unsubscribe" sólo hace falta un formulario con un campo para introducir una dirección de correo y un botón de submit.
  #18 (permalink)  
Antiguo 24/12/2014, 18:22
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Enviar un correo con aspecto web

Lo siento me explique mal...

Los correos de la lista, los paso "a mano" al mailer o se puede hacer en automatico?

Un saludo
  #19 (permalink)  
Antiguo 24/12/2014, 20:04
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 3 meses
Puntos: 10
Respuesta: Enviar un correo con aspecto web

Cita:
Iniciado por miriamgomez Ver Mensaje
Lo siento me explique mal...

Los correos de la lista, los paso "a mano" al mailer o se puede hacer en automatico?

Un saludo
se puede hacer automático. Lo ideal sería que guardases los correos en la base de datos y los recuperaras cuando tengas que mandar el mensaje
  #20 (permalink)  
Antiguo 25/12/2014, 01:07
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Respuesta: Enviar un correo con aspecto web

Hola:

entiendo la teoria, pero me falta el paso practico:

- Tengo la base de datos, un codigo con el que leo la tabla y extraigo los correos

- Tengo por otro lado el codigo que envia los correos


Pero, como conecto ambos y que el campo $row[1] pase a $headers .= 'Bcc: [email protected]' . "\r\n";

un saludo
  #21 (permalink)  
Antiguo 25/12/2014, 02:19
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 3 meses
Puntos: 10
Respuesta: Enviar un correo con aspecto web

Cita:
Iniciado por miriamgomez Ver Mensaje
Hola:

entiendo la teoria, pero me falta el paso practico:

- Tengo la base de datos, un codigo con el que leo la tabla y extraigo los correos

- Tengo por otro lado el codigo que envia los correos


Pero, como conecto ambos y que el campo $row[1] pase a $headers .= 'Bcc: [email protected]' . "\r\n";

un saludo
Versión 1: Mandar los correos uno por uno

Código PHP:
 <?php
mysql_connect
("localhost""mysql_user""mysql_password") or
    die(
"Could not connect: " mysql_error());
mysql_select_db("mydb");

$result mysql_query("SELECT email FROM mytable");

while (
$row mysql_fetch_array($result)) {
      
$to  $row[0];

      
// subject
      
$subject 'Birthday Reminders for August';

      
// message
      
$message '
      <html>
      <head>
    <title>Birthday Reminders for August</title>
      </head>
      <body>
    <p>Here are the birthdays upcoming in August!</p>
    <table>
      <tr>
        <th>Person</th><th>Day</th><th>Month</th><th>Year</th>
      </tr>
      <tr>
        <td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
      </tr>
      <tr>
        <td>Sally</td><td>17th</td><td>August</td><td>1973</td>
      </tr>
    </table>
      </body>
      </html>
      '
;

      
// To send HTML mail, the Content-type header must be set
      
$headers  'MIME-Version: 1.0' "\r\n";
      
$headers .= 'Content-type: text/html; charset=iso-8859-1' "\r\n";

      
// Additional headers
      
$headers .= 'From: Birthday Reminder <[email protected]>' "\r\n";

      
// Mail it
      
mail($to$subject$message$headers);
}

mysql_free_result($result);
?>
Versión 2: mandar los correos de golpe
Código PHP:
 <?php
mysql_connect
("localhost""mysql_user""mysql_password") or
    die(
"Could not connect: " mysql_error());
mysql_select_db("mydb");

$result mysql_query("SELECT email FROM mytable");
$addresses[] = array();
while(
$row mysql_fetch_array($result))
{
    
$addresses[] = $row[0];
}
$to implode(", "$addresses);

// subject
$subject 'Birthday Reminders for August';

// message
$message '
<html>
<head>
  <title>Birthday Reminders for August</title>
</head>
<body>
  <p>Here are the birthdays upcoming in August!</p>
  <table>
    <tr>
      <th>Person</th><th>Day</th><th>Month</th><th>Year</th>
    </tr>
    <tr>
      <td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
    </tr>
    <tr>
      <td>Sally</td><td>17th</td><td>August</td><td>1973</td>
    </tr>
  </table>
</body>
</html>
'
;

// To send HTML mail, the Content-type header must be set
$headers  'MIME-Version: 1.0' "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' "\r\n";

// Additional headers
$headers .= 'From: Birthday Reminder <[email protected]>' "\r\n";

// Mail it
mail($to$subject$message$headers);
}

mysql_free_result($result);
?>

Última edición por moginn; 25/12/2014 a las 02:50
  #22 (permalink)  
Antiguo 26/12/2014, 07:35
Avatar de Tedel  
Fecha de Ingreso: enero-2011
Ubicación: Lima
Mensajes: 2.744
Antigüedad: 13 años, 3 meses
Puntos: 444
Respuesta: Enviar un correo con aspecto web

Quizá un poco tarde, pero para mantener total compatibilidad, mi secreto es usar HTML antiguo en los correos (sí, <font> y no CSS).

Para los envíos, PHPlist suele funcionar muy bien. Es software libre. Asegúrate de no enviar más de 200 mensajes por hora desde tu servidor para evitar que te penalicen el dominio por spam.

Recuerda que el servidor necesita tener rDNS, DKIM y SPF válidos para que los mensajes no sean bloqueados por intento de spam.

Espero ayude.
__________________
Soy el autor de Heptagrama y tengo un servicio "todo incluido" de marketing web.
  #23 (permalink)  
Antiguo 07/01/2015, 21:59
Avatar de desco6  
Fecha de Ingreso: diciembre-2014
Ubicación: Vivo aquí
Mensajes: 206
Antigüedad: 9 años, 4 meses
Puntos: 4
Respuesta: Enviar un correo con aspecto web

Cita:
Iniciado por miriamgomez Ver Mensaje
Hola:

lo primero es agradecerte tu respuesta.

Lo que quiero enviar es un correo "maqueteado" en html: meter mi cabeceras, darle por ejemplo color de fondo al correo, alguna imagen, textos en H1, H2, p..., enlaces.

Vamos que el correo parezca una web jajajja

un saludo

LLego tarde a la reparticion de chismes jajajajaja.

Pero regresando al tema.


A mi ver no es buena idea, pues en vercion de celular, que es el futuro de todo, los correo es html son suprimidos y solo sale el puro texto.

Mira este es el correo que me envio una empresa y ve lo que yo veo.


header logo (https://suempresa.com?utm_source=Lista+General&utm_campaig n=c2167b3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929
promo1 (https://www.suempresa.com/dominios?utm_source=Lista+General&utm_campaign=c21 67b3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929
blog (https://www.suempresa.com/web-hosting-enero?utm_source=Lista+General&utm_campaign=c2167b 3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929
twitter (http://twitter.com/suempresa?utm_source=Lista+General&utm_campaign=c2 167b3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929
linked (http://www.linkedin.com/company/suempresa.com?utm_source=Lista+General&utm_campaig n=c2167b3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929
facebook (http://www.facebook.com/SuEmpresa?utm_source=Lista+General&utm_campaign=c2 167b3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929
blog (http://blog.suempresa.com/?utm_source=Lista+General&utm_campaign=c2167b3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929
google_plus (https://plus.google.com/+suempresa/posts?utm_source=Lista+General&utm_campaign=c2167b 3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929
youtube (http://www.youtube.com/user/SuEmpresacom?utm_source=Lista+General&utm_campaign =c2167b3073-Promociones_enero1_5_2015&utm_medium=email&utm_ter m=0_d5d783a7a8-c2167b3073-111723929


Alguna duda...

Etiquetas: aspecto, ayuda-general, correo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:10.