Стоит мод Gender 1.2.8 by Niels.
Стоит адд-он для Gender Require (обязать пользователей выбрать пол).
Для него установлен следущий Add-On - Battle of Sexes (офиц. название), вот сам мод:
Код: Выделить всё
##############################################################
## MOD Title: No of Female and Male Members on Index
## MOD Author: Dioxins < dioxins@yahoo.com >
## Special thanks to dannic06 < http://www.phpbb.com/phpBB/profile.php?mode=viewprofile&u=68228 >
##
## MOD Description: This mod will allow users to see the number of female and male registrants
## in the index
## MOD Version: 0.0.1
##
## Installation Level: Easy
## Installation Time: ~3 Minutes
## Files To Edit: 4
## language/lang_xxx/lang_main.php
## includes/functions.php
## index.php
## templates/xxx/index_body.tpl
## Files Included: none
##
##############################################################
## 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:
## Requires Gender Mod by Niels Chr Rшd. Denmark < ncr@db9.dk >
## Tested on 2.0.4 and without problems.
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################
#
#-----[ OPEN ]------------------------------------------
#
# (make sure to edit this file for every language your board uses).
language/lang_xxx/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
#
$lang['Registered_user_total'] = 'We have <b>%d</b> registered user';
#
#-----[ AFTER ADD]------------------------------------------
#
$lang['male_zero_total'] = 'We have <b>0</b> Male Member'; // # registered male users
$lang['male_total'] = 'We have <b>%d</b> Male Members'; // # registered male users
$lang['male_one_total'] = 'We have <b>%d</b> Male Member'; // # registered male users
$lang['female_zero_total'] = 'We have <b>0</b> Female Member'; // # registered female users
$lang['female_total'] = 'We have <b>%d</b> Female Members'; // # registered female users
$lang['female_one_total'] = 'We have <b>%d</b> Female Member'; // # registered female users
#
#-----[ OPEN ]------------------------------------------
#
includes/functions.php
#
#-----[ FIND ]------------------------------------------
#
case 'newestuser':
$sql = "SELECT user_id, username
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . "
ORDER BY user_id DESC
LIMIT 1";
break;
#
#-----[ AFTER ADD]------------------------------------------
#
case 'gender-male':
$sql = "SELECT COUNT(user_id) AS total_male
FROM " . USERS_TABLE . "
WHERE user_gender = '1'";
break;
case 'gender-female':
$sql = "SELECT COUNT(user_id) AS total_female
FROM " . USERS_TABLE . "
WHERE user_gender = '2'";
break;
#
#-----[ FIND ]------------------------------------------
#
case 'topiccount':
return $row['topic_total'];
break;
#
#-----[ AFTER ADD]------------------------------------------
#
case 'gender-male':
return $row['total_male'];
break;
case 'gender-female':
return $row['total_female'];
break;
#
#-----[ OPEN ]------------------------------------------
#
index.php
#
#-----[ FIND ]------------------------------------------
#
$total_posts = get_db_stat('postcount');
$total_users = get_db_stat('usercount');
#
#-----[ AFTER ADD]------------------------------------------
#
$total_male = get_db_stats('gender-male');
$total_female = get_db_stats('gender-female');
#
#-----[ FIND ]------------------------------------------
#
if( $total_users == 0 )
{
$l_total_user_s = $lang['Registered_users_zero_total'];
}
else if( $total_users == 1 )
{
$l_total_user_s = $lang['Registered_user_total'];
}
else
{
$l_total_user_s = $lang['Registered_users_total'];
}
#
#-----[ AFTER ADD]------------------------------------------
#
if( $total_male == 0 )
{
$l_total_male = $lang['male_zero_total'];
}
else if( $total_male == 1 )
{
$l_total_male = $lang['male_one_total'];
}
else
{
$l_total_male = $lang['male_total'];
}
if( $total_female == 0 )
{
$l_total_female = $lang['female_zero_total'];
}
else if( $total_female == 1 )
{
$l_total_female = $lang['female_one_total'];
}
else
{
$l_total_female = $lang['female_total'];
}
#
#-----[ FIND ]------------------------------------------
#
'TOTAL_USERS' => sprintf($l_total_user_s, $total_users),
#
#-----[ AFTER ADD]------------------------------------------
#
'TOTAL_MALE' => sprintf($l_total_male, $total_male),
'TOTAL_FEMALE' => sprintf($l_total_female, $total_female),
#
#-----[ OPEN ]------------------------------------------
#
templates/xxx/index_body.tpl
#
#-----[ FIND ]------------------------------------------
#
{TOTAL_USERS}<br />{NEWEST_USER}
#
#-----[ AFTER, ADD ]------------------------------------------
#
<br /><br /><b>Battle of the Sexes</b><br /><br />{TOTAL_FEMALE}<br />{TOTAL_MALE}
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------- -----
#
# EoM
В последствии, был установлен мод - Hide Zero Posters 2.0.0. Он скрывает всех пользователей, которые не активизировали себя (не сделали ни одного сообщения).
После чего получилась такая штука. На главной странице, где отображается общее кол-во пользователей видим следущее:
(пример)
Общее кол-во пользователей 100
Женского рода 50
Мужского 120
То есть, в базу данных при регистрации пользователя отправляется плюсом (+) новый юзер, который выбрал свой пол. При последующем его удалении из форума, число пользователей по родам - не обновляется.
Получается, что данный мод обновляет кол-во пользователей по родам только в плюсовую сторону (+)
Если можно, подскажите, как решить проблему, как сделать Resync для этого мода, и как его поженить на Hide Zero Posters 2.0.0.
Чтобы все значения были точными, и проблема была бы решена...
Добавлено спустя 33 минуты 30 секунд:
Забыл приложить мод...
Добавлено спустя 1 минуту 21 секунду:
Главная суть в том, что пользователи считаются только те, кто сделал хотя бы один пост. Батл оф сексес так не считает )