Seite 1 von 1
Anzahl Downloads per User anzeigen
Verfasst: Fr 23.Nov, 2007 09:32
von Holger
Hi,
könnte man in der Memberlist oder in viewtopic die Anzahl der Downloads eines Users anzeigen?
Also, wieviele Downloads ein User gemacht hat?
Vielleicht nur für Admins und Mods sichbar.
Gruss
Holger
Verfasst: Fr 23.Nov, 2007 09:34
von oxpus
Das ginge schon, man müsste dazu aber die Statistikdaten des MODs auslesen und das kann, wenn es nicht anders geht, eine Abfrage je User bedeuten...
Verfasst: Fr 23.Nov, 2007 09:38
von Holger
Tja, wäre in der Memberlist ja nicht SOOOO schlimm ...
Verfasst: Fr 23.Nov, 2007 09:44
von oxpus
Ich bastel da mal was...
Nachher...
Verfasst: Fr 23.Nov, 2007 09:52
von Holger
Verfasst: Fr 23.Nov, 2007 17:37
von oxpus
Also hier mal für die Mitgliederliste:
Code: Alles auswählen
#
#-----[ OPEN ]-----
#
memberlist.php
#
#-----[ FIND ]-----
#
make_jumpbox('viewforum.'.$phpEx);
#
#-----[ AFTER, ADD ]-----
#
$sql = "SELECT count(id) as dl_counts, user_id FROM " . DL_STATS_TABLE . "
WHERE direction = 0
AND user_id = " . $user_id
GROUP BY user_id";
if(!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not query latest ten downloads', '', __LINE__, __FILE__, $sql);
}
$user_downloads = array();
while ($row = $db->sql_fetchrow($result))
{
$user_downloads[$row['user_id']] = $row['dl_counts'];
}
$db->sql_fetchrow($result);
#
#-----[ FIND ]-----
#
'L_PM' => $lang['Private_Message'],
#
#-----[ AFTER, ADD ]-----
#
'L_DOWNLOADS' => $lang['Downloads'],
#
#-----[ FIND ]-----
#
'YIM' => $yim,
#
#-----[ AFTER, ADD ]-----
#
'DOWNLOADS' => $user_downloads[$user_id],
#
#-----[ OPEN ]-----
#
templates/subSilver/memberlist_body.tpl
#
#-----[ FIND]-----
#
<th class="thTop" nowrap="nowrap">{L_POSTS}</th>
#
#-----[ AFTER, ADD]-----
#
<th class="thTop" nowrap="nowrap">{L_DOWNLOADS}</th>
#
#-----[ FIND ]-----
#
<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen">{memberrow.POSTS}</span></td>
#
#-----[ AFTER, ADD]-----
#
<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gen">{memberrow.DOWNLOADS}</span></td>
#
#-----[ FIND ]-----
#
<td class="catBottom" colspan="8" height="28"> </td>
#
#-----[ IN-LINE FIND ]-----
#
colspan="8"
#
#-----[ IN-LINE REPLACE WITH ]-----
#
colspan="9"
#
#-----[ SAVE/CLOSE ALL FILES ]-----
#
# EoM
Für die Gruppenansicht mehr oder weniger analog, hier ist aber $user_id eine andere Variable.
Funktioniert aber auch nur dann, wenn die erweiterten Statistiken in den einzelnen Kategorien eingeschaltet sind. Und auch nur bis zur eingestellten Pruning-Anzahl.
Der MOD hält an sonst keiner anderen Stelle die Downloads je User fest!
Verfasst: Mi 28.Nov, 2007 19:22
von schneider
Danke erstmal, dass war genau das, was ich gesucht habe Ich hab den Snippet bei mir eingebaut, jedoch bekomme ich nur folgende Fehlermeldung:
Parse error: syntax error, unexpected T_STRING in /www/htdocs/w005fed2/memberlist.php on line 107
Kann mir jemand bitte helfen, den Fehler zu finden? Danke! ¢¦
Verfasst: Mi 28.Nov, 2007 19:46
von oxpus
Wenn Du die betreffende Zeile inkl. einiger Zeilen davor postest, vielleicht.
Verfasst: Mi 28.Nov, 2007 23:42
von schneider
Danke für die schnelle Antwort!
Hier die Zeilen 96 bis 118:
Code: Alles auswählen
$page_title = $lang['Memberlist'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'memberlist_body.tpl')
);
make_jumpbox('viewforum.'.$phpEx);
$sql = "SELECT count(id) as dl_counts, user_id FROM " . DL_STATS_TABLE . "
WHERE direction = 0
AND user_id = " . $user_id
GROUP BY user_id";
if(!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not query latest ten downloads', '', __LINE__, __FILE__, $sql);
}
$user_downloads = array();
while ($row = $db->sql_fetchrow($result))
{
$user_downloads[$row['user_id']] = $row['dl_counts'];
}
$db->sql_fetchrow($result);
Die Zeile 107 ist die, die mit GROUP anfängt. Danke!
Grüße
Verfasst: Do 29.Nov, 2007 08:15
von oxpus
Bei diesem Ausschlitt fehlt in der Zeile 11 noch ." am Ende.
Also die Zeile
muss so lauten:
So gehts aber auch:
Verfasst: Do 29.Nov, 2007 19:20
von schneider
Danke schon mal für die Lösung, nun hab ich aber ein weiteres Problem. Folgende Fehlermeldung kommt nun:
Could not query latest ten downloads
DEBUG MODE
SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP BY user_id' at line 4
SELECT count(id) as dl_counts, user_id FROM phpbb_dl_stats WHERE direction = 0 AND user_id = GROUP BY user_id
Line : 110
File : memberlist.php
Was habe ich diesmal falsch gemacht?

Verfasst: Do 29.Nov, 2007 22:26
von oxpus
Du musst $user_id eintragen.
In der Memberlist wird das bereits getan, sollte also funktionieren.
Solange der Code
nach
eingetragen wird.