как заменить имя пользователя?

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
dangermk
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 6 месяцев

как заменить имя пользователя?

Сообщение dangermk »

Добрый день,

Подскажите пожалуйста как во всех шаблонах поменять {USERNAME} не на $user['username'] а на другое поле в базе пользователей?

Хотел для начала поменять в navbar_header - не могу найти где именно в коде подстановки...
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: как заменить имя пользователя?

Сообщение Sheer »

dangermk писал(а): поменять {USERNAME} не на $user['username']
Поменять в шаблонах это невозможно.
dangermk писал(а): на другое поле в базе пользователей
Базы пользователей не существует, есть таблица пользователей в базе данных. USERNAME - это не поле таблицы БД, а объект шаблона.

Код: Выделить всё

        'USERNAME'                => ($admin) ? $user->data['username'] : '', 
А теперь скажите, с какой целью вы хотите это сделать?
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
dangermk
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 6 месяцев

Re: как заменить имя пользователя?

Сообщение dangermk »

понятно что дело в объектах шаблона, вот только не могу найти в каких именно шаблонах это...

суть в следующем.. есть сайт и есть форум.
авторизация на форуме естественно с сайта.. но отображаться имя должно не из имени пользователя, которое просто нумеруется подряд, а из поля ФИО так скажем.. т.е. у всех пользвоателей форума будут реальные имена и фамилии, ну или ники..
Я добавил в таблицу phpbb_users поле showname где буду менять отображаемое в форуме имя как надо...

Но вот в каких именно шаблонах надо менять $user_name['username'] на $user_name['showname'] мне не понятно..

Во многих местах подстановка в шаблон идет через функцию get_username_string
В этой функции есть например <span class="username">{USERNAME}</span>
пробовал поменять на <span class="username">{SHOWNAME}</span> и передавать во всех шаблонах по аналогии с USERNAME - SHOWNAME
Однако все равно на сайте висит {SHOWNAME}, т.е. не заменяется.. (речь про navbar_header пока)
Кеш естественно пробовал очищать - не помогает...
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 14 лет 4 месяца
Благодарил (а): 152 раза
Поблагодарили: 215 раз
Забанен: Бессрочно

Re: как заменить имя пользователя?

Сообщение xisp »

dangermk писал(а): которое просто нумеруется подряд
Почему бы сразу туда не писать ваше ФИО?
dangermk писал(а): Я добавил в таблицу phpbb_users поле showname где буду менять отображаемое в форуме имя как надо...
Руками?
phpBBex
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: как заменить имя пользователя?

Сообщение Sheer »

dangermk писал(а): в каких именно шаблонах надо менять $user_name['username']
Ни в каких. Я же сказал - это невозможно. Не путайте божий дар с яичницей. $user_name['username'] - это элемент массива php $user_name. Кроме того, этот массив у вас скорее всего нигде не определен, поэтому $user_name['username'] вообще не существует в природе. SHOWNAME - это объект шаблона, раз уж вы пытаетесь его использовать в html-шаблоне. Чтобы использовать в шаблоне какой-то объект, его предварительно нужно определить, то есть присвоить какое-то значение. Например в функции page_header

Код: Выделить всё

'SHOWNAME' => $some_var, 
А перед этим определить значение перемененной $some_var. Чтобы это значение определить, нужно выполнить SQL-запрос для извлечения значения поля showname из таблицы usersбазы данных.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
dangermk
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 6 месяцев

Re: как заменить имя пользователя?

Сообщение dangermk »

Ну перепутал немного в спешке.. мне надо $user->data['showname']

Но вопрос мой все тот же.. где поменять чтобы поменялось в navbar_header ??
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: как заменить имя пользователя?

Сообщение Sheer »

Спешка нужна при ловле блох.

Код: Выделить всё

'SHOWNAME' => $user->data['showname'], 
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
dangermk
phpBB 1.2.1
Сообщения: 23
Стаж: 18 лет 6 месяцев

Re: как заменить имя пользователя?

Сообщение dangermk »

нет.. вы не поняли... даже если везде где встречается замена 'USERNAME' поменять - все равно ничего не меняется... вот и прошу помочь понять какой же файл php отвечает за генерацию navbar_header
Аватара пользователя
LavIgor
Former team member
Сообщения: 3468
Стаж: 12 лет 4 месяца
Благодарил (а): 41 раз
Поблагодарили: 935 раз

Re: как заменить имя пользователя?

Сообщение LavIgor »

dangermk писал(а): везде где встречается замена 'USERNAME' поменять
Т.е. у Вас везде в коде PHP:

Код: Выделить всё

'USERNAME' => $user->data['showname'] 
Но всё равно отображается поле 'username'?
dangermk писал(а): какой же файл php отвечает за генерацию navbar_header
Я бы сказал так: конкретно никакой.
Этот шаблон генерируется вместе с другими, а не сам по себе.
Последнее определение переменной шаблона перекрывает все предыдущие.
Поэтому наибольший приоритет у замены будет в функции page_footer.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: как заменить имя пользователя?

Сообщение Sheer »

dangermk писал(а): нет.. вы не поняли
Нет. Это вы не поняли.
А не поняли мы вот что
dangermk писал(а): в navbar_header
Файла navbar_header.html в стилях для 3.0 нет. Тогда вопрос: вы пытаетесь что-то там менять в файлах для 3.1? Тогда еще вопрос: что делает эта тема в форуме Поддержка phpBB 3.0.х и каким боком эта тема относится к поддержке?
Далее. В стилях для 3.1 в файле navbar_header.html объект шаблона USERNAME не используется. Так что же вы творите?
Далее
dangermk писал(а): даже если везде где встречается замена 'USERNAME' поменять - все равно ничего не меняется
Если в шаблоне использовать 'USERNAME', действительно ничего не поменяется. Если {USERNAME}, и если этому объекту в функции page_footer присвоено значение, то после замены и очистки кеша все волшебным образом поменяется.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

Вернуться в «Поддержка phpBB 3.0.х»