user online liste nur für bestimmte usergruppe

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt um einen neuen Mod zu entwicklen, geht's in phpBB 2.0: Mods in Entwicklung weiter.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

kein Problem, ist nicht dringend - danke trotzdem erstmal für die tolle Unterstützung :)
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

öffne includes\page_header.php
Suche

Code: Alles auswählen

//
// The following assigns all _common_ variables that may be used at any point
// in a template.
//
Füge danach ein

Code: Alles auswählen

// Let's see if the user is allowed to watch the who is online list
$sql = 'SELECT count(g.group_id) AS total
FROM ' . USER_GROUP_TABLE . ' ug, ' . GROUPS_TABLE . ' g
	WHERE g.group_woil = ' . WOIL_PERMITED . '
		AND g.group_id = ug.group_id
		AND ug.user_id = ' . $userdata['user_id'];

if ( !$result = $db->sql_query($sql) )
{
	message_die(GENERAL_ERROR, 'Could not get permissions.', '', __LINE__, __FILE__, $sql);
}
if ( !($row = $db->sql_fetchrow($result)) )
{
	message_die(GENERAL_ERROR, 'Could not obtain next user_id information', '', __LINE__, __FILE__, $sql);
}
if ( $row['total'] == 0 )
{
	$online_userlist = '';
}
$db->sql_freeresult($result);
Öffne viewonline.php
Suche

Code: Alles auswählen

if (!$userdata['session_logged_in'] ) 
{ 
  redirect(append_sid("login.$phpEx?redirect=viewonline.$phpEx", true)); 
}
Ersetze mit:

Code: Alles auswählen

// Let's see if the user is allowed to watch the who is online list
$sql = 'SELECT count(g.group_id) AS total
FROM ' . USER_GROUP_TABLE . ' ug, ' . GROUPS_TABLE . ' g
	WHERE g.group_woil = ' . WOIL_PERMITED . '
		AND g.group_id = ug.group_id
		AND ug.user_id = ' . $userdata['user_id'];

if ( !$result = $db->sql_query($sql) )
{
	message_die(GENERAL_ERROR, 'Could not get permissions.', '', __LINE__, __FILE__, $sql);
}
if ( !($row = $db->sql_fetchrow($result)) )
{
	message_die(GENERAL_ERROR, 'Could not obtain next user_id information', '', __LINE__, __FILE__, $sql);
}
if ( $row['total'] == 0 )
{
	redirect(append_sid("login.$phpEx?redirect=viewonline.$phpEx", true));
}
$db->sql_freeresult($result);
funktioniert das soweit? und ich nehme an da muss noch ein wenig mehr weg, oder? aber was soll weg? *auf die Index seite deutet*
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

Super Danke :) :)

Das ist so wie ich es haben will - ich hab zwar noch ein paar andere Ideen für mein Forum, aber die werd ich später in Angriff nehmen ;)

btw.

folgende Zeile aus dem code:
WHERE g.group_woil = ' . WOIL_PERMITED

sollte
WHERE g.group_wiol = ' . WIOL_PERMITED

heissen. Hoffe du bist nicht böse wenn ich das mal einfach so hier hinschreibe, ist nur ein kleiner Buchstabendreher - falls noch jemand diese Anleitung verwendet ;)

Danke nochmals dafür @shwepsi - super Arbeit :)
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

*lach*
nee, ich habe etwas ähnliches, aber Steckbriefe (oder Stuck_letters) und die im Profil halt mit drinnen

beim abschauen und umbennen der Variablen stuck_letter und sl in WIOL ist mir da halt ein Fehler unterlaufen *gg*

naja, viel Erfolg noch *wink*
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

hallo,

einen kleinen Fehler gibts da noch, bin eben erst draufgekommen.
wenn ich auf "Benutzer suchen" gehe, im ACP oder bei den Benutzergruppen, kommt folgende Fehlermeldung:
Allgemeiner Fehler

Could not get permissions.

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 '' at line 5

