Вопрос про base64_encode

Discussion in 'PHP' started by RRR_RRR, 12 Sep 2013.

  1. RRR_RRR

    RRR_RRR Member

    Joined:
    20 Jun 2012
    Messages:
    396
    Likes Received:
    35
    Reputations:
    0
    Есть php mail скрипт
    Вопрос такой
    Что нужно добавить чтоб письмо отправлялась в base64
    И при просмотре исходника письма видно было только base64 код. Но письмо отображалось как обычное письмо
    Я сделал вот так


    $data='ТЕСТ';
    $data = stripslashes($data);
    $eol="\nMIME-Version: 1.0\nContent-Type: text/html; Content-Transfer-Encoding:base64; charset=win-1251 \n";
    $headers = 'From:me <[email protected]>'.$eol;
    $headers .= 'Reply-To:me <[email protected]>'.$eol;
    mail($to, $subject, base64_encode($data), $headers);


    Проблема в том что почтовый сервер показывает только кодированный код. Т.е письмо не отображается
    Что нужно добавить в заголовок чтоб при просмотре сервер сам декодировал и показывал письмо пользователю но чтоб сам исходник был кодированным в base64
     
    #1 RRR_RRR, 12 Sep 2013
    Last edited: 13 Sep 2013
  2. Sleep

    Sleep Elder - Старейшина

    Joined:
    31 Oct 2007
    Messages:
    274
    Likes Received:
    65
    Reputations:
    4
    http://bitprison.net/php_mail_utf-8_subject_and_message
    http://www.php.net/manual/ru/function.mail.php#111124
    оно ?
     
  3. systemiv

    systemiv New Member

    Joined:
    2 Jan 2012
    Messages:
    14
    Likes Received:
    0
    Reputations:
    0
    Добавь JS с внешнего сервера, который будет декодировать текст. Стандартных средств для этого нету. Но есть готовые решения
     
  4. RRR_RRR

    RRR_RRR Member

    Joined:
    20 Jun 2012
    Messages:
    396
    Likes Received:
    35
    Reputations:
    0
    JS невозможно добавлять , почтовый сервер же блокирует
     
  5. RRR_RRR

    RRR_RRR Member

    Joined:
    20 Jun 2012
    Messages:
    396
    Likes Received:
    35
    Reputations:
    0
    не то
     
  6. atheus.deus

    atheus.deus New Member

    Joined:
    17 Jan 2013
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    http://www.webdeveloper.com/forum/showthread.php?185299-Sending-a-HTML-email-in-base64-HELP
     
  7. RRR_RRR

    RRR_RRR Member

    Joined:
    20 Jun 2012
    Messages:
    396
    Likes Received:
    35
    Reputations:
    0
    сделал как там написано
    письмо не декодируется при прочтение и показывать base64 шифровку
     
  8. funny_kaplan

    funny_kaplan New Member

    Joined:
    28 Mar 2013
    Messages:
    43
    Likes Received:
    4
    Reputations:
    0
    У тебя:
    $eol="\nMIME-Version: 1.0\nContent-Type: text/html; Content-Transfer-Encoding:base64; charset=win-1251 \n";
    а надо:
    $headers="\nMIME-Version: 1.0\nContent-Type: text/html; Content-Transfer-Encoding:base64; charset=win-1251 \n";
     
  9. RRR_RRR

    RRR_RRR Member

    Joined:
    20 Jun 2012
    Messages:
    396
    Likes Received:
    35
    Reputations:
    0
    это я для примера написал кусочек скрипта
    посмотри мой первый пост, я исправил скрипт и теперь он полный
    та же ошибка
     
  10. funny_kaplan

    funny_kaplan New Member

    Joined:
    28 Mar 2013
    Messages:
    43
    Likes Received:
    4
    Reputations:
    0
    Рабочий пример:
    PHP:
    $text "this text with html <img>";
    $subject "tema";
    $from "trololo <[email protected]>\r\n";
    $headers  "From:$from\r\n";
    $headers .= "Reply-To:$from\r\n";
    $headers .= "Content-type: text/html; charset=UTF-8\r\n";
    $headers .= "Content-transfer-encoding: base64\r\n";
    mail($to,$subject,base64_encode($text),$headers);
    Если вдруг снова, что-то не то, напиши заголовки письма, которое приходит на почту.)
     
    #10 funny_kaplan, 13 Sep 2013
    Last edited: 13 Sep 2013
  11. RRR_RRR

    RRR_RRR Member

    Joined:
    20 Jun 2012
    Messages:
    396
    Likes Received:
    35
    Reputations:
    0
    я бы с радостью , но теперь вообще письмо не приходит )
     
  12. funny_kaplan

    funny_kaplan New Member

    Joined:
    28 Mar 2013
    Messages:
    43
    Likes Received:
    4
    Reputations:
    0
    Потому что не прописано значение переменной $to
     
  13. RRR_RRR

    RRR_RRR Member

    Joined:
    20 Jun 2012
    Messages:
    396
    Likes Received:
    35
    Reputations:
    0