jueves, 23 de noviembre de 2017
PHP - Ejecutar un script al abrir un email
La idea es poder ejecutar automáticamente un script en PHP cuando alguien abre un email. Explicaré como hacerlo.
Esto puede resultar muy útil ya que nos permite poder hacer infinidades de cosas al momento de querer saber que pasó con el email que hemos enviado. Por ejemplo podriamos saber si fue abierto o no, cuantas veces fue leido, a que hora, desde que dirección IP, etc.
Que necesitamos?
- Saber algo de HTML.
- PHP, obiamente.
- Un servidor donde alojar nuestro archivo .php.
- Un sevidor de correo.
Si alguíen pensó en embeber un javascript os adelanto que no se puede ya que estas etiquetas no son ejecutadas por ningún cliente de correo (por lo menos no conozco ninguno que las ejecute si alguien conoce que avise) por medidas de seguridad.
Tampoco queremos que la persona tenga que hacer clic en nigún link ni nada por el estilo.
Pasos:
- Crear el archivo php que contenga el script a ejecutar. Ejemplo: creamos el archivo script.php con el siguiente contenido.
<?php $asunto = "El email fue leido"; $mensaje = "El email que enviaste a tal persona fue mostrado en su pantalla"; mail("mi_correo@dominio.com", $asunto, $mensaje); ?>
- Posteriormente hay que crear un email con formato HTML desde un cliente de correo que permita hacerlo así y no con texto plano.
- Ahora viene lo fundamental para que se pueda ejecutar el script automáticamente, y básicamente consiste en poner en algún lado del email una etiquera de imágen que en lugar de referenciar una imagen, referencie un archivo .php. Generalmente los clientes de correos interpretan el HTML y muestran las imágenes referenciadas automáticamente. Con lo cual si nosotros referenciamos a un archivo PHP éste se ejecutará automáticamente sin necesidad de ninguna intervención por parte del receptor.
<HTML> Hola Destinatario! <img src="http://mi_servidor.com/script.php"/> </HTML>Ahora solo resta enviar el email y que el destinatario lo abra. Cuando esto ocurra nuestro PHP se ejecutará. Obiamente que para que ésto funcione el destinatario debe leer el email con una pc que esté concectada a internet al momento de la apertura del correo.
Como última aclaración, cuando el el detinatario vea el correo, probablemente éste vea como una imagen que no se mostró(el cuadradito con la cruz roja).
Ésto lo solucionamos poniendo en nuestro script PHP que se ejecuta (primer ejemplo) en la última línea algo como esto:
<?php header ("Location: http://www.mi_dominio.com/mi_imagen.jpg"); ?>
Suscribirse a:
Enviar comentarios
(
Atom
)
Sígueme en las Redes Sociales
Donaciones
Datos personales
Entradas populares
-
En este apartado vamos a explicar como ejercutar archivos PHP a través del terminal de Ubuntu. Lo primero que tendríamos que hacer es inst...
-
En este blog voy a comentar un tema que se utilizan en casi todas las páginas web que existen, y es el tema de la paginación. La paginaci...
-
Este post trata de la integración de la librería PHPExcel en Codeigniter, aunque se podría aplicar a cualquier librería, como por ejemplo mP...
-
Ejemplo para añadir o sumar un número determinado de hora/s, minuto/s, segundo/s a una fecha en php. Con la función strtotime se puede ...
-
Este tema es uno de los temas primordiales sobre el framework Codeigniter, ya que en alguna ocación nos hemos visto obligados a recoger dato...
© Espacio Daycry - Espacio de programación 2013 . Powered by Bootstrap , Blogger templates and RWD Testing Tool
No hay comentarios :
Publicar un comentario