Проблема с кодировкой "от кого" mail() на почте

murderer

Постоялец
Регистрация
1 Июл 2009
Сообщения
59
Реакции
17
Тема очень избитая, но так и не понял как её решить, перелопатил по поисковикам много вариантов, но как приходили иероглифы "от кого" так и приходят.

Само письмо полностью на русском приходит

Код:
$header   = "From: \"Русский текст\" <support@site.pro>\r\n";
$header .= "Content-type: text/html; charset=\"utf-8\"";
 
А файл в котором содержится представленный код в какой кодировке сохранен?
 
в той же самой естественно
 
А если попробовать вот такой вариант формы и отправителя русские буковки вписать.

Код:
<?php
$action=$_REQUEST['action'];
if ($action=="")    /* display the contact form */
    {
    ?>
    <form  action="" method="POST" enctype="multipart/form-data">
    <input type="hidden" name="action" value="submit">
    Your name:<br>
    <input name="name" type="text" value="" size="30"/><br>
    Your email:<br>
    <input name="email" type="text" value="" size="30"/><br>
    Your message:<br>
    <textarea name="message" rows="7" cols="30"></textarea><br>
    <input type="submit" value="Send email"/>
    </form>
    <?php
    } 
else                /* send the submitted data */
    {
    $name=$_REQUEST['name'];
    $email=$_REQUEST['email'];
    $message=$_REQUEST['message'];
    if (($name=="")||($email=="")||($message==""))
        {
        echo "All fields are required, please fill <a href=\"\">the form</a> again.";
        }
    else{         
        $from="From: $name<$email>\r\nReturn-path: $email";
        $subject="Message sent using your contact form";
        mail("youremail@yoursite.com", $subject, $message, $from);
        echo "Email sent!";
        }
    }   
?>

1. Пробовали выводить на экран/ записывать в файл-лог содержимое $header
2. Ну и собственно откуда отправляете письмо и прочее? Может проблема в самой форме, а не функции mail сервера.
 
sol_los
и? вычленить из этого то, что мне нужно моих знаний по php явно не хватит, если бы я нормально знал, логично было бы предположить, что я бы не задавал такие вопросы на форуме.

wiggly
1) вывод работает отлично, я же говорю, что остальная часть письма приходит в нормальном читаемом виде
2) сама форма и сам php код находятся в одном месте на index.php, в форму вбивается исключительно цифровое значение
 
2) сама форма и сам php код находятся в одном месте на index.php, в форму вбивается исключительно цифровое значение
ну если можете, то приложите файл где всё это хозяйство находится попробую на отдельном хостинге для тестиков развернуть... Посмотреть что там не так.
 
wiggly

Код:
<div class="form_box">
<form action="" method="post" class="rf">
<input type="tel" name="tel"maxlength="20">
<input type="submit" name="submit_tel" value="Отправить">
  </form>

<?if(isset($_POST["submit_tel"]))
{
$header   = "From: \"Русский текст\" <support@site.pro>\r\n";
$header .= "Content-type: text/html; charset=\"utf-8\"";
$email    = 'admin@site.ru';
/* Отправляем email */
mail($email, "Оставить телефон", "\n
Посетитель заказал обратный звонок! \n
Телефон : ".$_POST['tel']." ",$header);
echo '<div id="parent_popup"><div id="popup"><p>Спасибо! Мы Вам скоро перезвоним</p></div></div>';} ?>
</div>
 
Код:
$header   = 'From: =?utf-8?b?'.base64_encode('ТЕКСТ В КОТОРОМ ИЕРОГЛИФЫ').'?= <mail@mail.ru>' . "\r\n";

Вот так всё хорошо
 
Назад
Сверху