user_id eines beliebegen Users ohne zus. SQL-Abfrage

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.
Benutzeravatar
Gumfuzi
Ehemaliges Teammitglied
Beiträge: 2454
Registriert: 26.03.2004 22:25
Wohnort: Linz, AT
Kontaktdaten:

user_id eines beliebegen Users ohne zus. SQL-Abfrage

Beitrag von Gumfuzi »

Hallo!

Bastle gerade an einer Liste. Da habe ich mom nur die Usernamen, darum brauche ich zu dem jeweiligen Namen die passende user_id.

Habe mal wo gelesen, daß die komplett user_table sowieso auf jeder Seite verfügbar ist, da sie immer eingelesen wird.

Wie kann ich also die passende user_id auf einen eigenen phpbb-seite (innerhalb des boardes; common.php ist included) für jeden User rausfinden?

Danke für eure Hilfe!
Du kannst niemals alle mit deinem Tun begeistern. Selbst wenn du über's Wasser laufen kannst, kommt einer daher und fragt, ob du zu blöd zum Schwimmen bist.
https://www.deskmodder.de
Mario Siebert
Mitglied
Beiträge: 2295
Registriert: 09.12.2003 15:02
Wohnort: Irgendwo im Nirgendwo

Beitrag von Mario Siebert »

Habe mal wo gelesen, daß die komplett user_table sowieso auf jeder Seite verfügbar ist, da sie immer eingelesen wird.
Nur die ID des Users der sich momentan auf der Seite befindet ist global verfügbar mit $userdata['user_id'], du wirst also um eine SQL Abfrage nicht herumkommen.

Grüße Mario
Wer gegen eine geringe Gebühr (höhe der Gebühr bestimmst du selbst!!) ein phpBB installiert oder Mods eingebaut haben möchte sollte sich melden unter: netcom_service@gmx.net - Bisherige Aufträge 68.071
Auf Anfrage führe ich auch Reparaturen/Updates und Serverumzüge durch oder baue Mods!
Benutzeravatar
Gumfuzi
Ehemaliges Teammitglied
Beiträge: 2454
Registriert: 26.03.2004 22:25
Wohnort: Linz, AT
Kontaktdaten:

Beitrag von Gumfuzi »

Und den Teil in der common.php (vom Colour Grup Mod) kann ich mir nicht zunutze machen?

Code: Alles auswählen

$sql = "SELECT user_id, user_color_group, username FROM " . USERS_TABLE;
if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not read user color groups', '', __LINE__, __FILE__, $sql);
}

$colorusers = array();
$coloruname = array();
while ( $row = $db->sql_fetchrow($result) )
{
	$userid = $row['user_id'];
	$colorusers[$userid] = $row['user_color_group'];
	$coloruname[$userid] = $row['username'];
}

$colorgroup = array();
Du kannst niemals alle mit deinem Tun begeistern. Selbst wenn du über's Wasser laufen kannst, kommt einer daher und fragt, ob du zu blöd zum Schwimmen bist.
https://www.deskmodder.de
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Witzige Frage......

Du selektierst die User_ID ohne die Ergebnismenge einzuschränken....

Nach der While Schleife...

Code: Alles auswählen

foreach($colorusers as $user_id => $dump)
  {
    echo $user_id."<br/>";
    echo $coloruname[$user_id]."<br/>";
  }
Jedoch bleibt mir der Sinn von dem sinnlosen, zusätzlichen Speicherverbrauch durch $userid = $row['user_id']; gänzlich ein Geheimnis
Benutzeravatar
Gumfuzi
Ehemaliges Teammitglied
Beiträge: 2454
Registriert: 26.03.2004 22:25
Wohnort: Linz, AT
Kontaktdaten:

Beitrag von Gumfuzi »

danke!
Du kannst niemals alle mit deinem Tun begeistern. Selbst wenn du über's Wasser laufen kannst, kommt einer daher und fragt, ob du zu blöd zum Schwimmen bist.
https://www.deskmodder.de
Benutzeravatar
MrMind
Mitglied
Beiträge: 464
Registriert: 29.11.2003 17:14
Wohnort: Darmstadt/Odw
Kontaktdaten:

Beitrag von MrMind »

Gumfuzi hat geschrieben:Und den Teil in der common.php (vom Colour Grup Mod) kann ich mir nicht zunutze machen?
Naja mir ist egal, wie sinnlos mancher Code ist, das geht mich auch nichts an *gg* aber alles was in der common.php deklariert wird, kannste somit in jedem Script nutzen, wenn du so vorgehst, wie es in den anderen Dateien gemacht wird.


Mfg
MrMind
Selbst ist der Coder
Coder unter Linux
Benutzeravatar
Gumfuzi
Ehemaliges Teammitglied
Beiträge: 2454
Registriert: 26.03.2004 22:25
Wohnort: Linz, AT
Kontaktdaten:

Beitrag von Gumfuzi »

Danke, ich habe es bereits gelöst:
einmal vor der Schleife abgefragt und in Arrays gespeichert, dann kann ich die ohne DB-Abfrage in der Schleife verwenden.

Gibt zwar sicher bessere Lösungen, aber meine ist selbstzusammengecodet *freu* ;)
Du kannst niemals alle mit deinem Tun begeistern. Selbst wenn du über's Wasser laufen kannst, kommt einer daher und fragt, ob du zu blöd zum Schwimmen bist.
https://www.deskmodder.de
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Gumfuzi hat geschrieben:Gibt zwar sicher bessere Lösungen, aber meine ist selbstzusammengecodet *freu* ;)
Nehme ungern den Wind aus den Segeln, aber im späteren Verlauf wirst du irgendwann feststellen, dass jede unnötige verwendete Variable Speicher verbraucht. Und dies war früher als die Rechner noch nicht so leistungsfähig waren ein Kernproblem.

Und bei C# ist es noch immer wichtig. Daher gibt es auch OOP, weil wozu was in den Speicher laden was gar nicht gebraucht wird......
Benutzeravatar
Gumfuzi
Ehemaliges Teammitglied
Beiträge: 2454
Registriert: 26.03.2004 22:25
Wohnort: Linz, AT
Kontaktdaten:

Beitrag von Gumfuzi »

Hast ja Recht, aber ich bin froh, daß ich es auch so geschafft habe (selbst) - natürlich versuche ich, das ganze noch zu optimieren, klar ;)

BTW: was ist "OOP"? :oops:
Du kannst niemals alle mit deinem Tun begeistern. Selbst wenn du über's Wasser laufen kannst, kommt einer daher und fragt, ob du zu blöd zum Schwimmen bist.
https://www.deskmodder.de
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Blutgerinsel hat geschrieben:Nehme ungern den Wind aus den Segeln, aber im späteren Verlauf wirst du irgendwann feststellen, dass jede unnötige verwendete Variable Speicher verbraucht
Generell stimmt das, aber man kann es auch übertreiben - die von dir bemängelte Variable, die dazu noch in jedem durchlauf der Schleife überschrieben wird ist so gut wie nichts, wenn man bedenkt, daß die selbe Schleife ein Array mit allen Benutzern aus der DB erstellt.
Gumfuzi hat geschrieben:BTW: was ist "OOP"? :oops:
http://de.wikipedia.org/wiki/Oop
KB:knigge
Antworten

Zurück zu „Coding & Technik“