Резултати от 1 до 5 от общо 5

Проблем с PHP webmail на кирилица?

Сподели във Facebook Сподели в Twitter Изпрати на Email Сподели в LinkedIn
  1. Cko
    Cko е офлайн
    Senior Member
    Тук е от
    Aug 2001
    Мнения
    3,566
    #1

    Проблем с PHP webmail на кирилица?

    Имам една уеб форма и PHP скрипт, който изпраща информацията от формата на даден мейл адрес. Проблемът е, че получателя има достъп до пощата си само през MS Outlook и вижда грешни символи (ако се пренасочи към поща в абв.бг всичко се вижда нормално) Може би ако има начин да задам изключително кодирането да бъде windows-1251 нещата ще се оправят
    Ето скрипта, за да видите ако нещо съм омазал там:

    Код:
    <?php
      if ($_SERVER['REQUEST_METHOD']=="POST"){
       if (strpos($_SERVER['HTTP_REFERER'], $_SERVER['HTTP_HOST'])>7 ||
         !strpos($_SERVER['HTTP_REFERER'], $_SERVER['HTTP_HOST']))
         die("Bad referer");
       $msg="Answers:\n";
       foreach($_POST as $key => $val){
         if (is_array($val)){
          $msg.="Item: $key\n";
          foreach($val as $v){
            $v = stripslashes($v);
            $msg.="  $v\n";
          }
         } else {
          $val = stripslashes($val);
          $msg.="$key: $val\n";
         }
       }
       $recipient="*****@***.bg";
       $subject="Questionnaire results";
       error_reporting(0);
       if (mail($recipient, $subject, $msg, $headers)){
         echo "<h1>Thank you</h1><p>Message successfully sent:</p>\n";
         echo nl2br($input);
       } else
         echo "An error occurred and the message could not be sent.";
      } else
       echo "Bad request method";
    ?>
    Благодарности,
    Ско

  2.  
     
  3. Member
    Тук е от
    May 2002
    Мнения
    808
    #2

    Re: Проблем с PHP webmail на кирилица?

    Ами може да стане по следния начин ... тъй като не видях къде на друго място си писал $headers, можеш да го направиш по следния начин ...
    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=windows-1251' . "\r\n";
    и от там нататък е ясно
    и аз имах такъв проблем ... много е достадно наистина. Ако не свърши работа, кажи ще ти пратя направо формата написана на мейла.

  4. Cko
    Cko е офлайн
    Senior Member
    Тук е от
    Aug 2001
    Мнения
    3,566
    #3

    Re: Проблем с PHP webmail на кирилица?

    Не се получи и така за съжаление. Струва ми се, че Outlook не може да декодира html, защото хедърите, които му пратихме се появяват в началото на писмото. Ето как изглежда мейла с кода на Creator:
    Код:
    Content-type: text/html; charset=windows-1251 X-Spam-Checker-Version: SpamAssassin 3.0.4 (2005-06-05) on dragon.webnick.net
    X-Spam-Level: *
    X-Spam-Status: No, score=1.7 required=5.0 tests=HTML_10_20,HTML_MESSAGE,
    	HTML_MIME_NO_HTML_TAG,MIME_HTML_ONLY,MISSING_DATE,NO_REAL_NAME 
    	autolearn=no version=3.0.4
    
    
    Values submitted by the user:
    хЛЕ: ХЛБЙЕЛПКЙБ<br>йНЛОЮМХЪ: ЙНЛОЮМХЪ<br>юДПЕЯ: ЯДИТЯКЙДТ 123123<br>цПЮД: ЯНТХЪ<br>рЕКЕТНМ: 123321<br>лНАХКЕМ: 123123<br>тЮЙЯ: 321321<br>еК_ОНЫЮ: mail@mail.bg<br>йЗДЕ_ЫЕ_АЗДЕ_ПЮГОНКНФЕМ_БЮЬХЪ_ЯЮКНМ: яНТХЪ<br>лЕЯЕЖ_МЮ_НРБЮПЪМЕ: чКХ<br>цНДХМЮ_МЮ_НРБЮПЪМЕ: 2006<br>
    ... и без хедърите:
    Код:
    Values submitted by the user:
    хЛЕ: ХЛЕ ХЛЕ
    йНЛОЮМХЪ: ЙНЛОЮМХИЙЮ
    юДПЕЯ: ЮЯТЯДТ 2 342
    цПЮД: ЯНТХЪ
    рЕКЕТНМ: 123123
    лНАХКЕМ: 0872134234
    тЮЙЯ: 02234234
    еК_ОНЫЮ: email@kjkjk.com
    йЗДЕ_ЫЕ_АЗДЕ_ПЮГОНКНФЕМ_БЮЬХЪ_ЯЮКНМ: ЯНТХЪ
    лЕЯЕЖ_МЮ_НРБЮПЪМЕ: юОПХК
    цНДХМЮ_МЮ_НРБЮПЪМЕ: 2008
    Прави ми впечатление, че таговете <br> се визуализират, вместо да се изпълняват. Да не би някаква настройка на Outlook да не е нацъкана??

  5. Moderator
    Тук е от
    Mar 2005
    Мнения
    7,193
    #4

    Re: Проблем с PHP webmail на кирилица?

    Не знам дали ще помогне. Това го намерих в хелпа на Outlook 2003
    ---------
    Turn off automatic message encoding* *
    If you are using Microsoft Internet Explorer 5.5 or later, Microsoft Outlook automatically evaluates the text in a message and selects the encoding (character sets) used to display all characters in the message.

    1. On the Tools menu, click Options.
    2. Click the Mail Format tab, and then click International Options.
    3. Under Encoding Options, clear the Auto-Select encoding for outgoing messages check box.
    Note* To turn on automatic message encoding, select the Auto-Select encoding for outgoing messages check box.
    ----------
    и евентуално да се види какви са текущите настройки за encoding на IE - IE/View/Encoding (въпреки, че самия IE може и да не се ползва на този компютър)

  6. Cko
    Cko е офлайн
    Senior Member
    Тук е от
    Aug 2001
    Мнения
    3,566
    #5

    Re: Проблем с PHP webmail на кирилица?

    Проработи най-сетне... явно тайната наистина е била в хедърите. Ето необходимите редове, в случай че на някой му потрябват:
    Код:
    $headers .= "MIME-Version: 1.0\n";
    $headers .= "Content-type: text/html;charset=windows-1251\n";
    Благодарности отново за помощта и на двама ви

Сподели във Facebook Сподели в Google Plus Сподели в Twitter Изпрати на Email Сподели в LinkedIn

Подобни теми

  1. Проблем с кирилица в *.pdf - РЕШЕН
    От Bibi във форум Общ - софтуер
    Отговори: 2
    Последно: 19-11-06, 17:48
  2. Проблем с MySQL и кирилица
    От DEYDOD във форум Уебдизайн и 3D
    Отговори: 7
    Последно: 25-04-06, 17:10
  3. Проблем с кирилица
    От Sunny във форум Windows
    Отговори: 8
    Последно: 02-10-04, 14:30
  4. проблем с кирилица
    От dimi във форум Общ - софтуер
    Отговори: 9
    Последно: 21-04-04, 01:20
  5. проблем с кирилица
    От dimi във форум Windows
    Отговори: 16
    Последно: 05-09-03, 19:51

SetCombG.com
SetCombG.com е портален сайт и Форум за битова техника, телевизори, климатици, лаптопи и смартфони, създаден през 1999 година.
Заедно сме над 20 години!
Следвай ни
Горе