Перейти к содержимому
Русский язык для Invision Community 5

Скрытие инфы в php-файле от гостей

Нужно кое что убрать от гостей.

Пример:

 

if( $options['post'] )

{

$snapback = "<a class='snapback' rel='citation' href='{$this->settings['board_url']}/index.php?app=forums&module=forums&section=findpost&pid={$options['post']}'>" .

$this->registry->output->getReplacement( 'snapback' ) . "</a>";

}

 

Рекомендованные сообщения

Обратите внимание

По указанному вами в профиле "Board url" находится не IP.Board, либо модифицированный пиратский скрипт с удаленными копирайтами. Если вы указали неверный URL, пожауйста, поправьте его, потому что он скорее всего потребуется при диагностике вашей проблемы. Нелицензионные скрипты не приветствуются, т.к. зачастую именно некорректное "нуление" и является причиной проблем в них.

Гость это мембер у которого $this->memberData['member_id'] равен нулю.

  • Автор

Зачит такая конструкция должна быть?

 

if( $this->memberData['member_id']!= 0 )

{

скрываемый контент

}

Можно и так. Но лучше

if(! $this->memberData['member_id'])

  • Автор

if(! $this->memberData['member_id'])

Такая конструкция скрывает инфу как от гостей так ит юзеров :)

От пользователей скрывать не может

  • Автор

От пользователей скрывать не может

В том то и дело что скрывает, или наоборот показывает всем.

 

Так скрывает от всех:

 

if(! $this->memberData['member_id'])

{

$snapback = "<a class='snapback' rel='citation' href='{$this->settings['board_url']}/index.php?app=forums&module=forums&section=findpost&pid={$options['post']}'>" .

$this->registry->output->getReplacement( 'snapback' ) . "</a>";

}

else

{

 

}

 

 

Так показывает всем:

 

if(! $this->memberData['member_id'])

{

 

}

else

{

$snapback = "<a class='snapback' rel='citation' href='{$this->settings['board_url']}/index.php?app=forums&module=forums&section=findpost&pid={$options['post']}'>" .

$this->registry->output->getReplacement( 'snapback' ) . "</a>";

}

 

 

Без else скрывает от всех

Не может так скрывать от всех.

Проверьте еще раз место куда вы вставляете это условие.

 

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

  • 3 недели спустя...
  • Автор

@siv1987,

Надо ещё попробовать. Возможно дело в кеше.

@Haktar, дело в кеше. См пост выше.

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.