Показать сообщение отдельно
  #1 (permalink)  
Старый 15.08.2017, 21:16
Интересующийся
Отправить личное сообщение для Aleksandr Chirkov Посмотреть профиль Найти все сообщения от Aleksandr Chirkov
 
Регистрация: 24.06.2017
Сообщений: 14

Отправка HTML в письмах
Доброго времени суток. Есть проблемка, хотел бы попросить помощи у Гуру. Написал скриптик на PHP + HTML, чтоб при получении письма, в теле письма, формировалась mini-web страница.

У меня хостинг на timeweb. И это письмо уходит в 2 направления, на тот адрес который указывает пользователь и на стандартный, который я сам задал. Проблема в том, что на моём хостинге письмо смотрится хорошо. Но когда отсылаешь на rambler, mail или яндекс, письмо отказывается формироваться как страница и получается текст.

https://yadi.sk/i/bOSRDVMR3M3MbF - timeweb
https://yadi.sk/i/7dKn98f83M3McG - mail

часть скрипта которая отвечает за отправку html вот:

$text = '
	<head>
		<style type="text/css">
			a{text-decoration: none; color:white;}
			a:hover{color:red; text-shadow:1px 1px 2px black, 0 0 1em red;}
            @font-face{font-family: bernier; src: url(http://test104.ru/fonts/bernier.otf);}
			h1{text-align:center; font-family: bernier; color:white; letter-spacing:2px;}
			h2{padding:0px;color:white;font-family: bernier;}
			p {color:white;font-size:20px;font-family:bernier;}
			span{color:white;font-size:20px;font-family:bernier;}
            .forLetter{background-image:url(http://test104.ru/images/letter/back.png);width:800px;height:600px;}
			.text{width:53%;height:100%;}
			.centerPart{width:60%;height:25%;position:relative;left:20%;}
			.logo{width:40%;}
			.flamePic{position:relative;z-index:10;opacity:0.5;width:800px;height:100px;top:-80px;}
		</style>
	</head>
    <body>
		<div class="forLetter">
			<div class="text"> 
				<h1>ПРИВЕТ!</h1>
				<center><span>МЕСТО В BFB НА ' . $date . '</span><br>
				<span>ДЛЯ БАЙКЕРОВ ГАРАНТИРОВАННО!</span>
				<h2>Дальше:</h2></center>
					<div class="centerPart">
					<p>1. ЗАВОДИ МОТИК</p>
					<p>2. ТЕБЕ <a href="http://barforbikers.ru/location.html">СЮДА</a></p>
					<p>3. ВОТ ТЕБЕ <a href="http://barforbikers.ru/menu.html">ХЛЕБА</a></p>
					<p>4. ВОТ ТЕБЕ <a href="http://barforbikers.ru/events.html">ЗРЕЛИЩ</a></p>
					</div>
				<center><p>ПОЧУВСТВУЙ ВКУС СВОБОДЫ</p>
                <img src="cid:LogoWhite.png" class="logo">
				<p>P.S.:ВЫПИЛ? ЗА РУЛЬ НЕ САДИСЬ!<br> А ДЛЯ ВСЕГО ОСТАЛЬНОГО ЕСТЬ МОТОЭВАКУАТОР!</p></center>
			</div>
            <img src="cid:flame.png" alt="пожар" class="flamePic">
		</div>
	</body>
    ';


//Заголовки формы
//пока отправляю без From - потому что странное дело с From письмо не доходит
	$headers .= "subject: $subject\r\n"; 
	$headers .= "Date: " . date("r") . "\r\n";
	$headers .= "X-Mailer: zm php script\r\n";
	$headers .= "MIME-Version: 1.0\r\n";
	$headers .= "Content-Type: multipart/alternative;\r\n";
	$baseboundary = "------------" . strtoupper(md5(uniqid(rand(), 
        true)));
	$headers .= "  boundary=\"$baseboundary\"\r\n";


//Тело письма
	$message = "--$baseboundary\r\n";
	$message .= "Content-type: text/plain;\r\n";
	$message .= "Content-Transfer-Encoding: 7bit\r\n\r\n"; 
	$message .= "--$baseboundary\r\n";
	$newboundary = "------------" . strtoupper(md5(uniqid(rand(), true)));
	$message .= "Content-Type: multipart/related;\r\n";
	$message .= "  boundary=\"$newboundary\"\r\n\r\n\r\n";
	$message .= "--$newboundary\r\n";
	$message .= "Content-Type: text/html; charset=utf-8\r\n";
	$message .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
	$message .= $text . "\r\n\r\n";


Вот подскажите, куда разбираться? В каком направлении копнуть, может я MIME не совместимый использую или content type надо писать text/html?
Ответить с цитированием