Wieviele gestartete Beiträge haben Antwort

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Wieviele gestartete Beiträge haben Antwort

Beitrag von Holger »

Im Profil wird ja angezeigt, wieviele Beiträge ein Mitglied geschrieben hat.

Ich wäre an einem Mod intressiert, der anzeigt, wieviele Threads ein User gestartet hat und wieviele davon schon mindestens eine Antwort haben.

Also:
19 gestartet/17 mit Antwort(en)
Wird in phpBB überhaupt registriert, ob ein Beitrag der erste im Thread ist?

/Holger
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ja, im Topic wird die erste und letzte Post-ID desselben festgehalten.
Aber die Abfrage könnte einen Moment dauern, denn man muss ja durch alle Topics durch, die der User erstellt hat und mind. 1 Reply (wird glaub ich auch festgehalten) haben.
Sollte aber technisch nicht all zu schwer sein.
Ich versuche mich mal heute Nachmittag da dran...

Aber BTW:
Bedenke, daß eine "überladene" Profilansicht mit 1.001 Informationen und Abfragen eher abschrecken, gerade auch solche Ministatisken, wie diese Anfrage auch darstellt.
Ich überlege, ob ich bei mir nicht wieder das ein oder andere aus der Profilansicht entferne, um wieder mehr Übersicht zu erhalten und ggf. eine 2. Seite dafür einfüge...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Es gibt bereits einen MOD der im Profil anzeigt wie viele Topics der User gestartet hat. Der müsste nur bezüglich der Antworten erweitert werden.

In der DB wird die id des ersten und des letzten Beitrags in der Topics tabelle gespeichert. Wie viele Beiträge ein thread hat jedoch nicht. Das ist aber nicht weiter schlimm. Denn wenn die letzte id von der ersten abweicht, existiert logischerweise mindestens eine Antwort. ;)
Das wird vom phpBB übrigens auch bereits genutzt. Und zwar bei der suche nach unbeantworteten Beiträgen.

@ oxpus
Das stimmt, viele Profile sind absolut überladen und bieten teilweise Informationen die kein Schwein Interessiert.
Hier auf oxpus.de finde ich jedoch das es noch erträglich ist. Eine zweite Seite würde ich hier nur einführen wenn du noch weitere Informationen einfügen möchtest.
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

@Holger
Mit dem folgenden Snippet sollte nun alles passen:

Code: Alles auswählen

#
#-----[ OPEN ]-----
#
includes/usercp_viewprofile.php

#
#-----[ FIND ]-----
#
make_jumpbox('viewforum.'.$phpEx);

#
#-----[ AFTER, ADD ]-----
#
// Count topics posted by this user
$sql = "SELECT topic_id, topic_replies FROM " . TOPICS_TABLE . "
	WHERE topic_poster = " . $profiledata['user_id'];
if (!($result = $db->sql_query($sql)))
{
	message_die(GENERAL_ERROR, 'Could not count users topics', '', __LINE__, __FILE__, $sql);
}

$user_topics = 0;
$user_topic_replies = 0;

while ($row = $db->sql_fetchrow($result))
{
	$user_topics++;
	if ($row['topic_replies'])
	{
		$user_topic_replies++;
	}
}
$db->sql_freeresult($result);

if ($user_topics)
{
	$l_user_topics = sprintf($lang['User_total_topics_stats'], $user_topics, $user_total_replies);
}
else
{
	$l_user_topics = $lang['User_total_topics_stats_no'];
}

#
#-----[ FIND ]-----
#
	'POST_PERCENT_STATS' => sprintf($lang['User_post_pct_stats'], $percentage), 

#
#-----[ AFTER, ADD ]-----
#
	'USER_TOPIC_STATS' => $l_user_topics,

#
#-----[ FIND ]-----
#
	'L_INTERESTS' => $lang['Interests'],

#
#-----[ AFTER, ADD ]-----
#
	'L_USER_TOPIC_STATS' => $lang['User_total_topics_stats_explain'],

#
#-----[ OPEN ]-----
#
language/lang_english/lang_main.php

#
#-----[ FIND ]-----
#
?>

#
#-----[ BEFORE, ADD ]-----
#
$lang['User_total_topics_stats'] = '%s topics started / %s of them have replies';
$lang['User_total_topics_stats_no'] = 'No topics till now';
$lang['User_total_topics_stats_explain'] = 'Number of Topics by this user';

#
#-----[ OPEN ]-----
#
language/lang_german/lang_main.php

#
#-----[ FIND ]-----
#
?>

#
#-----[ BEFORE, ADD ]-----
#
$lang['User_total_topics_stats'] = '%s Topics gepostet / %s davon mit Antworten';
$lang['User_total_topics_stats_no'] = 'Keine Topics zur Zeit';
$lang['User_total_topics_stats_explain'] = 'Anzahl Topics des Users';

#
#-----[ OPEN ]-----
#
templates/subSilver/profile_view_body.tpl

#
#-----[ FIND ]-----
#
		<tr>
		  <td valign="top" align="right" nowrap="nowrap"><span class="gen">{L_INTERESTS}:</span></td>
		  <td> <b><span class="gen">{INTERESTS}</span></b></td>
		</tr>

#
#-----[ AFTER, ADD ]-----
#
		<tr>
		  <td valign="top" align="right" nowrap="nowrap"><span class="gen">{L_USER_TOPIC_STATS}:</span></td>
		  <td> <b><span class="gen">{USER_TOPIC_STATS}</span></b></td>
		</tr>


#
#-----[ SAVE/CLOSE ALL FILES ]-----
#
# EoM
Tipselfehler eingeschlossen ;)

@AmigaLink
Danke, aber ich werde die Profilansicht nochmal überarbeiten. Mir ist die zu voll...
Vielleicht auch nur das ausblenden (auf Knopfdruck dann einblenden), was nicht sofort interessiert.
Und dem User selber (ich habe ja bereits schon länger eine Ansicht für das eigene und fremde Profile) nur das anzeigen, was sich ohne oder nur indirekt durch seine Aktionen ändert. Alles andere kennt er ja auch bereits...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Danke! Wird getestet!

/H
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
Antworten