Здрась, ребятушки.
Никак не ожидал, что после нескольких лет работы с хтмл столкнусь с такой проблемой:
жил-был некий сайт, работал себе, трудился, но после апгрейда CMS эксплорер категорически отказался его отображать, тогда как FF и Opera прекрасно его отображают.
А не отображает эксплорер только русскоязычные php-страницы, при этом с англоязычными и html-страницами — полный порядок. Беда в том, что страницы выглядят АБСОЛЮТНО пустыми: ни картинок, ни таблиц. При этом показ html-кода страницыа демонстрирует код полностью: все теги на месте, закрыты.
Фенька заключается в том, что после сохранения страницы на локальном диске и открытии ее эксплорером основа страницы (верстка, графика) показываются нормально, но слетают русские буквы.
Возможно, русские буквы слетают по причине некорректной обработки данных, возвращаемых из бд. Но почему-то кажется, что основная причина бойкота страниц эксплорером не в этом.
Почему же IE так себя может вести?
Здравствуйте, Xumpopena, Вы писали:
AR>>Здрась, мы радь видь адрес твоего сайта. AR>>Телепаты еще с новогодней пьянки не вернулись. X>http://chekhovfest.ru
Убери BOM со страниц, они у тебя в кодировке Windows-1251.
Здравствуйте, Xumpopena, Вы писали:
X>Здравствуйте, Alex Reyst, Вы писали:
AR>>Здрась, мы радь видь адрес твоего сайта. AR>>Телепаты еще с новогодней пьянки не вернулись.
X>http://chekhovfest.ru
У меня IE тупо виснет при загрузке (т.е. не виснет, но и не грузит, окошечки в правом верхнем углу трепыхаются). FF и Opera грузят сразу. А что у тебя там за мустор перед <!DOCTYPE > в исходнике страницы?
Да там и с английской версией не все хорошо (см. заголовки).
Диагноз: Указана кодировка Win1251, а в начале передается сигнатура Unicode (0xEFBB), которую IE игнорировать не умеет.
Т.е. шаблон страницы был случайно сохранен, например, как UTF-8. Найти этот файлик и "левые" два байтика убрать.
Все, что здесь сказано, может и будет использоваться против меня.
Здравствуйте, Дм.Григорьев, Вы писали:
ДГ>У меня IE тупо виснет при загрузке (т.е. не виснет, но и не грузит, окошечки в правом верхнем углу трепыхаются). FF и Opera грузят сразу. А что у тебя там за мустор перед <!DOCTYPE > в исходнике страницы?
Насколько я сумел выяснить, это — сигнатура utf-8, один из способов показать, что файл — в кодировке utf-8. Откуда берется — чешу репу несколько часов и не могу найти. Причем, в FF и опере показываются, а ехплорер глотает и даже в сырцах их не показывает.
Вполне возможно, что дело — в них, но вот найти их источник...
Здравствуйте, Alex Reyst, Вы писали: AR>Да там и с английской версией не все хорошо (см. заголовки).
AR>Диагноз: Указана кодировка Win1251, а в начале передается сигнатура Unicode (0xEFBB), которую IE игнорировать не умеет. AR>Т.е. шаблон страницы был случайно сохранен, например, как UTF-8. Найти этот файлик и "левые" два байтика убрать.
Три байтика.
В шаблоне их нет, в корневом php-файле — тоже. Все они в кодировке 1251, в htaccess прописана кодировка по дефолту 1251
Здравствуйте, Xumpopena, Вы писали:
X>Три байтика. X>В шаблоне их нет, в корневом php-файле — тоже.
Это смотря чем смотреть. Иные IDE (не будем показывать пальцем) добавляют эти байты всегда, но не показывают их. Открой фаром или хотя бы блокнотом и посмотри.
Здравствуйте, Дм.Григорьев, Вы писали:
ДГ>Это смотря чем смотреть. Иные IDE (не будем показывать пальцем) добавляют эти байты всегда, но не показывают их. Открой фаром или хотя бы блокнотом и посмотри.
СВОЛОЧЬ!!!
Это я не вам! Поймите правильно...
несколько файлов, из которых один — мой php-модуль, оказались перекодированным в utf-8 с этой сигнатурой. И хотя в этом модуле html-кода нет, видимо этот модуль, подключаясь, все же этими своими символами инициировал вывод html-потока.
Да и ехплорер что-то радует все меньше и меньше.
Ладно, спасибо, ребятушки, проблема решена.
Re[7]: IE не показывает страницу.
От:
Аноним
Дата:
18.01.08 05:46
Оценка:
Здравствуйте, Xumpopena, Вы писали:
X>Здравствуйте, Дм.Григорьев, Вы писали:
ДГ>>Это смотря чем смотреть. Иные IDE (не будем показывать пальцем) добавляют эти байты всегда, но не показывают их. Открой фаром или хотя бы блокнотом и посмотри.
X>СВОЛОЧЬ!!! X>Это я не вам! Поймите правильно... X>несколько файлов, из которых один — мой php-модуль, оказались перекодированным в utf-8 с этой сигнатурой. И хотя в этом модуле html-кода нет, видимо этот модуль, подключаясь, все же этими своими символами инициировал вывод html-потока. X>Да и ехплорер что-то радует все меньше и меньше. X>Ладно, спасибо, ребятушки, проблема решена.
Да, если в php файле появятся эти два символа, то они будут восприняты, как кусок html-кода (так как вне <?php ?>).
А почему IE делает неправильно — по стандарту, эти символы не имеют никакого значения? (сам не знаю)