Русское сообщество fluxbb

Быстрый лёгкий надёжный форумный движок

Вы не вошли.

Объявление

Вы можете внести свой вклад в содержание сайта. Жертвователи попадут в почетную группу "Спонсоры". Поддержать сайт.

#1 2010-12-06 22:51:20

scalemaster
Участник
Зарегистрирован: 2009-08-10
Сообщений: 134

Принципы действия

Почему-то в parser.php не работает условие

if (!$pun_user['is_guest'])

Т.е. результат всегда отрицательный.

Offline

#2 2010-12-07 00:20:32

scalemaster
Участник
Зарегистрирован: 2009-08-10
Сообщений: 134

Re: Принципы действия

require PUN_ROOT.'lang/'.$pun_user['language'].'/topic.php';
$lang_topic['бла-бла']

тоже в парсере не действует, что за чёрт?

Offline

#3 2010-12-07 04:02:39

hcs
Administrator
Зарегистрирован: 2008-09-05
Сообщений: 85

Re: Принципы действия

Может переменная $pun_user локальная и не определена?

Offline

#4 2010-12-07 06:08:25

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Принципы действия

scalemaster, показывай более развернутые примеры wink

Offline

#5 2010-12-07 10:02:20

scalemaster
Участник
Зарегистрирован: 2009-08-10
Сообщений: 134

Re: Принципы действия

Например, хочу сделать такое:

//Гостям х, а не ссылка.
if ($pun_user['is_guest'])
     return 'Вам, извините, X';
else
    return '<a target="_blank" href="/redirect.php?to='.$full_url.'" rel="nofollow">'.$link.'</a>';

По поводу объявления, вполне возможно, я в этом не силён пока...

Редактировался scalemaster (2010-12-07 10:06:04)

Offline

#6 2010-12-07 10:20:12

artoodetoo
Admin by chance
Зарегистрирован: 2008-09-09
Сообщений: 887
Сайт

Re: Принципы действия

Наверняка дело в области видимости. Если используешь переменная $pun_user внутри функции, необходимо в начале функции написать global $pun_user. Иначе PHP будет считать что это новая локальная переменная. Мало того, если функция вызывается из другой функции, то и в той внешней тоже нужен global $pun_user.

Или можно написать так:
$pun_user = $GLOBALS['pun_user']; // берем переменную из глобального контекста

Ох уж этот процедурный стиль!

Offtopic: всю субботу перекраивал Fluxbb на классы.


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Offline

#7 2010-12-07 10:31:17

scalemaster
Участник
Зарегистрирован: 2009-08-10
Сообщений: 134

Re: Принципы действия

artoodetoo, Работает!!!
Надо всё-таки дальше плюсы осваивать, а то эти бейсикоподобные языки совсем развратили...

Offline

Подвал доски

Под управлением FluxBB. Хостинг Hostens