Почему у меня письмо в таком формате приходит? Название на русском, а вот содержимое не читает корректно.
Кодировка html-шаблона письма. Кодировка самого письма Нерпвильные заголовки (headers) Варианты могут быть разные. Картинка тут не поможет.
А потом проверь, как работает оно с гуглопочтой. Если почтовый сервер православно не настроен, гугл просто будет без суда и следствия заворачивать письма в бездну. И придется прикручивать всякие DKIM-ы и прочие радости жизни.
PHP: $headers = "Content-type: text/html; charset='utf8' \r\n"; $headers .= "From: Vixed.Ru <no-reply@vixed.ru>\r\n"; $headers .= "Reply-To: no-reply@vixed.ru\r\n"; Вот так настроено. --- Добавлено --- Кодировка HTML-шаблона и письма utf-8.
Воу, так ты еще и сам шлешь руками? Попробуй phpMailer или Swift и забудь о проблемах с почтой. Прост почта это вот настолько расхожий кейс, что тут просто грешно не пользоваться готовыми решениями.
Да, но если мне не нужен STMP сервер... Просто я не хочу использовать сервис Google или Yandex, иль им подобны, так как имеют ограничения по отправки писем в день.
Проверьте кодировку php-скрипта. К тому же в начало скрипта можно вставить mb_internal_encoding("UTF-8"); Ну и в заголовки я бы еще добавил PHP: $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= "Content-type: ...
Я вот не понял, как хоть что-то здесь оправдывает отсутствие использования phpMailer и подобных. Вы думаете, что у них под капотом не те же функции, какие вы дергаете? Или вы думаете, что вы письмо тестовое отослали прямо из PHP, а не через тот же postfix, который у вас худо бедно отрабатывает на дефолтных настройках ? phpmailer это не про "откуда отправлять письма", а "как отправлять". В данном случае - без головной боли. Вы просто туда внутрь загляните и увидите, какой путь вам нужно будет самостоятельно проделать, чтобы у вас ушли все проблемы.
@Fell-x27, не хочу снова разводить холивар, но иногда и правда ни к чему разворачивать мощную систему, если требуется отправлять однотипные сообщения. Для примера, недавно редактировал один сайт. Там все странички были на html. И один файл скрипта для заказа звонка с сайта: PHP: <?php session_start(); if (isset($_POST['name'])) {$name = $_POST['name'];} if (isset($_POST['tel'])) {$tel = $_POST['tel'];} $to = "bla-bla-bla@mail.ru"; $headers = "Content-type: text/plain; charset = windows-1251"; $subject = "Заказ звонка с сайта"; $message = "Здравствуйте, перезвоните мне \nИмя: $name \nТелефон: $tel"; $send = mail ($to, $subject, $message, $headers); if ($send == 'true') { reset($name = "Ваше имя"); echo "<p style='text-align:center'><font size=5 color=#000099><b>Спасибо за отправку Вашего сообщения!</b></p>"; echo "<p style=text-align:center><a href=# onclick=window.close()><img src=images/knopka_mail.png></a></p>"; } ?> Не знаю зачем понадобилась сессия. Тут даже нет проверки корректного ввода номера телефона. При этом все работало, никакого спама. Только один раз пришло письмо с пустым номером телефона. Им тоже надо было разворачивать phpmailer?
@romach, я об этом: Половину, конечно, можно выкинуть, но все равно много, по сравнению с одним скриптом.
Хорошо, я согласен, разобрался с ним, вроде легко... Но, я использовал лишь их примеры по отправке и тут-то появилась проблема: --- Добавлено --- Это понятно и легко... Одна команда, один autoload и все.
Там мощщщщная система представляет собой один-единственный хорошо отлаженный отполированный класс, в общем-то. Это же не какой-то свой самописный вебсервер на пэхапе. Это вот все - не более чем необязательные дополнение, а то и вовсе служебные файлы репы, всякие метаданные и...тестовые сэмплы. Ты ведь даже не прочитал доку, прежде чем скинуть этот список, да? --- Добавлено --- Читай документацию Там тоже есть параметры. Там тоже нужно указать кодировку. Мэйлер берет на себя много головняка, но как его брать - надо подсказать. --- Добавлено --- Я больше скажу - если даже композер не присутствует в проекте изначально, он к нему сбоку прикручивается в 5 минут. Ды деж хрен с ним с композером. Можно руками класс мэйлеровый в проект вставить и пользоваться на здоровье, проблем никаких же.
А где она? --- Добавлено --- Я сделал так: $this->mail->CharSet='utf8'; $this->mail->Encoding='base64'; Все работает, кроме обработки стилей и текст в таком формате: "фриланс площадка"
Конечно Я только глянул пример и понял, что вся эта "полировка" летит к чертям, если не указать дюжину параметров.
@romach, я это понимаю. Но так уж мне не повезло, что в первом же примере, в качестве параметра нужно было вводить свой пароль от почты.
Короче, демагогия. ок --- Добавлено --- Демагогия, кстати, не в том смысле, что вопрос неоднозначен и правильного решения нет. Просто когда возможность использовать sendmail / mail / smtp и т.п. называют кучей параметров - логика бессильна )