соответствующей валюты. В init.php отслеживается наличие get параметра, очищается кэш некоторых компонентов функцией BXClearCache и при успешной очистке в куках меняется валюта. Потом происходит редирект $url = $APPLICATION->GetCurPage(); header("Location: ".$url); чтобы загрузилась страница без get параметра и дальнейшее выполнение скриптов было с учётом новых кук. Но столкнулся с непонятной мне странностью страница перезагружается то с get параметром, то без него. Происходит раз через раз. Куки изменяются корректно, но на странице в блоке "валюта" остается предыдущая валюта. А если после этого просто перезагрузить страницу, то в блоке "валюта" появляется корректно значение. Значение блоке "валюта" привязанор к кукам. header("Location: ".$url) я делаю ради дополнительной перезагрузки страницы, но как будто его не происходит. Это все происходит на всех страницах сайта. Блок "валюта" не в компоненте, поэтому не кэшируется. Может кто подскажет что за странность? куда копать?
Эм... Если речь о штатных компонентах каталога - почему просто не передавать в параметры?
Вопрос больше не про компоненты. А про то что страница должна без get параметра загружаться после смены валюты, а она иногда загружается с get параметром. Специально использую для этого $url = $APPLICATION->GetCurPage(); header("Location: ".$url); $APPLICATION->GetCurPage() не содержит в себе get параметры и я подразумеваю что при header("Location: ". $APPLICATION->GetCurPage()) в строке браузера тоже не должно быть get параметров. Не понимаю почему иногда в url попадает get параметр. Т.е. сейчас его нет, перезагружаем страницу, он есть, снова перезагружаем и его снова нет.
Обсуждают сегодня