PDA

Просмотр полной версии : Как в PHP_SCRIPT передать аргумент?


Алексей
12.07.2005, 11:57
У меня контент страницы работает в виде PHP_SCRIPT, но как туда передать аргументы? Естественно это надо делать через URL, но я пока нашел только \"концепцию $id и $type\" в этом контексте.

Dmi3
12.07.2005, 19:33
Нужно просто взять нужные переменные из POST или GET запроса.
Что-то вроде (как один из вариантов)
t3lib_div::GPvar($this->prefixId), соотв. ваши переменные должны быть элементами массива $this->prefixId

Алексей
13.07.2005, 10:35
Спасибо, разобрался. Все даже несколько очевиднее.

Ассоциативный массив GLOBALS[\"HTTP_GET_VARS\"] содержит все аргументы GET-запроса.

Andreas Schwarzkopf
13.07.2005, 12:30
Есть два очень важных документа:
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.

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

В $HTTP_GET_VARS остается только id, все остальное исчезает. Вхожу в админку - все работает снова... Как так?

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

Конечно есть $GLOBALS[\"TSFE\"]->set_no_cache(), но при таком подходе к кешированию использовать эту фичу приходится всегда...

Andreas Schwarzkopf
14.07.2005, 12:12
Именно поэтому я дал совет посмотреть pibase. Там есть функции для построения ссылок с использованием кэша с cHash, что позволяет строить ссылки с любыми параметрами на одной и той же странице, не вылключая механизмы кэширования.

Andreas Schwarzkopf
14.07.2005, 12:13
К стати, объект PHP_SCRIPT уже давно устарел. Не знаю, возможно ли там использовать cHash. Рекомендуется использовать объект USER.

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

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

Спасибо за быстрые и квалифицированные ответы.

Baltazarr
11.01.2007, 15:08
К стати, объект 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.

Fantomas
11.01.2007, 16:51
Подскажите, пожалуйста, как использовать PHP_Script.
У меня есть страница, контент которой должен генерироваться php скриптом.


И еще, будут ли передаваться параметры из другой страницы нужной странице. Т.е. есть страница, контент чистый html , пример:
<form action = "index.php?id=24", METHOD="POST">
и т.д. и т. п.
</form> и страница index.php?id=24, в которой мне нужно использовать
переданные параметры.