Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 12.07.2005, 11:57   #1
Алексей
Продвинутый
 
Регистрация: 15.04.2005
Сообщений: 35
По умолчанию Как в PHP_SCRIPT передать аргумент?

У меня контент страницы работает в виде PHP_SCRIPT, но как туда передать аргументы? Естественно это надо делать через URL, но я пока нашел только \"концепцию $id и $type\" в этом контексте.
Алексей вне форума   Ответить с цитированием
Старый 12.07.2005, 19:33   #2
Dmi3
Продвинутый
 
Регистрация: 25.12.2003
Сообщений: 50
По умолчанию

Нужно просто взять нужные переменные из POST или GET запроса.
Что-то вроде (как один из вариантов)
t3lib_div::GPvar($this->prefixId), соотв. ваши переменные должны быть элементами массива $this->prefixId
Dmi3 вне форума   Ответить с цитированием
Старый 13.07.2005, 10:35   #3
Алексей
Продвинутый
 
Регистрация: 15.04.2005
Сообщений: 35
По умолчанию

Спасибо, разобрался. Все даже несколько очевиднее.

Ассоциативный массив GLOBALS[\"HTTP_GET_VARS\"] содержит все аргументы GET-запроса.
Алексей вне форума   Ответить с цитированием
Старый 13.07.2005, 12:30   #4
Andreas Schwarzkopf
Senior Member
 
Регистрация: 14.08.2003
Сообщений: 416
По умолчанию

Есть два очень важных документа:
http://typo3.org/documentation/document-library/doc_core_cgl/ http://typo3.org/documentation/document-library/doc_core_api/

Например, там описаны важнейшие функции:
http://typo3.org/documentation/document-library/doc_core_api/High_priority_functi/

Этот метод там не рекомендуется. Следует использовать функции t3lib_div::_GP для отдельных переменных или же t3lib_div::_GET() для всего массива.

Также следовало бы использовать готовый пакет фронтенд-функций из класса class.tslib_pibase.php. Так как этот класс уже инициализирован, функции вызываются просто через $this. GET-переменные например $this->piVars.
Andreas Schwarzkopf вне форума   Ответить с цитированием
Старый 14.07.2005, 09:03   #5
Алексей
Продвинутый
 
Регистрация: 15.04.2005
Сообщений: 35
По умолчанию

Я бы и рад использовать все правильно, но теперь у меня вовсе ничего не работает - стоит только выйти из админки тайпо как все эти варианты перестают работать!

В $HTTP_GET_VARS остается только id, все остальное исчезает. Вхожу в админку - все работает снова... Как так?
Алексей вне форума   Ответить с цитированием
Старый 14.07.2005, 09:34   #6
Алексей
Продвинутый
 
Регистрация: 15.04.2005
Сообщений: 35
По умолчанию

Забавно. Я впервые категорически не согласен с логикой работы Typo3. Выдавать на запрос id=57&letter=S кэш от просто id=57 явно ошибочно.

Конечно есть $GLOBALS[\"TSFE\"]->set_no_cache(), но при таком подходе к кешированию использовать эту фичу приходится всегда...
Алексей вне форума   Ответить с цитированием
Старый 14.07.2005, 12:12   #7
Andreas Schwarzkopf
Senior Member
 
Регистрация: 14.08.2003
Сообщений: 416
По умолчанию

Именно поэтому я дал совет посмотреть pibase. Там есть функции для построения ссылок с использованием кэша с cHash, что позволяет строить ссылки с любыми параметрами на одной и той же странице, не вылключая механизмы кэширования.
Andreas Schwarzkopf вне форума   Ответить с цитированием
Старый 14.07.2005, 12:13   #8
Andreas Schwarzkopf
Senior Member
 
Регистрация: 14.08.2003
Сообщений: 416
По умолчанию

К стати, объект PHP_SCRIPT уже давно устарел. Не знаю, возможно ли там использовать cHash. Рекомендуется использовать объект USER.
Andreas Schwarzkopf вне форума   Ответить с цитированием
Старый 15.07.2005, 05:19   #9
Алексей
Продвинутый
 
Регистрация: 15.04.2005
Сообщений: 35
По умолчанию

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

Насчет PHP_SCRIPT - объект вполне серьезно рассматривается в tsref, мысли о его устаревании у меня как-то не возникли.

Спасибо за быстрые и квалифицированные ответы.
Алексей вне форума   Ответить с цитированием
Старый 11.01.2007, 15:08   #10
Baltazarr
Продвинутый
 
Аватар для Baltazarr
 
Регистрация: 24.07.2006
Адрес: Russia, Izhevsk
Сообщений: 81
Отправить сообщение для Baltazarr с помощью ICQ
По умолчанию

Цитата:
Сообщение от Андрей Шварцкопф Посмотреть сообщение
К стати, объект PHP_SCRIPT уже давно устарел. Не знаю, возможно ли там использовать cHash. Рекомендуется использовать объект USER.
Согласен с предыдущим пассажиром, ибо:
Цитата:
It's a little like the PHP_SCRIPT concept but this is somehow cleaner, because it's a call to a function previously defined and not an inclusion of a PHP-script file. So this is recommended.
Baltazarr вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 13:15.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория