Владимир55
24.01.2015 - 14:57
В письме имеется рекламный баннер, который показывается традиционным кодом
<img border="0" src="http://php.ru/350.gif" width="60" height="35">
Баннер у каждого письма свой, из чего следует, что открытие этого баннера на компе получаетеля изначает знакомство этого получателя с письмом.
Никак не придумаю, каким образом контролировать на сервере, что данный баннер был запрошен и считан!
Вообще-то, можно это сделать?
vagrand
24.01.2015 - 15:11
Можно. Отдавайте изображение через php скрипт.
_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
FatCat
24.01.2015 - 15:15
Именно для того, чтобы такие "умники" меня не сосчитали, я и пользуюсь опера-мейлером: пока я не нажму кнопку "показать графику", никаких запросов ни на какие сервера не отправляется.
_____________
Бесплатному сыру в дырки не заглядывают...
vagrand
24.01.2015 - 15:29
FatCat
Ну это уже вопрос из другой плоскости.
_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
Владимир55
24.01.2015 - 15:31
Цитата (vagrand @ 24.01.2015 - 11:11) |
Отдавайте изображение через php скрипт. |
Можете пояснить эту мысль?
killer8080
24.01.2015 - 16:28
Цитата (Владимир55 @ 24.01.2015 - 13:57) |
Баннер у каждого письма свой, из чего следует, что открытие этого баннера на компе получаетеля изначает знакомство этого получателя с письмом. |
ничего это не означает, все крупные почтовики внешнюю графику из письма закчивают в свой кеш. Пользователь читая письмо откроет картинку из кеша почтовика. Проверить открыл ли юзер письмо таким путем неудастся.
vagrand
24.01.2015 - 16:40
killer8080Думаю это довольно легко проверить, отослав письма с баннером на свои ящики.
Владимир55Ну примерно вот так:
list($width, $height, $imageType) = getimagesize($path);
$imageTypes = array(
IMAGETYPE_GIF => 'image/gif',
IMAGETYPE_JPEG => 'image/jpeg',
IMAGETYPE_PNG => 'image/png',
IMAGETYPE_WBMP => 'image/vnd.wap.wbmp'
);
header('Content-Type: ' . $imageTypes[$imageType]);
readfile($path);
exit;
_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
Владимир55
24.01.2015 - 16:45
Я тоже в этом направлении экпериментировал, но вот этот параметр меня обеспокоил:
header('Content-Type: ' . $imageTypes[$imageType]);
header наверняка даст ошибку, поскольку возможен вывод раньше его.
Ведь так?
vagrand
24.01.2015 - 16:56
Владимир55
Цитата |
header наверняка даст ошибку, поскольку возможен вывод раньше его. |
Что значит возможен? Хидеры должны отправляться до "тела". Вот и отправляйте их до остального вывода.
_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
Владимир55
24.01.2015 - 17:02
Многие смотрят почту в браузерах и различных почтовых программах, поведение которых непредсказуемо. Поэтому от хидеров я сразу отказался.
vagrand
24.01.2015 - 17:12
А причем тут хидеры?
_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
sergeiss
24.01.2015 - 18:51
Цитата (Владимир55 @ 24.01.2015 - 17:02) |
Многие смотрят почту в браузерах и различных почтовых программах, поведение которых непредсказуемо. Поэтому от хидеров я сразу отказался. |
Хедеры, о которых говорит
vagrand, относятся к картинке, а не ко всей почте.
Тут речь идет о том, чтобы динамически формировать картинку. По адресу типа такого
http://yousite.ru/pic.php?23847298798, где набор цифр уникальный, а сам скрипт создает картинку. Тогда и кэшировать никто не будет, и изнутри скрипта, создающего картинку, можно получить инфу о том, кто запросил. И сохранить её.
_____________
*
Хэлп по PHP*
Описалово по JavaScript *
Хэлп и СУБД для PostgreSQL*
Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги. *
"накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
killer8080
24.01.2015 - 20:36
Цитата (vagrand @ 24.01.2015 - 15:40) |
killer8080 Думаю это довольно легко проверить, отослав письма с баннером на свои ящики. |
Проверял несколько лет назад, уже тогда все популярные почтовые сервисы подменяли пути к картинкам в html письмах. Сейчас специально посмотрел у себя в ящике, все письма с картинками тянут их из cache.mail.yandex.net. Так что этот метод может проканать только на корпоративной почте, где письма клиент получает в исходном, не фильтрованном виде.
Цитата (sergeiss @ 24.01.2015 - 17:51) |
Тут речь идет о том, чтобы динамически формировать картинку. По адресу типа такого http://yousite.ru/pic.php?23847298798, где набор цифр уникальный, а сам скрипт создает картинку. Тогда и кэшировать никто не будет, |
Мало вероятно, почтовикам пофиг какого вида урл картинок.
FatCat
24.01.2015 - 21:12
Цитата (killer8080 @ 24.01.2015 - 19:36) |
Сейчас специально посмотрел у себя в ящике, все письма с картинками тянут их из cache.mail.yandex.net. |
Но мы не знаем, тянет при поступлении письма или при просмотре.
Да и в любом случае, даже если при поступлении - это достоверная информация о моем ящике что ящик жив и принял письмо.
Всегда знал, что яндекс.почта дерьмо, но не думал, что настолько...
_____________
Бесплатному сыру в дырки не заглядывают...
Владимир55
24.01.2015 - 21:29
Цитата (killer8080 @ 24.01.2015 - 16:36) |
Проверял несколько лет назад, уже тогда все популярные почтовые сервисы подменяли пути к картинкам в html письмах. Сейчас специально посмотрел у себя в ящике, все письма с картинками тянут их из cache.mail.yandex.net.
|
Вот фрагмент кода баннера весьма популярной рассылки subscribe.ru
<a href="http://subs.link.subscribe.ru/subscribe/560747/430967/hscope.daily.virgo,1319/20150122143625">
<img src="http://image.subscribe.ru/advert/84/316743/img.png" wwidth=600 hheight=150 border=0></a>
Я получаю ее через почту Яндекса и через почту mail.ru. И вполне нормально проходит.
Цитата |
По адресу типа такого http://yousite.ru/pic.php?23847298798, где набор цифр уникальный, а сам скрипт создает картинку. Тогда и кэшировать никто не будет,
Мало вероятно, почтовикам пофиг какого вида урл картинок. |
В сети есть статья, в которой утверждается, что файлы такого типа почта не любит. В особенности Гугл - он их просто игнорирует.
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.