За последние 24 часа нас посетили 17606 программистов и 1668 роботов. Сейчас ищет 1601 программист ...

Парадокс с кодировкой

Тема в разделе "PHP для новичков", создана пользователем Ter, 26 янв 2012.

  1. Ter

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

    С нами с:
    5 июн 2011
    Сообщения:
    67
    Симпатии:
    0
    Здравствуйте, у меня проблемы с кодировкой чата... Он состоит из файла-вставки и самой странички с формой и инклудом. На главной чата я вставляю код:

    Код (Text):
    1. <script type='text/javascript' src='http://ajax.googleapis.com/ajax/
    2. libs/jquery/1.3.0/jquery.min.js'></script>
    3. <script type='text/javascript'>
    4. var auto_refresh = setInterval(
    5. function ()
    6. {
    7. $('#load_chat').load('chat-include.php').fadeIn('slow');
    8. }, 5000);
    9. </script>
    И с момощью <div id='load_chat'></div> чат грузится со страницы chat-include.php Там такой код:

    Код (Text):
    1. <?php
    2. echo "<meta http-equiv='Content-Type' content='text/html; charset=windows-1251'>";
    3. $letters="messages.dat";
    4. $data=@file($letters);
    5. $data=@array_reverse($data);
    6. $ncol=count($data);
    7. if (file_exists($letters)) {
    8. for ($i=0; $i<$ncol; $i++){
    9. list($login,$message,$time)=split(":::","$data[$i]");
    10. echo "<table width='100%' class='message'>
    11. <tr><td><b>$login</b></td><td width='50'>$time</td></tr>
    12. <tr><td colspan='2'>$message</td></tr></table>";}}
    13. else {echo "<center><font color='white'>Сообщений нет</font></center>";}
    14. ?>
    Проблема в том, что выходит что-то странное... Если убрать в коде выше <meta http-equiv='Content-Type' content='text/html; charset=windows-1251'>, то все браузеры отображают чат хорошо, кроме Хрома, а если оставить, то наоборот, у Хрома всё окей, а в остальных какие - то квадратики... Помогите разобраться, пожалуйста;) http://lifesims.ru/myportfoliosites/thesimstowns/chat.php
     
  2. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    а если убрать ее совсем? Я, если честно, не большой специалист в передаче заголовков браузеру, но чтоб их "отдавали" через echo я первый раз вижу....

    Добавлено спустя 6 минут 6 секунд:
    неее, брат, в <head> эту строчку надо оставить, скриптом ее отдавать смысла нет...
     
  3. Ter

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

    С нами с:
    5 июн 2011
    Сообщения:
    67
    Симпатии:
    0
    убрал, тогда вообще ничто не работает...
     
  4. Dmitriy A. Arteshuk

    Dmitriy A. Arteshuk Активный пользователь

    С нами с:
    19 янв 2012
    Сообщения:
    2.445
    Симпатии:
    66
    Адрес:
    Зеленоград
    и заметь, то твоя паганая реклама, за которую ты и пачку сигарет в день не заработаешь, в кодировке utf-8 и она при любом раскладе отображается нормально....

    Добавлено спустя 52 секунды:
    ты ее из <head> убрал, а там она как раз нужна....

    Добавлено спустя 10 минут 9 секунд:
    <meta http-equiv='Content-Type' content='charset=windows-1251'>

    а так вообще никогда не будет работать ))
     
  5. Ter

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

    С нами с:
    5 июн 2011
    Сообщения:
    67
    Симпатии:
    0
    я не про рекламу да и не курю, а вот кодировка и с кириллицей не помогает, всё там вставлено

    Добавлено спустя 3 минуты 44 секунды:
    сделал с помощью .htaccess
     
  6. asokol

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

    С нами с:
    17 янв 2012
    Сообщения:
    162
    Симпатии:
    0
    Код (Text):
    1. <script type="text/javascript" charset="windows-1251">
    Вместо meta http-equiv:
    Код (Text):
    1. header("Content-Type: text/html; charset=windows-1251");