вопрос по кодировке формы обратной связи

Тема в разделе "PHP", создана пользователем zhito, 28 авг 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. zhito

    zhito

    Регистр.:
    23 авг 2007
    Сообщения:
    165
    Симпатии:
    22
    есть небольшая форма обратной связи
    вот собсно код:
    PHP:
    $subj "{$_POST['subject']}"
    $body "Тема - {$_POST['subject']} \r\n Имя - {$_POST['mail']} \r\n E-mail - {$_POST['mail']} \r\n\r\n";
    $body .= "{$_POST['message']}";
    $headers  'MIME-Version: 1.0' "\r\n";
    $headers .= 'Content-type: text/html; charset=UTF-8' "\r\n";
    mail($mymail,$subj,$body,$header); 
    подскажите как сделать чтоб вне зависимости от настроек сервера/хостинга сообщение приходило в UTF-8 ?
     
  2. Nafania

    Nafania

    Регистр.:
    24 мар 2007
    Сообщения:
    167
    Симпатии:
    46
  3. zhito

    zhito

    Регистр.:
    23 авг 2007
    Сообщения:
    165
    Симпатии:
    22
    а без иконва никак? :)
    сомневаюсь что там иконв подключен
     
  4. ip027

    ip027 Создатель

    Регистр.:
    19 фев 2007
    Сообщения:
    22
    Симпатии:
    7
    попробуй это:
    PHP:
    function UTF8_mail(
    $from,$to,$subject,$message,$cc="",$bcc=""){

    $from explode("<",$from );

    $headers "From: =?UTF-8?B?".base64_encode($from[0])."?= <"$from[1] . "\r\n";

    $to explode("<",$to );
    $to "=?UTF-8?B?".base64_encode($to[0])."?= <"$to[1] ;

    $subject="=?UTF-8?B?".base64_encode($subject)."?=\n";
    $message="=?UTF-8?B?".base64_encode($message)."?=\n";
    if(
    $cc!=""){
        
    $cc explode("<",$cc );
        
    $headers .= "Cc: =?UTF-8?B?".base64_encode($cc[0])."?= <"$cc[1] . "\r\n";
    }

    if(
    $bcc!=""){
    $bcc explode("<",$bcc );
    $headers .= "Bcc: =?UTF-8?B?".base64_encode($bcc[0])."?= <"$bcc[1] . "\r\n";
    }

    $headers .=
    "Content-Type: text/plain; "
    "charset=UTF-8; format=flowed\n"
    "MIME-Version: 1.0\n"
    "Content-Transfer-Encoding: 8bit\n"
    "X-Mailer: PHP\n";

    return 
    mail($to$subject$message$headers);
    //echo $to."<br>".$subject."<br>".$message."<br>".$headers;

    }

    UTF8_mail(
    "кому <my@email.com>",
    "First Last <your@email.com>",
    "заголовок Subject",
    "тело письма Text",
    "",
    "<hidden_friend@email.com>"
    );
     
  5. nvartolomei

    nvartolomei Писатель

    Регистр.:
    16 авг 2008
    Сообщения:
    5
    Симпатии:
    0
Статус темы:
Закрыта.