Для сценария рассылки я хотел бы использовать изображение, чтобы проверить, прочитано оно или нет. Таким образом, мы сделали образ, как это в нашем скрипте:Echo image trough PHP
<img src="[url]/getEmailImage/test/">
Когда этот URL активизирован, он регистрирует, что открыта почта.
На стороне сервера мы используем этот meganism:
// register that the email is read
$this->modelOpslag->changeByToken($token,array('gelezen' => '1'));
// download image and show is
$image = base_url().'external/afbeeldingen/pixel.jpg';
$info = getimagesize($image);
header('Content-Type: '.$info['mime']);
echo file_get_contents($image);
exit;
Когда я удалить заголовок функции РНР показывает что-то вроде этого:
����JFIF``��rExifMM*JR(1Z``paint.net 4.0.5��
и т.д ...
С заголовок моего браузера дает ошибку: изображение невозможно отобразить, потому что содержит ошибки.
Что я сделал неправильно?
- EDIT -
я не ве получил ни одного решения этой конкретной проблемы, но я нашел альтернативу в случае, если кто хотел бы использовать эту meganism за рассылку ведьмой работы:
$file = './external/afbeeldingen/pixel.jpg';
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
Спасибо за ваш ответ, но электронная почта построена в формате HTML. Поэтому мы не можем использовать PHP в нем. При нажатии на загрузку изображений в почтовом клиенте запрашивается URL-адрес, и мы регистрируем, что письмо читается. Это прекрасно работает, но на месте этого письма он дает изображение, которое не найдено. – JelleP