PDA

View Full Version : не отображается меню пользователя на главной


replika
25.03.2006, 19:51
Нюк 7.9 3.2
Возникла пара проблем--

1. Копался-ковырялся в файлах, перестало работать меню пользователя на главной странице (установлен модуль новостей на главной). В настройках модуля your account ставлю галку отображать меню пользователя на главной, пишу текст в поле. в результате на главной отображается число 0 и все. перезалил файлы модуля your account. Ничего не поменялось. Что может отвечать за вывод этого меню и как устранить проблему? если вдруг нельзя, то как отклюсить это меню вообще?

2. У меня сайт новостей. На главной странице отображаются новости и авторы новостей, т.е. логины пользователей. Как можно отображать имена пользователей (имя фамилия) вместо логина?


Может быть есть какие-нибудь решения? Спасибо!

Soniks
27.03.2006, 15:24
replika
1. попробыйте переустановить бд, возможно там вы какието изменения внесли
2. в php-nuke это не предусмотрено, но phpbb есть поле "реальное имя", поэтому можно его использовать для вывода имени, но модуль новостей придеться для этого видоизменять.

replika
27.03.2006, 16:08
Soniks,
спасибо, только что именно в коде изменить я не знаю, не подскажешь?

Soniks
28.03.2006, 04:03
replika а вам нужно что бы отображалось имя, когда добавляет пользователь или админитсратор, т.е. через модуль Submit_News?

replika
28.03.2006, 17:07
Soniks,

Ну это выглядит так-- добавляют новости только зарегистрированные прользователи через Submit_News (а также FCKeditor), администратор правит присланную новость и публикует ее на главной. При этом Логин автора новости отображается на главной, как приславшего новость. А я хочу, чтобы на главной публиковалось имя и фамилия приславшего новость (имя и фамилию по идее автор указывает сам в информации своего аккаунта)...При клике на Имя Фамилия надо чтобы читатель переходил на инфу об этом авторе (соответствующую Логину)

$userinfo['name'] -- это я копался в index файле модуля Your_Account, эта штука, насколько я понимаю держит введенное пользователем реальное имя в информации аккаунта. Только как и куда это воткнуть я не соображаю...не разбираюсь в пхп..Спасибо

Soniks
28.03.2006, 20:40
replika можно отредактировать саму тему, функцию FormatStory() в файле theme.php
находим:
$boxstuff = "<a href=\"modules.php?name=Your_Account&amp;op=userinfo&amp;username=$informant\">$informant</a> ";
и меняем на:

global $prefix, $db;
list($name_user) = $db->sql_fetchrow($db->sql_query("SELECT name FROM ".$prefix."_users WHERE username='$informant' LIMIT 1"));
$boxstuff = "<a href=\"modules.php?name=Your_Account&op=userinfo&username=$informant\">$name_user</a> ";

replika
28.03.2006, 23:14
спасибо большое! поставил все работает.

replika
29.03.2006, 15:43
Soniks, все работало до тех пор пока не вошел под другим логином. Дело в том что --

1. Войдя под логином, отличным от авторского, автор новости отображается как имя вошедшего под своим логином. Т.е. если новость написал юзер1, а сайт просматривает юзер2, то автор новости отображается как имя юзера2, вместо имени юзера1.

хотя ссылка всегда отображает аккаунтинфо реального автора.

2. если сайт читает анонимный пользователь то имя автора не отображается вообще.

В чем тут беда?

Спасибо

Soniks
29.03.2006, 19:43
replika немного ошибся, код исправил.

replika
29.03.2006, 23:49
Soniks, может я что не так делаю, но ничего не поменялось...
Я пробовал вышеуказанный вариант - не изменилось.

Пробовал еще вот такой--

$userinfo = getusrinfo($aid);
$boxstuff = "<a href=\"modules.php?name=Your_Account&op=userinfo&username=$informant\">"$aid"</a> ";

но тогда появляется тот, кто запостил новость, т.е. администратор (я), а не сабмитивший новость. что-то не так делаю?

Soniks
30.03.2006, 22:36
replika заработался...
сейчас изменил код, должно работать

replika
31.03.2006, 00:50
Soniks, когда ставлю этот код, ни имени, ни новых символов на странице не добавляетсяю.

Soniks
31.03.2006, 01:34
странно должно было заработать...

replika
03.04.2006, 23:45
Sonics, спасибо. код на первой странице работает, но для этого нужно оптимизировать нюку

http://forum.mynuke.ru/showthread.php?t=1260

replika
15.04.2006, 22:29
Soniks, не могли бы вы добавить заново самый первый код, который вы писали на первой странице. Он выводил имя зарегистрированного пользователя (а не приславшего новость) и начинался вроде бы так --

$userinfo = getusrinfo($_COOKIE['user']);

Мне нужен этот код, т.к. теперь хочу вставить приветствие зарегистрированному пользователю на главносй странице типа Привет, Имя Фамилия. (сейчас выводит логин, а не введенные имя и фамилию)

Спасибо

Soniks
17.04.2006, 03:05
replika делаете запрос
$userinfo = getusrinfo($_COOKIE['user']);
а дальше $userinfo['name'] будет полное имя и фамилия в вашем случаи, для пользователя

replika
17.04.2006, 03:17
спасибо. все работает.