Query & PHP Anzeige in phpbb (functions)

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Mariella
Mitglied
Beiträge: 2
Registriert: 04.12.2017 12:23

Query & PHP Anzeige in phpbb (functions)

Beitragvon Mariella » 04.12.2017 12:34

Hallo Community,

ich habe nicht die passende Kategorie gefunden, ich hoffe diese hier ist soweit in Ordnung.

Folgende Frage (die für einen erfahrenen PHPler sicher einfach zu lösen ist, ich komme aber mit meinem casual-Wissen nicht auf die Lösung) habe ich an euch, nachdem ich nun einige Zeit erfolglos war:
Für die Anzeige der aktiven Online-Mitglieder in einem Chat gibts diesen Code-Schnipsel, der wunderbar funktioniert:

Code: Alles auswählen

   // Chatmitglieder von phpbb
   $chatters = '';
    $sql = 'SELECT u.user_id, u.username, u.user_colour FROM ajax_chat_online c, ' . USERS_TABLE . ' u
    WHERE c.userID = u.user_id';

   $result = $db->sql_query($sql);
    while ($row = $db->sql_fetchrow($result)) {   
       $chatters .= get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']) . ', ';
    }
    $db->sql_freeresult($result);

    if ($chatters == '') {$chatters = 'Keine Mitglieder im Chat';}
   else {$chatters = '<b>Im Chat:</b>&nbsp;</a>' . substr($chatters, 0, -2);}


Nun will ich aber auch Gäste anzeigen lassen und letztlich die (noch vereinfachte) Ausgabe des SQL-Querys
"SELECT userName FROM `ajax_chat_online` WHERE 1" mir anzeigen lassen.

Code: Alles auswählen

   // Chatgäste von phpbb
   
   $chatters = '';
    $sql = 'SELECT userName FROM `ajax_chat_online` WHERE 1';

   $result = $db->sql_query($sql);
   [color=#BF4040] while ($row = $db->sql_fetchrow($result)) {   
       $chatters .= get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']) . ', ';
    }[/color]
    $db->sql_freeresult($result);

    if ($chatters == '') {$chatters = 'Keine Mitglieder im Chat';}
   else {$chatters = '<b>Im Chat:</b>&nbsp;</a>' . substr($chatters, 0, -2);}


Ich komme aber überhaupt nicht zurecht mit
while ($row = $db->sql_fetchrow($result)) {
$chatters .= get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']) . ', ';

Ich verstehe schon was gemacht wird der Username aus einer der phpbb-Tabelle wird mit Farbe ausgegeben.

Wie aber müßte das nun lauten, wenn ich eben ohne die zweite Tabelle das anzeigen lassen will?
Falls jemand mir die Lösung sagen könnte, würde ich mich sehr freuen.

cpg
Mitglied
Beiträge: 386
Registriert: 24.11.2007 12:43
Kontaktdaten:

Re: Query & PHP Anzeige in phpbb (functions)

Beitragvon cpg » 04.12.2017 21:44

Moin,

vielleicht wäre es gut, sich das einmal anzuschauen:

How to display members of a custom user group in a custom color (phpBB3)

https://github.com/Frug/AJAX-Chat/wiki/ ... user-group

... und dann mal weiter tüfteln.

Um was für "Gäste" handelt es sich bei Dir? Man kann ohne Anmeldung/Registrierung chatten?
Heißen die Gäste alle "Gast" - oder können sie sich einen Namen aussuchen?

Gruß
cpg

Mariella
Mitglied
Beiträge: 2
Registriert: 04.12.2017 12:23

Re: Query & PHP Anzeige in phpbb (functions)

Beitragvon Mariella » 08.12.2017 10:26

Hallo cpg,

ich kenne die Website von github schon.
Es geht ja grundlegend nicht um die Erweiterung sondern um PHP, da ist es doch irrelevant welche Tabelle, welche User usw.

Ich moechte gerne Gaeste die im Chat sind auch anzeigen lassen und nicht nur die phpbb Mitglieder.
Ich tuefftel ja gerne, aber da verstehe ich PHP zu wenig, daher wende ich mich an das Forum, wenn ich selbst auf die loesung kommen koennte wuerde ich ja nicht in ein Forum schreiben.


lg

Benutzeravatar
Mahony
Ehemaliger
Beiträge: 10994
Registriert: 17.11.2005 22:33
Wohnort: Esslingen (Neckar)
Kontaktdaten:

Re: Query & PHP Anzeige in phpbb (functions)

Beitragvon Mahony » 08.12.2017 11:09

Hallo
Die Antwort von cpg war schon richtig. Wenn du das Snippet einbaust, kannst du die Gruppe Gäste (Gruppen-ID = 1) anzeigen lassen.

Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.


Zurück zu „Coding & Technik“