Передача переменной из smarty в php

Тема в разделе "PHP", создана пользователем MyCreature, 19 дек 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. MyCreature

    MyCreature Постоялец

    Регистр.:
    5 окт 2008
    Сообщения:
    83
    Симпатии:
    5
    Есть переменная в smarty - {$zero.qwe}.

    Как передать ее значение в php?

    Не работает {php}echo $zero.qwe{/php}} - выводит просто qwe!
     
  2. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    Что значит "передать ее значение в php"?
     
  3. ewg777

    ewg777

    Регистр.:
    6 авг 2007
    Сообщения:
    763
    Симпатии:
    321
    Точку не пробовали не использовать? Мануал читали?
     
  4. sserbin

    sserbin

    Регистр.:
    9 май 2008
    Сообщения:
    158
    Симпатии:
    22
    Смарти передается в фугурных скобках, ты правильно все делаешь возможно неправильно синтаксически составленно название шаблона
     
  5. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    1. переменные передаются из пхп в смарти, а не наоборот. Объясни по человечески что тебе надо.
    2. зачем }} ?
     
  6. MyCreature

    MyCreature Постоялец

    Регистр.:
    5 окт 2008
    Сообщения:
    83
    Симпатии:
    5
    Я не прог. на smarty, мне нужно только выдрать из нее значение переменной и получить его в php скрипте. Думаю разработчики shop-script читали мануал.:)

    1. Просто я вставляю кусок кода в index.tpl.html. Но так как я потратил несколько часов и ничего не нашел по этому поводу, думаю делаю что то не так.
    2. Ошибка копи паст) Конечно в этом куске одна скобка.
     
  7. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    Ты читать умеешь? Переменные в смарти передаются из PHP скрипта, а не наоборот - эта переменная уже есть в скрипте!!!

    Всё что тебе надо - сделать поиск по файлам на наличие zero и найти в них строку похожую на
    $smarty->assign("zero", $что-то там)
    это и будет твоей переменной.
     
    MyCreature нравится это.
  8. MyCreature

    MyCreature Постоялец

    Регистр.:
    5 окт 2008
    Сообщения:
    83
    Симпатии:
    5
    Да спс, понял, что переменная уже есть в скрипте только сейчас.

    Нашел переменную которую нужно, но странным образом не могу все равно ее получить в нужном месте.

    Да же после добавки этого в файл который инклудиться в начале:
    global $pd; $pd = $zero[qwe];
    переменная $pd становиться пустой в нужном месте...
     
  9. Jameson

    Jameson Читатель

    Заблокирован
    Регистр.:
    25 июн 2007
    Сообщения:
    406
    Симпатии:
    92
    Да же после добавки этого в файл который инклудиться в начале
    Непонятно, в начале чего. Не забывай, что "во время пути" другие функции могут изменять значение переменной или даже уничтожать ее.

    Предлагаю почитать, как работают global-переменные: ссылка
     
  10. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    1. $zero[qwe] и будет пустой, правильно будет $zero['qwe'];
    2. zero - название переменной в smarty, в скрипте она может называться по другому - смотри на строку $smarty->assign("zero", $X), Х и есть названием переменной в скрипте.
     
Статус темы:
Закрыта.