Mr_Lagmis
@Mr_Lagmis
Junior web developer =)

Неправильно отображается HTML+PHP письмо.?

Вообщем вот код отправки самого письма:
// Сообщение
			$message = '
            <div style="width: 100%; padding: 6px;">
            <h1 style="background-color: #333;height: 110px;color: white;font-weight: 700;text-align: center;font-size: 50px;"><br /><br />Новый покупатель на</h1>
            <div style="background-color: white;">
             <?php
        do {
             $tovar_id = array_reverse(array_keys($_COOKIE))[0];
             $query_coils1 = "SELECT * FROM `coils` WHERE `id` = ".$tovar_id." ";
             $result_coils1 = mysqli_query($con, $query_coils1) or die(mysqli_error());
             $row_coils1 = mysqli_fetch_array($result_coils1);
               $tovar_col = array_pop($_COOKIE);
             $tovar_id = array_reverse(array_keys($_COOKIE))[0];
             $query_coils2 = "SELECT * FROM `coils` WHERE `id` = ".$tovar_id." ";
             $result_coils2 = mysqli_query($con, $query_coils2) or die(mysqli_error());
             $row_coils2 = mysqli_fetch_array($result_coils2);
            $img = $row_coils1["img"];
            $name = $row_coils1["name"];
            $price = $row_coils1["price"];
            $all_tovar_col += $tovar_col;
            $all_tovar_price += $price;
            $id_coil = $row_coils1["id"];
            echo "
            <style type="text/css">
            .tovar_3 {
                width: 100%;
                border: 1px solid #7e7cff;
                opacity: 0.97;
                display: inline-block;
                padding: 4px;
                background: radial-gradient(farthest-corner at 0 0, #ffffff, #ffffff, #ffffff, #e8e8e8);
            }
            .tovar_3:hover {
                border: 1px solid #6765ff;
                opacity: 1;
                background: #FFFFFF;
            }
            </style>

            <div class="tovar_3">

            <a href="/tovar.php?tovar_category=coil&tovar_id='.$id_coil.'"><div style="max-width: 50px;display: inline-block;"><img src="/img/tovars/coils/'.$img.'" alt="img" title="'.$name.'" style="max-width: 40px;" /></div></a>

            <a href="/tovar.php?tovar_category=coil&tovar_id='.$id_coil.'"><div style="display: inline-block;font-weight: 700;width: 200px;" title="'.$name.'">'.$name.'</div></a>

            <div style="display:inline-block;">Количество: <span style="font-weight: 600; color: #3d7aaf;">'.$tovar_col.'</div>

            <div style="display: inline-block; margin-left: 5px; padding-left: 5px; border-left: 1px solid #848484;">Цена: <span style="font-weight: 600; color: #d81515;">'.$price.' RUB</span></div>

            </div>
        ";
        }while(mysqli_num_rows($result_coils2) >= 1);
        ?>
            </div>
            ';

			// Для отправки HTML-письма
			$headers  = 'MIME-Version: 1.0' . "\r\n";
			$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";

  			mail("support@----.ru", "Новый покупатель!", $message, $headers);

А вот результат:
5a3e7bb96a5ba465247844.jpeg
Некоторое я убрал специально (к примеру название сайта). Я знаю, код явно плохой, прошу не говорить об этом, я знаю. Я это делал для начала, ну только начал и тут ошибка. И я вроде-бы понял в чём ошибка, в вставлении PHP в HTML, но КАК это всё сделать красиво, шоб работало, я не догоняю... Помогите, пожалуйста, отчаянному...
  • Вопрос задан
  • 76 просмотров
Пригласить эксперта
Ответы на вопрос 1
nefone
@nefone
PHP-разработчик
Переменные в PHP надо вставлять в двойные кавычки, что бы подставлялось их значение.
Потом следует узнать, как обрабатывают HTML почтовые клиенты и сделать его валидным.
А тут лежит код отправки письма с сайта, можешь ознакомиться.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Sveak Барнаул
от 50 000 руб.
R52.RU Нижний Новгород
от 30 000 до 50 000 руб.
22 окт. 2019, в 08:58
15000 руб./за проект
22 окт. 2019, в 08:56
500 руб./в час
22 окт. 2019, в 08:46
150000 руб./за проект