PHP5 IE6 не отображает конкретной страницы с конкретными параметрами
Кукис пишется в самом начале выполнения в файле который инклудится ко всем скриптам.
Все роботало нормально. Теперь записей в БД стало побольше. Поиск конечно идет подольше, но страница открывается меньше чем за 5 сек. Ето при плохом соединении.
Для вывода использую смарти. Сначала идет поиск, потом начинается вывод.
Проблема: Если передавать етот параметр который в начале выполнения скрипта запишется в кукис то IE6 говорит
[COLOR=black][FONT=verdana]
Cannot find server.
The page you are looking for is currently unavailable. The Web site might be experiencing technical difficulties, or you may need to adjust your browser settings.
............
[/FONT][/COLOR]
В остальных браузерах все путем. Также все хорошо если не записывать в кукисы ничего. Также роботает на меньшем количестве записей в БД.
Что по сути происходит. Я пишу значение в кукис, дальше задержка (явно намного меньше 5 сек) на поиск, потом вывод смарти.
Пробую дебагить. Ставлю после записи в кукис но до поиска echo 1 (при чем не обязательно 1, можно и пробел) и о чудо - опять роботает.
Я тут сижу холодный и питаюсь искать бубен шаманский.
Помогите.
ЗЫ. Щас вывожу перед <!DOCTYPE пробел и роботает - но ето ведь не решение. Я причины не понимаю.
Я пробовал сделать тестовый скрипт где в начале пишется кук а потом слип на 20 сек, а потом вывод. Все нормально. А конкретно в етом поиске не роботает. Сам скрипт большой да и инклудов много и в данном случае проблема может быть где угодно. Поетому код тут приводить безсмысленно.
Я вчера еще копался в етом вопросе и похоже что проблема и не в куке.
Буду дальше експериментировать. Просто дебагить тяжело. Если начинаю выводить какието промежуточные данние то все начинает роботать. Попробую теперь в лог писать.
Что я нарыл нового.
Да, проблема в в том что много раз перезаписываются кукисы.
Предистория проблемы.
Это проект на 3 языках. Изначально текущий язык хранился в кукисе. Такой вариант не устраивал. Урлы то одинаковые для разных языков, а поисковый робот с кукисами играться не станет и проиндексирует только язык по умолчанию. Заделал с языком в урле. При етом урлы выглядят примерно hттp://домен/[язык/]все остальное.
Наличие языка в урле не обязательно. Если его нет то возьмется значение из кукиса. Если и там нет то дефолтное.
Сам язык из урла с помощю .htaccess превращается в ГЕТ параметр скрипта.
Для вывода использую Смарти (многоязычний). Сам вывод организировал так что есть шаблон контейнера , в нево ассигню Smarty feath из другого шаблона. Потом ето все обросло блоками рекламы, блоками перехода по страницам в результатах поиска и т.д. При генерации каждого из етих блоком создается новый екземпляр смарти конкретно для етого блока.
Каждый раз при создании екземпляра смарти идет обращение к Менеджеру языков и тот возвраает текущий язык. В етом месте я смотру на параметр языка страницы. Если его нет, то на кукис и когда определяю язык, то записываю ето в кукис чтоб синхронизировать с параметром урла. И все ето при создании екземпляра смарти. Криво отсюда и проблема.
Несколько раз подряд средствами РНР переписывается кукис. ИЕ6 ето не нравится и он говорит что сраницы нет.
Тот факт что я пробовал дебагить и при выводе у меня все начинало роботать обяснятся просто. Вывел чтото в станицу и кукисы уже не пишутся :)
Переделал так что язык в кукис записывается только раз в глобальном файле который через require_once подключается ко всему. Без него вообще ничего не зароботает. Теперь все выводится. Вродебы проблема решена. Но теперь я для дебага использовал гол в файл. И вот прикол. Страница отображается, а логи не пишутся до конца. До Smarty feath пишутся, а дальше нет, хотя ехо роботает. Проблемы нет, а полтергейст остался.
:) Ет получится около 15 скриптов, 4 хтмл-шаблона + БД и набор данных на которых енто все переставало роботать ну и еще так по мелочи.
Оно тебе надо. Темболее уже работает, а то что лог перестает писаться - фиг с ним, надо будет буду лечить, а пока пускай будет как есть.
Просто если у кого были подобние глюки то отпишитесь плиз. Ведь то что я запись кукиса перенес в другое место и он теперь записывается не 5 раз, а 1 - оно то помогло, но не могу понять почему.