подстановка значения токена в код PHP

Главные вкладки

Аватар пользователя so-lo74 so-lo74 17 сентября 2012 в 13:27

Друзья, подскажите, пожалуйста как правильно подставлять значение токена в код?
Например, токен [node:field_user] возвращает выбранное имя пользователя (или список) из поля field_user (словарь таксономии, выпадающий список).
Чтобы получить доступ к искомой почте пользователя (не текущего залогиненного, а возвращаемого значением токена),
в действии rules пишу код:

<?php
$n="[node:field_user]";
//echo $n;
$q=db_select('users','u');
$q->condition('u.name',$n,'=');
$q->fields('u',array('mail','uid'));
$res=$q->execute();

while($rec=$res->fetchAssoc()){
echo 'mail='.$rec['mail'].' uid='.$rec['uid'].'
';
};
?>
В итоге, запрос не отрабатывается, т.к. похоже, что тип $n не строковый??
Если тупо присвоить $n строку всё работает.
Вопрос: Как передать значение, возвращаемое токеном в запрос к DB?
Или плюнуть на токены и анализировать содержимое текущей ноды самому, вытаскивая нужное поле?

Комментарии

Аватар пользователя so-lo74 so-lo74 17 сентября 2012 в 13:36

Похоже, и правда, проще вытаскивать uid прямо из поля ноды, но всё же интересно, как правильно подставлять значения токенов (в принципе).