SELECT count(g.group_id) AS total FROM phpbb_user_group ug, phpbb_groups g WHERE g.group_wiol = 1 AND g.group_id = ug.group_id AND ug.user_id =

Line : 363
File : page_header.php





Powered by phpBB © 2001, 2005 phpBB Group
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

ok, ich habe das mal bei mir probiert ... aber das ist da kein Problem ... da gibt es diese Abfrage nicht mal ...

welche Mods hast du eingebaut?
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

ich hab das Portal 1.50 incl. Intro + Portal Wetter Addon von AWSW und passwordlength 1.0.0 von Leuchte

Hier noch der Codeausschnitt:

Zeile 363 wäre "message_die(GENERAL_ERROR, 'Could not get permissions.', '', __LINE__, __FILE__, $sql); "

Code: Alles auswählen

// Let's see if the user is allowed to watch the who is online list 
$sql = 'SELECT count(g.group_id) AS total 
FROM ' . USER_GROUP_TABLE . ' ug, ' . GROUPS_TABLE . ' g 
WHERE g.group_wiol = ' . WIOL_PERMITED . ' 
AND g.group_id = ug.group_id 
AND ug.user_id = ' . $userdata['user_id']; 

if ( !$result = $db->sql_query($sql) ) 
{ 
message_die(GENERAL_ERROR, 'Could not get permissions.', '', __LINE__, __FILE__, $sql); 
} 
if ( !($row = $db->sql_fetchrow($result)) ) 
{ 
message_die(GENERAL_ERROR, 'Could not obtain next user_id information', '', __LINE__, __FILE__, $sql); 
} 
if ( $row['total'] == 0 ) 
{ 
$online_userlist = ''; 
} 
$db->sql_freeresult($result);
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

holzi12 hat geschrieben:ich hab das Portal 1.50 incl. Intro + Portal Wetter Addon von AWSW und passwordlength 1.0.0 von Leuchte

Hier noch der Codeausschnitt:

Zeile 363 wäre "message_die(GENERAL_ERROR, 'Could not get permissions.', '', __LINE__, __FILE__, $sql); "

Code: Alles auswählen

// Let's see if the user is allowed to watch the who is online list 
$sql = 'SELECT count(g.group_id) AS total 
FROM ' . USER_GROUP_TABLE . ' ug, ' . GROUPS_TABLE . ' g 
WHERE g.group_wiol = ' . WIOL_PERMITED . ' 
AND g.group_id = ug.group_id 
AND ug.user_id = ' . $userdata['user_id']; 

if ( !$result = $db->sql_query($sql) ) 
{ 
message_die(GENERAL_ERROR, 'Could not get permissions.', '', __LINE__, __FILE__, $sql); 
} 
if ( !($row = $db->sql_fetchrow($result)) ) 
{ 
message_die(GENERAL_ERROR, 'Could not obtain next user_id information', '', __LINE__, __FILE__, $sql); 
} 
if ( $row['total'] == 0 ) 
{ 
$online_userlist = ''; 
} 
$db->sql_freeresult($result);
holla ... das wundert mich jetzt - da muss ich mich leider in die Dateien einlesen, falls jemand weiss warum?
ich denke ich brauche 1, 2 Tage
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

hmm, das könnte Abhilfe schaffen

Suche:

Code: Alles auswählen

// Let's see if the user is allowed to watch the who is online list 
Füge danach ein:

Code: Alles auswählen

if ( !isset($userdata['user_id']) )
{
	$wiol_uid = -1;
}
else
{
	$wiol_uid = $userdata['user_id'];
}
suche:

Code: Alles auswählen

AND ug.user_id = ' . $userdata['user_id'];
ersetze:

Code: Alles auswählen

AND ug.user_id = ' . $wiol_uid;
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
holzi12
Mitglied
Beiträge: 22
Registriert: 21.07.2005 10:07

Beitrag von holzi12 »

Danke, du bist ein Genie, jetzt funktioniert es :)
Antworten

Zurück zu „phpBB 2.0: Mod Suche/Anfragen“