Benutzergruppe(n) in Viewtopic(.php) anzeigen

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
tafkat
Beiträge: 13
Registriert: Mo 18.Apr, 2011 00:18

Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von tafkat »

Hallöle, ich hoffe das ich hier nun richtig bin mit dem anliegen.. .

Ich suche derzeit nach einer möglichkeit die Benutzergruppen in der jemand ist im jeweiligen Beitrag anzeigen zu lassen.
Zumindest habe ich schon herausgefunden das dazu wohl die viewtopic.php und die viewtopic_body.tpl geändert werden müssten.
Eine auflistung der entsprechenden Gruppen soll irgendwo unterhalb des Avatars stattfinden.. .

Vor einiger Zeit hab ich schon eine mod eingebaut die jedoch nicht wirklich funktioniert.
Deswegen wende ich mich mal vertrauensvoll an oxpus.

Forenversion: phpBB 2.0.23


Beste Grüße
tafkat
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von oxpus »

Vor einiger Zeit hab ich schon eine mod eingebaut die jedoch nicht wirklich funktioniert.
Welche war denn das?
Denn ich würde diese empfehlen:
http://www.oxpus.de/downloads.php?view=detail&df_id=114
Diese MOD liese sich auch bequem für die viewtopic.php verwenden...
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!
tafkat
Beiträge: 13
Registriert: Mo 18.Apr, 2011 00:18

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von tafkat »

Hallöle,

genau diese mod hab ich bereits schon eingebaut und die funktioniert auch, jedoch bei mir eben nur in der profile_view_body.tpl.
Den ein- oder umbau für die viewtopic.php und entsprechende *.tpl file hatte ich auch mal vorgenommen.
Allerdings kam bei mir dort immer die Fehlermeldung "Could not read groups...." usw.

Muss auch sagen das ich mit php einigermaßen zurecht komme aber bei weitem nicht alles kann oder kenne.

Ist es möglich vielleicht einen kleinen Hinweis zu bekommen wo der Fehler liegen kann ?

P.S.
die mod die ich vorher ohne erfolg probiert habe ist: http://www.phpbbhacks.com/download/221
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von oxpus »

Verstehe ich nicht.
Die MOD ist auch für die viewtopic.php/viewtopic_body.tpl gedacht.
Hast du vermutlich einen Einbaufehler gemacht?
Wenn, dann bräuchte ich schon die vollständige Fehlermeldung, sonst kann ich dir nicht wirklich helfen.
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!
tafkat
Beiträge: 13
Registriert: Mo 18.Apr, 2011 00:18

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von tafkat »

Auszugsweise: viewtopic_body.tpl

Code: Alles auswählen

 <span class="postdetails">{postrow.POSTER_RANK}
  <br />
  {postrow.RANK_IMAGE}
  <br />
  {postrow.POSTER_AVATAR}
  <br />
  {L_USERGROUPS}:
<!-- BEGIN groups -->
{groups.L_GROUP_NAME}<br>
<!-- END groups -->
 </span>
 <br />
Auszugsweise: viewtopic.php

Code: Alles auswählen

		'U_MINI_POST' => $mini_post_url,
		'U_POST_ID' => $postrow[$i]['post_id'])
	);
}

//-- mod : groupes -----------------------------------------------------------------------------------
//-- add
$user_id = $userdata['user_id'];
$view_user_id = $profiledata['user_id'];
$groups = array();
$sql = '
	SELECT
		g.group_id,
		g.group_name,
		g.group_description,
		g.group_type
	FROM
		'.USER_GROUP_TABLE.' as l,
		'.GROUPS_TABLE.' as g
	WHERE
		l.user_pending = 0 AND
		g.group_single_user = 0 AND
		l.user_id ='. $view_user_id.' AND
		g.group_id = l.group_id
	ORDER BY
		g.group_name,
		g.group_id';
if ( !($result = $db->sql_query($sql)) ) message_die(GENERAL_ERROR, 'Could not read groups', '', __LINE__, __FILE__, $sql);
while ($group = $db->sql_fetchrow($result)) $groups[] = $group;

$template->assign_vars(array(
	'L_USERGROUPS' => $lang['Usergroups'],
	)
);
if (count($groups) > 0)
{
	for ($i=0; $i < count($groups); $i++)
	{
		$is_ok = false;
		//
		// groupe invisible ?
		if ( ($groups[$i]['group_type'] != GROUP_HIDDEN) || ($userdata['user_level'] == ADMIN) )
		{
			$is_ok=true;
		}
		else
		{
			$group_id = $groups[$i]['group_id'];
			$sql = 'SELECT * FROM '.USER_GROUP_TABLE.' WHERE group_id='.$group_id.' AND user_id='.$user_id.' AND user_pending=0';
			if ( !($result = $db->sql_query($sql)) ) message_die(GENERAL_ERROR, 'Couldn\'t obtain viewer group list', '', __LINE__, __FILE__, $sql);
			$is_ok = ( $group = $db->sql_fetchrow($result) );
		}  // end if ($view_list[$i]['group_type'] == GROUP_HIDDEN)
		//
		// groupe visible : afficher
		if ($is_ok)
		{
			$u_group_name = append_sid("groupcp.php?g=".$groups[$i]['group_id']);
			$l_group_name = $groups[$i]['group_name'];
			$l_group_desc = $groups[$i]['group_description'];
			$template->assign_block_vars('groups',array(
				'U_GROUP_NAME' => $u_group_name,
				'L_GROUP_NAME' => $l_group_name,
				'L_GROUP_DESC' => $l_group_desc,
				)
			);
		}  // end if ($is_ok)
	}  // end for ($i=0; $i < count($groups); $i++)
}  // end if (count($groups) > 0)
//-- mod : groupes -----------------------------------------------------------------------------------


