ProPortal 2.6.2 - Druckversion +- MyBB.de Forum (https://www.mybb.de/forum) +-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html) +--- Forum: Plugin-Veröffentlichungen und -Support (https://www.mybb.de/forum/forum-82.html) +--- Thema: ProPortal 2.6.2 (/thread-30522.html) |
RE: ProPortal 2.6.2 - itsmeJAY - 04.10.2021 (03.10.2021, 12:33)Gerti schrieb: Hallo, 10 Sekunden den Code mit dem Handy überflogen: Wahrscheinlich (nur eine Vermutung) sind in der session-Tabelle aufgrund von unterschiedlichen Anmeldungen mehrere Datensätze vorhanden. Ich würde anstatt select mal select distinct probieren oder es direkt über PHP regeln. RE: ProPortal 2.6.2 - Gerti - 04.10.2021 Betrifft: Zeilen 26 und 31 Wenn $queries[] = $db->simple_select (... zu $queries[] = $db->simple_select distinct (... abgeändert wird, dann ergibt sich daraus eine weiße Seite mit Ausgabe folgender Fehlermeldung im Log-File: Zitat:PHP Parse error: syntax error, unexpected 'distinct' (T_STRING) in /www/htdocs/xxxxxxxx/portal/blocks/block_wwo24.php on line 26 RE: ProPortal 2.6.2 - doylecc - 04.10.2021 Funktioniert dieser Teil aus der wwo24.php überhaupt korrekt: PHP-Code: $queries[] = $db->simple_select( Laut MyBB Doku ist $db->simple_select nur für einfache Abfragen ohne JOIN gedacht. RE: ProPortal 2.6.2 - itsmeJAY - 04.10.2021 // deleted RE: ProPortal 2.6.2 - [ExiTuS] - 04.10.2021 (04.10.2021, 13:08)Gerti schrieb: Betrifft: Zeilen 26 und 31Selbstverständlich ergibt das einen PHP Fehler. simple_select() ist der Name einer PHP-Funktion und muss so bestehen bleiben. Nur die zu übergebenen Parameter innerhalb der Klammer dieser Funktionen dürfen geändert werden. Mit deiner Änderung hast du den Namen der Funktion verändert und somit einen Syntaxfehler verursacht. "DISTINCT" ist eine SQL-Deklaration und gehört mit zu den übergebenen Parameter für Tebellenfelder. In diesem Falle müsste es also heißen: Code: simple_select("TABELLE", "distinct FELD, ..."[, ...]) (04.10.2021, 14:15)doylecc schrieb: Funktioniert dieser Teil aus der wwo24.php überhaupt korrekt:Du hast Recht, die Funktion simple_select() kann zwar nur eine "eine Tabelle" abfragen, allerdings kann man ihr ohne Probleme einen JOIN unterjubeln, ohne dass dadurch die SQL-Syntax leidet. D.h. es würde trotzdem ein valides SQL-Statement herauskommen. https://crossreference.mybb.de/inc/db_mysqli.php.source.html#l752 Es mag sein, dass das von den Entwicklern so gewollt war oder ein passender Zufall. Jedenfalls sind alle möglichen Formen eines Joints sowohl machbar als auch brauchbar. [ETS] RE: ProPortal 2.6.2 - tc4me - 05.10.2021 Gibt es eine Lösung für dass Problem? lg Tc4me RE: ProPortal 2.6.2 - Schnapsnase - 05.10.2021 Ich bin mir nicht ganz sicher und kann es selbst nicht testen... Ändere mal in den Querys das >= in > Prüfe mal, ob sich das auswirkt. RE: ProPortal 2.6.2 - tc4me - 05.10.2021 Soweit funktioniert es, ich beobachte mal ob ein Eintrag doppelt angezeigt wird Danke Schnapsnase RE: ProPortal 2.6.2 - itsmeJAY - 05.10.2021 Hallo, wie gesagt, das Problem liegt an der mybb_sessions Tabelle. Fügt zum Start der while-Schleife folgenden Code ein bzw. ergänzt die While-Schleife in der Datei portal/blocks/block_wwo24.php in Zeile 37 um folgenden Code: PHP-Code: $onlineUsersArray[] = $onlineuser['uid']; Viel Spaß damit RE: ProPortal 2.6.2 - Schnapsnase - 05.10.2021 @JAY ich benutze in diesem Plugin einen sehr ähnlichen Code. Zumindest sind die Querys fast identisch. Wenn es wirklich an der Session-Tabelle liegt, müsste ja mein Plugin auch Probleme bereiten, tut es aber nicht. |