Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как показать текст только автору новости?

Как показать текст только автору новости?


     12.07.2014    Все вопросы » Общие вопросы по PHP    3206

вопрос
Здравствуйте!
Подскажите, как показать текст автору в полной новости?

Заранее спасибо за ответ!

Ответил: SX2


if ( $member_id['name'] != $row['autor'] AND $member_id['user_group'] != 1) {
            $tpl->set( '[not-mynews]', "" );
            $tpl->set( '[/not-mynews]', "" );
            $tpl->set_block( "'\\[mynews\\](.*?)\\[/mynews\\]'si", "" );
} else {
            $tpl->set( '[mynews]', "" );
            $tpl->set( '[/mynews]', "" );
            $tpl->set_block( "'\\[not-mynews\\](.*?)\\[/not-mynews\\]'si", "" );
}


Видно для группы ID == 1 и автора новости

[mynews]показываем текст[/mynews]
[not-mynews]скрываем текст[/not-mynews]

13 комментариев

Gopr
Юзер

Gopr - 12 июля 2014 23:13 -

В /engine/modules/show.full.php попробуй вставить перед
if ( $row['votes'] ) {
if ( $member_id['user_id'] != $row['user_id'] ) {
$tpl->set_block( "'\\[my-news\\](.*?)\\[/my-news\\]'si", "" );
} else {
$tpl->set( '[my-news]', "" );
$tpl->set( '[/my-news]', "" );
}
В шаблоне полной новости используй теги
[my-news][/my-news]
Ps Не проверял на работу способность...

Владимир
Юзер

Владимир - 12 июля 2014 23:31 -

Gopr, Спасибо!
Немного подкорректировал и заработало!
if ( $member_id['name'] != $row['autor'] ) {
            $tpl->set( '[not-mynews]', "" );
            $tpl->set( '[/not-mynews]', "" );
            $tpl->set_block( "'\\[mynews\\](.*?)\\[/mynews\\]'si", "" );
} else {
            $tpl->set( '[mynews]', "" );
            $tpl->set( '[/mynews]', "" );
            $tpl->set_block( "'\\[not-mynews\\](.*?)\\[/not-mynews\\]'si", "" );
}


[mynews] - показывает
[not-mynews] - скрывает

Casper-X
Юзер

Casper-X - 18 июня 2015 13:19 -

Можно ли это доделать, чтобы показывало автору и админу?

Kdimav
Юзер

Kdimav - 10 апреля 2022 15:41 -

+1 тоже понадобилось, чтобы показывало автору и админу.

SX2
Эксперт

SX2 - 10 апреля 2022 17:07 -

Добавьте в условие группу или ID админа.

Самая сложная часть работы – решиться приступить к ней.

Kdimav
Юзер

Kdimav - 10 апреля 2022 19:57 -

Не подскажите как это сделать?

SX2
Эксперт

SX2 - 10 апреля 2022 21:03 -

***Комментарий удален***

Самая сложная часть работы – решиться приступить к ней.

Kdimav
Юзер

Kdimav - 10 апреля 2022 22:01 -

Не работает к сожалению.

rewenas
Юзер

rewenas - 11 апреля 2022 13:05 -

Уважаемые эксперты, я правильно понимаю, что чтобы дать право просмотра автору и например 2 группам, то надо сделать так:

 if ( $member_id['name'] != $row['autor'] AND !in_array($member_id['user_group'], array(1, 2)) ) {  


А чтобы дать право просмотра автору и пользователю с определенным id, то так:

 if ( $member_id['name'] != $row['autor'] AND $member_id['user_id'] != 1 ) {   

dj-avtosh
PHP-developer

dj-avtosh - 11 апреля 2022 14:23 -

if ( $member_id['name'] != $row['autor'] AND !in_array($member_id['user_id'], [1]) ) {

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

rewenas
Юзер

rewenas - 11 апреля 2022 18:11 -

Тоесть тоже с помощью функции in_array() проверить в массиве ($member_id['user_id'] есть ли пользователь с таким id и если условие выполняется вывести эту информацию?

dj-avtosh
PHP-developer

dj-avtosh - 11 апреля 2022 18:12 -

типа того

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

Kdimav
Юзер

Kdimav - 11 апреля 2022 20:28 -

Всем спасибо!

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх