Seite 1 von 2

[ERLEDIGT] häufigsten postenden Benutzer diesen Monat (Sta..

Verfasst: 06.06.2007 16:13
von wwwthomasbauerattf
hab den Statistik Mod Version 2.1.5

und eine statistik lautet:

Die am häufigsten postenden Benutzer diesen Monat [Juni 2007]


ich bräuchte aber auch die am häufigsten postenden Benutzer aller vergangenen Monate seit es mein Forum gibt... ist das irgendwie möglich?

im nächsten post findet ihr die php-datei wo man das ändern muss

wie man das monat ändern kann weiß ich schon

man ändert

$time_thismonth = $month[$arr_num];

in

$time_thismonth = $month [12];


aber das jahr auf 2006 zu ändern ist mir nicht gelungen? bitte um hilfe

Verfasst: 06.06.2007 16:24
von wwwthomasbauerattf

Code: Alles auswählen

<?php
/***************************************************************************
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 ***************************************************************************/

//
// Top Posting Users This Week (History Mod adaption)
//
$statistics->init_bars();

$month = array();
$current_time = time();
$year = create_date('Y', $current_time, $board_config['board_timezone']);
$month [0] = mktime (0,0,0,1,1, $year);
$month [1] = $month [0] + 2678400;
$month [2] = mktime (0,0,0,3,1, $year);
$month [3] = $month [2] + 2678400;
$month [4] = $month [3] + 2592000;
$month [5] = $month [4] + 2678400;
$month [6] = $month [5] + 2592000;
$month [7] = $month [6] + 2678400;
$month [8] = $month [7] + 2678400;
$month [9] = $month [8] + 2592000;
$month [10] = $month [9] + 2678400;
$month [11] = $month [10] + 2592000;
$month [12] = $month [11] + 2592000;
$arr_num = (date('n')-1);
$time_thismonth = $month[$arr_num];

$l_this_month = create_date('F', $time_thismonth, $board_config['board_timezone']);

$template->assign_vars(array(
	'L_MODULE_NAME' => $lang['module_name'],
	'MONTH' => sprintf($lang['Month'], ($l_this_month . ' ' . create_date('Y', $time_thismonth, $board_config['board_timezone'])) ),
	'L_RANK' => $lang['Rank'],
	'L_PERCENTAGE' => $lang['Percent'],
	'L_GRAPH' => $lang['Graph'],
	'L_USERNAME' => $lang['Username'],
	'L_POSTS' => $lang['Posts'])
);

$sql = "select u.user_id, u.username, count(u.user_id) as user_posts  
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p 
WHERE (u.user_id = p.poster_id) AND (p.post_time > '" . $time_thismonth . "') AND (u.user_id <> " . ANONYMOUS . ")
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT " . $return_limit;

if ( !($result = $stat_db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, "Couldn't retrieve topposters data", "", __LINE__, __FILE__, $sql);
}

$total_posts_thismonth = 0;
$user_count = $stat_db->sql_numrows($result);
$user_data = $stat_db->sql_fetchrowset($result);
$firstcount = $user_data[0]['user_posts'];

for ($i = 0; $i < $user_count; $i++)
{
	$total_posts_thismonth += $user_data[$i]['user_posts'];
}

for ($i = 0; $i < $user_count; $i++)
{
	$class = ($i % 2) ? $theme['td_class2'] : $theme['td_class1'];
	
	$statistics->do_math($firstcount, $user_data[$i]['user_posts'], $total_posts_thismonth);

	$template->assign_block_vars('top_posters', array(
		'RANK' => $i+1,
		'CLASS' => $class,
		'USERNAME' => $user_data[$i]['username'],
		'PERCENTAGE' => $statistics->percentage,
		'BAR' => $statistics->bar_percent,
		'URL' => append_sid($phpbb_root_path . 'profile.php?mode=viewprofile&u=' . $user_data[$i]['user_id']),
		'POSTS' => $user_data[$i]['user_posts'])
	);
}

?>

Verfasst: 17.06.2007 13:40
von wwwthomasbauerattf
kann mir keiner helfen? ich denke schon das das irgendwie möglich ist...

Re: häufigsten postenden Benutzer diesen Monat (Statistik Mo

Verfasst: 18.06.2007 13:14
von cbrkiter
Mal eine Verständnisfrage... Du schreibst
wwwthomasbauerattf hat geschrieben:ich bräuchte aber auch die am häufigsten postenden Benutzer aller vergangenen Monate seit es mein Forum gibt... ist das irgendwie möglich?
Soll das soviel heißen wie "Die am häufigsten postenden Benutzer"?

Verfasst: 18.06.2007 13:28
von wwwthomasbauerattf
ja genau

bräuchte das deswegen:
weil immer der user mit den meisten posts in einem monat "user des monats" ist...
und jetzt möchte ich auch noch die user des monats der monate vom jahre 2006 ermitteln, aber ist mir bisher noch nicht gelungen...

Verfasst: 18.06.2007 13:52
von cbrkiter
hmmm... Schade. Ich wollte Dir eigentlich sagen, dass Du für "Die am häufigsten postenden Benutzer" einfach mal in Deiner Statistik hochscrollen solltest. Da wäre nämlich genau der Punkt.

Du möchtest aber ja doch was anderes. Das wäre dann wohl eine komplett neue zusätzliche Statistik.

Verfasst: 18.06.2007 14:00
von wwwthomasbauerattf
aber irgendwie sollte es schon möglich sein...

bei der statistik wird ja immer automatisch das aktuelle monat im aktuellen jahr angezeigt...

wie man das monat manuell ändern kann, hab ich schon herausgefunden...

aber wie man das jahr manuell ändern kann (von 07 auf 06) ist mir leider noch nicht gelungen...

Verfasst: 18.06.2007 14:15
von cbrkiter
Ich glaube, Du sucht den Ansatz an der falschen Stelle. Du möchtest doch eigentlich ein Ergebnis bzw. eine Tabelle haben, wie bei "Number of new posts by month". Der Unterschied soll jedoch sein, dass keine Zahlen in der Tabelle stehen, sondern die Usernamen. Hab ich Dich jetzt richtig verstanden?

Verfasst: 18.06.2007 14:25
von wwwthomasbauerattf
hm. das versteh ich jetzt nicht...

es sollte genauso ausschaun wie die statistik "Die am häufigsten postenden Benutzer diesen Monat" nur eben von einem vergangenen monat...

Verfasst: 18.06.2007 14:36
von cbrkiter
Ich habe Dich jetzt so verstanden, dass Du doch für JEDEN Monat den Topposter des Monats haben willst - ab Beginn des Forums. Also für JEDEN Monat und nicht nur vom letzten Monat. Ich dachte, Du wolltest sagen: im Monat x war User1 der Topposter - in Monat x+1 war User2 Topposter usw. :roll: