Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Сбивается кодировка при перезагрузке  (Прочитано 14757 раз)
0 Пользователей и 1 Гость смотрят эту тему.
kirf
Гость
« : 28-08-2009 13:51 » 

Уважаемые господа.
Я не программер, мне надо было быстро поставить гостевую, я нашел скрипт и поставил. Все работает замечательно - пока нет русского языка. Но мне нужен русский. Сменил тексты внутри файлов на русский, имею: при каждой перезагрузке страницы случайным образом выдается то русский язык, то  вопросительные знаки.

Страница генерируется из трех частей: заголовок. управление, содержание. С содержанием все в порядке, то есть с тем, что пишут посетители в гостевую. А вот заголовок и меню то нормально, то вопросы. причем вперемешку.

База данных не применяется совсем. Все находится в файлах.

Сделано: сразу, конечно, выставлена в настройках кодировка ($encoding = "UTF-8"Ага. Потом все файлы сохранены в формате UTF-8 (в блокноте открыл и "сохранил как"). Потом, офигев, бросил в папку .htaccess со строчкой AddDefaultCharset UTF-8.

Больше у меня уже просто нет фантазии.

Не поскажете, что может помочь?
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 28-08-2009 14:04 » 

а что в метатегах?
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 28-08-2009 14:06 » 

давай по частям или покажи где проблемы.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
kirf
Гость
« Ответ #3 : 28-08-2009 14:43 » 

Метатег самый обычный вроде: <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

Сам скрипт был взят отсюда: _http://allajax.ru/script/ajax-skript-gostevoj-knigi/ Пример не хочется показывать в открытую, но в личку без проблем.
Записан
kirf
Гость
« Ответ #4 : 28-08-2009 15:01 » 

Два блока слов. которые то русские слова, то вопросительные знаки, это два набора переменных, прописанных в двух разных файлах. то есть получается, что вставляя значения переменных в страницу, сервер то понимает, что это русский утф-8, то не понимает вообще, что там за знаки...

Уже просто интересно, как такое может быть в принципе.
Записан
kirf
Гость
« Ответ #5 : 28-08-2009 15:12 » 

Я понял, в каком направлении думать. Видимо, все дело в том. что сохранение в другой кодировке самого файла у меня происходит как-то не так. Так же какие-то типа метки должны быть. Потому что я нашел на странице самого скрипта языковой файл, он сразу в утф-8 был, закачал его и у меня второй блок тоже отображается правильно. Только слово гостевая, то есть содержание первого блока сейчас прыгает.
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 28-08-2009 15:12 » 

сообщения скрипт получает и декодирует в utf8
ты сказал что-то про блокнот.

ты уверен что заголовок ты сохранил в utf8?

качни notepad++ и пользуйся им.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
kirf
Гость
« Ответ #7 : 28-08-2009 15:29 » 

Да, наверное.. пойду искать notepad+.

Тут еще такое... В оригинальном языковом файле были корявые слова типа "подписат ьгостевую книгу". Я исправил их на литературный типа "Написать". сохранил в том же утф8 и... опять то так. то этак.

Значит, проблема на моем компе. Хорошо, если Notepad+ поможет, спасибо за наводку.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #8 : 28-08-2009 15:32 » 

kirf, только ищи notepad++ , а не с одним плюсом Улыбаюсь
Записан

kirf
Гость
« Ответ #9 : 28-08-2009 16:01 » new

Да. ребят, спасибо. Нашел-то сразу, с двумя плюсами:) Но не помогло. Буквально никак. Рискнул править прямо на сервере. Теперь стали не просто вопросительные знаки, а они же в черных ромбиках. Зато стабильно:)( То есть раньше хоть через раз читать можно, сейчас никак вообще. Забавно. Сайты делал последний раз год назад, были проблемы с кодировками, но такого не попадалось. Крыша уже гудит:)

Почему-то мысль, что надо вообще на другом компе править. Комп же сам тоже на какой-то руской кодировке работает. Может, мысль идиотская. но умные кончились днем.
Записан
kirf
Гость
« Ответ #10 : 28-08-2009 16:12 » 

Все. Победил.

В общем-то, не подскажи вы мне про ноутпэд++. не справился бы, видимо. Уж тоно. сегодня бы не справился.

Оказывается, надо было не в UTF-8 преобразовывать, а в UTF-8 без BOM. Я даже и не знаю, чо это. Догадываюсь, что что-то с бинарностью.

Просто попробовал. потому что уже не знал, куда тыкнуться.

Финиш. Сегодняшний день я запомню навсегда. Это ж надо, день убить на кодировку.

А ваш сайт в закладки положу, потому что если мне помогают, пока не отвечу тем же, буду чувствовать себя должником:)

Всем хороших выходных и удачи в добрых начинаниях!
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #11 : 28-08-2009 18:32 » 

BOM в исходниках PHP большие подлянки подкладывает: в редакторе его не видно, но вывод в браузер это инициирует и установить заголовки уже не удается. Кстати, если бы был включен вывод сообщений об ошибках и предупреждениях, то это быстрее обнаружилось бы.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines