Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Не воспринимаються переменные в адресной строке

00 голосов
3
Добрый день! По мере того как я постигаю таинства битрикса, я периодически сталкиваюсь с мелкими проблемами, но это наверное и нормально.

Н этот раз проблема заключается вот в чем:
При работе с катаогом, в файле element.php PHP не видит переменную, которую я передаю в адресной строке.
Т.е. в строке
http://site/model/element.php?id=410&component=1

переменная component не воспринимается.
Подскажите с чем это может быть связано. Или как другим способом мне передать ээу переменную?

Заранее спасибо!
С уважением Лисицкий Денис.А.
спросил 11 Фев, 14 от Selheim (160 баллов)

3 Ответы

00 голосов
Особенностью использования компонент является то, что они подключаются функцией
http://www.bitrixsoft.ru/help/source/main/help/ru/developer/reference/cmain/includefile.php.html

И соответстственно у этой функции своя область видимости переменных (как и у любой функции PHP). Поэтому к глобальным переменным внутри компонента надо обращаться через массив $GLOBALS. А к переменным запроса - соответственно через $_REQUEST (либо $_GET, $_POST). Т.е. в вашем случае - $_REQUEST["component"]

Данные особенности будут отражены в соответствующем разделе доки, который сейчас дописывается.
ответил 29 Июнь, 14 от Kania (5,180 баллов)
00 голосов
Добрый день

Переменная $component не видна в самом файле element.php или внутри компонента, подключаемого в файле?
Если второе - да, Вам нужно передать эту переменную в списке параметров при вызове компонента:
Код
"component"=>$_REQUEST["component"], 

чтобы она была видна внутри этого компонента.
ответил 29 Окт, 14 от Damani (1,180 баллов)
00 голосов
Большое спасибо за оперативные ответы, у меня все получилось!
ответил 26 Фев, 15 от Selheim (160 баллов)

Похожие вопросы

0 голосов
6 ответов
0 голосов
2 ответов
спросил 18 Фев, 14 от AndryxaSt (180 баллов)
0 голосов
5 ответов
спросил 09 Май, 13 от avents (160 баллов)
0 голосов
2 ответов
0 голосов
3 ответов