За последние 24 часа нас посетили 53888 программистов и 1713 роботов. Сейчас ищет 831 программист ...

Кодировка в функции mail

Тема в разделе "PHP для новичков", создана пользователем Golovastik, 18 ноя 2010.

  1. Golovastik

    Golovastik Активный пользователь

    С нами с:
    14 июл 2010
    Сообщения:
    193
    Симпатии:
    0
    При загрузке данного скрипта на платный хостинг, приходят письма в абракатабре, хоть и указал ютф8 ,что можно сделать?

    PHP:
    1.  
    2. <?php
    3. if(isset($_POST['name'])) $name = $_POST['name'];
    4. if(isset($_POST['email'])) $email = $_POST['email'];
    5. if(isset($_POST['text_otpravka'])) $text_otpravka = $_POST['text_otpravka'];
    6.  
    7. $res = mail("name@mail.ru","Отправка с сайта","Имя автора письма:
    8. $name \n Эл.почта посетителя: $email \n
    9. Текст письма посетителя: \n $text_otpravka","Content-type:text/plain; charset = utf8");
    10.  
    11. if($res==true) {echo 'Ваше сообщение успешно отправлено!';}
    12.  
    13. ?>
    14.  
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    сохрани пару писем из почтовика и посмотри что у них внутре. там будут приписки, которые описывают применяемые кодировки
     
  3. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    PHP:
    1. <?php
    2. function mail_utf8($to, $subject = '(Без темы)', $message = '', $header = '')
    3. {
    4.     $header_ = 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=UTF-8' . "\r\n";
    5.  
    6.     if (!mail($to, '=?UTF-8?B?'.base64_encode($subject).'?=', $message, $header_ . $header)) return false;
    7.    
    8.     return true;
    9. }