Поиск пользователя
Поиск пользователя
Не подскажите есть ли мод, который осуществляет поиск поьзователей на форуме.
В стандартной сборке есть только поиск сообщений по автору, а если пользователь не написал ни одного сообщение, то поиск результатов не даст
В стандартной сборке есть только поиск сообщений по автору, а если пользователь не написал ни одного сообщение, то поиск результатов не даст
-
- Former team member
- Сообщения: 702
- Зарегистрирован: 20 лет 6 месяцев
-
- Бывший член :)
- Сообщения: 2925
- Зарегистрирован: 19 лет 11 месяцев
- Благодарил (а): 19 раз
- Поблагодарили: 30 раз
- Забанен: Бессрочно
Подскажите, как исправить этот мод, чтобы все выполнялось одной кнопкой. Две - это излишество неудобное.
Вот сам мод:
Вот сам мод:
Код: Выделить всё
##############################################################
## MOD Title: Memberlist Find User
## MOD Author: Sko22 < sko22@quellicheilpc.it > (Gianluca Scerni) http://www.quellicheilpc.it/
## MOD Description: Search a username in memberlist
##
## MOD Version: 1.0.0
##
## Installation Level: Easy
## Installation Time: ~3 Minutes
## Files To Edit: memberlist.php
## templates/subSilver/memberlist_body.tpl
## language/lang_english/lang_main.php
## Included Files: n/a
##############################################################
## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered
## in our MOD-Database, located at: http://www.phpbb.com/mods/
##############################################################
## Author Notes: Support at www.quellicheilpc.com , Webmastering Forum.
##
##############################################################
## MOD History:
##
## 2004-03-04 - Version 1.0.0
## - Initial Release
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################
#
#-----[ OPEN ]------------------------------------------
#
memberlist.php
#
#-----[ FIND ]------------------------------------------
#
'L_PM' => $lang['Private_Message'],
#
#-----[ AFTER, ADD ]------------------------------------------
#
'L_LOOK_UP' => $lang['Look_up_User'],
'L_FIND_USERNAME' => $lang['Find_username'],
'U_SEARCH_USER' => append_sid("search.$phpEx?mode=searchuser"),
#
#-----[ FIND ]------------------------------------------
#
$sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . "
ORDER BY $order_by";
#
#-----[ REPLACE WITH ]------------------------------------------
#
$username = ( !empty($HTTP_POST_VARS['username']) ) ? $HTTP_POST_VARS['username'] : '';
if ( $username && isset($HTTP_POST_VARS['submituser']) )
{
$sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar
FROM " . USERS_TABLE . "
WHERE username = '$username' AND user_id <> " . ANONYMOUS . " LIMIT 1";
}
else
{
$sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . "
ORDER BY $order_by";
}
#
#-----[ FIND ]------------------------------------------
#
}
while ( $row = $db->sql_fetchrow($result) );
}
#
#-----[ AFTER, ADD ]------------------------------------------
#
else
{
$template->assign_block_vars('no_username', array(
'NO_USER_ID_SPECIFIED' => $lang['No_user_id_specified'] )
);
}
#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/memberlist_body.tpl
#
#-----[ FIND ]------------------------------------------
#
<form method="post" action="{S_MODE_ACTION}">
#
#-----[ REPLACE WITH ]------------------------------------------
#
<form method="post" action="{S_MODE_ACTION}" name="post">
#
#-----[ FIND ]------------------------------------------
#
<input type="submit" name="submit" value="{L_SUBMIT}" class="liteoption" />
</span></td>
</tr>
#
#-----[ AFTER, ADD ]------------------------------------------
#
<tr>
<td align="left"><span class="nav"> </span></td>
<td align="right" nowrap="nowrap"><span class="genmed">
<input type="text" class="post" name="username" maxlength="25" size="25" tabindex="1" value="" /> <input type="submit" name="submituser" value="{L_LOOK_UP}" class="mainoption" /> <input type="submit" name="usersubmit" value="{L_FIND_USERNAME}" class="liteoption" onClick="window.open('{U_SEARCH_USER}', '_phpbbsearch', 'HEIGHT=250,resizable=yes,WIDTH=400');return false;" />
</span></td>
</tr>
#
#-----[ FIND ]------------------------------------------
#
<th class="thCornerR" nowrap="nowrap">{L_WEBSITE}</th>
</tr>
#
#-----[ AFTER, ADD ]------------------------------------------
#
<!-- BEGIN no_username -->
<tr>
<td class="row1" align="center" colspan="9"><span class="gen"> {no_username.NO_USER_ID_SPECIFIED} </span></td>
</tr>
<!-- END no_username -->
#
#-----[ OPEN ]------------------------------------------
#
language/lang_english/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
//
// That's all, Folks!
// -------------------------------------------------
#
#-----[ BEFORE, ADD ]------------------------------------------
#
$lang['Look_up_User'] = 'Look up User';
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
-
- Former team member
- Сообщения: 702
- Зарегистрирован: 20 лет 6 месяцев
-
- Поддержка
- Сообщения: 5426
- Зарегистрирован: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Sort memberlist per letter - удобный мод чтобы найти нужного пользователя.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB 2.0.7
- Сообщения: 560
- Зарегистрирован: 19 лет 2 месяца
-
- Former team member
- Сообщения: 702
- Зарегистрирован: 20 лет 6 месяцев
Не сказал бы, что очень уж удобный. Если известно примерное имя искомого юзера, то проще ввести часть имени со звёздочкой и нажать Enter, нежели сортировать имена по буквам. Сам раз искал нужного юзера на огромном форуме, при этом знал точное имя юзера, но пользователей, имена которых начинались на букву искомого юзера, набралось страниц на 200. Попробуй-ка найти пользователя быстро перебором нескольких десятков страниц.Siava писал(а):удобный мод чтобы найти нужного пользователя
Добавлено спустя 28 минут 12 секунд:
Nemo1987, а тебе действительно совсем не стыдно каждый раз с честным видом говорить одно и то же, что мол искал, но не нашёл, потому что не знаю как запрос составить, и каждый раз по твоему же запросу кто-нибудь другой ищет и прекрасно находит? По запросу Sort memberlist per letter находится всего две темы. Первая - эта, а вторая - маленькая тема из двух страниц, все ссылки в которой даны на первой странице.Nemo1987 писал(а): Поиск: Sort memberlist per letter, не помог
-
- phpBB 2.0.7
- Сообщения: 560
- Зарегистрирован: 19 лет 2 месяца
-
- phpBB 1.4.4
- Сообщения: 199
- Зарегистрирован: 20 лет 3 месяца
- Откуда: Kiev.UA
MAzZY в SELECT вместо
WHERE username = '$username' AND
ставишь
WHERE POSITION( '" . $username . "' IN username ) > 0 AND
можешь еще усовершенствование внести - дополнительный чекбокс "точное соответствие"
если отмечен, то искать как username = '$username'
если не отмечен, то POSITION( '" . $username . "' IN username ) > 0
ну и LIMIT = 1 в последнем будет лишним
WHERE username = '$username' AND
ставишь
WHERE POSITION( '" . $username . "' IN username ) > 0 AND
можешь еще усовершенствование внести - дополнительный чекбокс "точное соответствие"
если отмечен, то искать как username = '$username'
если не отмечен, то POSITION( '" . $username . "' IN username ) > 0
ну и LIMIT = 1 в последнем будет лишним
-
- phpBB 1.4.4
- Сообщения: 199
- Зарегистрирован: 20 лет 3 месяца
- Откуда: Kiev.UA
-
- Бывший член :)
- Сообщения: 2925
- Зарегистрирован: 19 лет 11 месяцев
- Благодарил (а): 19 раз
- Поблагодарили: 30 раз
- Забанен: Бессрочно
Как я понял должна получится така строка:
Так вот с ней не работает. Здесь все верно в смысле синтаксиса?
Код: Выделить всё
WHERE POSITION( '" . $username . "' IN username ) > 0 AND user_id <> " . ANONYMOUS . " LIMIT 1";