$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

?>
Fehlermeldung:
Could not read groups

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 'AND g.group_id = l.group_id ORDER BY g.group_name, g.group_id' at line 12

SELECT g.group_id, g.group_name, g.group_description, g.group_type FROM phpbb_user_group as l, phpbb_groups as g WHERE l.user_pending = 0 AND g.group_single_user = 0 AND l.user_id = AND g.group_id = l.group_id ORDER BY g.group_name, g.group_id

Line : 1236
File : viewtopic.php
Line 1236 viewtopic.php

Code: Alles auswählen

if ( !($result = $db->sql_query($sql)) ) message_die(GENERAL_ERROR, 'Could not read groups', '', __LINE__, __FILE__, $sql);
MADxHAWK
Beiträge: 132
Registriert: Mi 15.Nov, 2006 13:40
Wohnort: Bonn
Kontaktdaten:

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von MADxHAWK »

Der Fehler sagt aus, das im sqlquerry kein wert für das Feld l.user_id übergeben wird, wie man hier sieht.
...AND l.user_id = AND g.group_id = l.group_id...

Laut Query müsste es die variable $view_user_id sein, der die Userid über $profiledata['user_id'] zugewiesen wird. Diese Variable scheint in der Viewtopic.php nicht vorhanden zu sein.
Wenn ich mich recht erinner, müsstest du beim phpBB2 die Zeile

Code: Alles auswählen

$view_user_id = $profiledata['user_id'];
aus deinem Code ändern in:

Code: Alles auswählen

$view_user_id = $poster_id;
-MAD
tafkat
Beiträge: 13
Registriert: Mo 18.Apr, 2011 00:18

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von tafkat »

Danke Danke.. das hat schon mal geholfen... zumindest kommt keine Fehlermeldung mehr.

Jedoch werden die Gruppen auch nicht aufgelistet.. .
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von oxpus »

Häng mal bitte die viewtopic.php hier an (als Zip- oder Rar-Archivfile).
Dann schaue ich mir die Installation heute Nachmittag mal an.
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!
tafkat
Beiträge: 13
Registriert: Mo 18.Apr, 2011 00:18

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von tafkat »

Häng mal bitte die viewtopic.php hier an (als Zip- oder Rar-Archivfile).

Erledigt. =>
viewtopic.zip
Kann es ggf. auch damit zusammen hängen das quasi eine Gruppe in der Gruppe nicht verarbeitet werden kann ?

Auszug viewtopic_body.tpl

Code: Alles auswählen

<!-- BEGIN postrow -->
[...]
   <!-- BEGIN groups -->
     {groups.L_GROUP_NAME}<br>
   <!-- END groups -->
[...]
<!-- END postrow -->
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von oxpus »

Öhm, du hast jetzt entweder die MOD von hier "stur" in der viewtopic.php verbaut oder gemischt.
Mach bitte alles rückgängig und verwende nur die MOD von phpBBhacks.com, die du verlinkt hast.
Die ist deutlich moderner und sollte auch problemlos funktionieren.
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!
tafkat
Beiträge: 13
Registriert: Mo 18.Apr, 2011 00:18

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von tafkat »

ehm... in wiefern vermischt ?

Die mod stammt von phpBB Hacks die hier vom Board aus verlinkt wurde.
Link oxpus: http://www.oxpus.de/downloads.php?view=detail&df_id=114
Link phpBB Hacks: http://www.phpbbhacks.com/viewhack.php?id=1011

Ja, der Code ist quasi "stur" in die Viewtopic.php eingefügt.. ganz unten.
Die einzige änderung die ich ja vornehmen musste war eben die Variable $view_user_id = $poster_id;.

Trotzdem wird in der Viewtopic Template, trotz

Code: Alles auswählen

<!-- BEGIN groups -->
{groups.L_GROUP_NAME}<br>
<!-- END groups -->
nichts angezeigt.

Mein verdacht war, das es ggf. eben mit diesem <!-- BEGIN groups --> zusammenhängt weil vorher bereits eine andere "Schleife" geöffnet wird (<!-- BEGIN postrow -->).
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von oxpus »

Die MOD von hier ist aber NICHT für die viewtopic.php gedacht, sondern ausschliesslich für de MItgliederliste.
Daher bitte diese ausbauen und NUR die von phpbbhacks.com verwenden.
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!
tafkat
Beiträge: 13
Registriert: Mo 18.Apr, 2011 00:18

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von tafkat »

d.h. nachfolgender Link wäre also die richtige mod ?
=> http://www.phpbbhacks.com/download/221

EDIT:
Auch diese mod funktioniert nicht !
Die jeweilitge Benutzgruppe wird nur im letzten Beitrag in der viewtopic angezeigt.
Den Code hab ich nun dre mal eingebaut, deswegen schließ ich einen einbaufehler erst mal auch aus.
tafkat
Beiträge: 13
Registriert: Mo 18.Apr, 2011 00:18

Re: Benutzergruppe(n) in Viewtopic(.php) anzeigen

Beitrag von tafkat »

Ich möchte zwar nicht meinen eigenen Beitrag pushen aber ich glaub ich gebs auf.. .
Leider funktioniert keiner der Codes die ich bisher im Netz finden konnte.
Antworten