Sprache des ACP (Backend) auslesen? - Druckversion +- MyBB.de Forum (https://www.mybb.de/forum) +-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html) +--- Forum: Plugin-Entwicklung (https://www.mybb.de/forum/forum-74.html) +--- Thema: Sprache des ACP (Backend) auslesen? (/thread-37500.html) |
RE: Sprache des ACP (Backend) auslesen? - Schnapsnase - 26.10.2020 (26.10.2020, 18:01)Gerti schrieb: Wenn $mybb->users['language'] = "leer" (somit default) dann fülle $mybb->users['language'] mit Ich weiß mittlerweile nicht mehr welche Deiner Abfragen für welche Funktion gut sein soll, aber egal... Prinzipiell ist Dein Ansinnen doch nichts Anderes, wie wir im o.g. Code bereits ausführen. Du musst es nur umschreiben. Du ließt ein DB-Feld "language" aus und schreibst es in eine Variable. Dann prüfst Du, ob die Variable leer ist. Wenn ja, dann ist: PHP-Code: $var = mybb->settings['bblanguage']; (26.10.2020, 20:09)itsmeJAY schrieb: Dadurch hätte ich den obigen Kollegen aber wieder den Code vermiest. Wie kommst Du darauf? Wenn mein o.g. Code Sch... ist, darfst Du mir das ehrlich sagen. Anderenfalls hätte es auch genügt, mir kurz den Unterschied zu erklären. Bin noch lernfähig. RE: Sprache des ACP (Backend) auslesen? - itsmeJAY - 26.10.2020 (26.10.2020, 20:21)StefanT schrieb: Das stimmt aber nicht, query und write_query werden für verschiedene Zwecke verwendet. Verstehe ich nicht so ganz. Wenn ich einen Query selber schreiben will anstatt über vorgegebene Methoden und Parameter abzuschicken, kanm $db->query verwendet werden. Die offizielle Doku sagt aber, dass $db->write_query() bevorzugt werden sollte. Zitat aus der Entwickler Doku: "write_query is now preferred over query." Also was genau hat dies mit einem Update oder select query zutun? Verstehe den Zusammenhang nicht. Gruß RE: Sprache des ACP (Backend) auslesen? - StefanT - 26.10.2020 Der Sinn einer Master-Slave-Replication ist es, Lese- und Schreiboperationen auf verschiedene Server zu verteilen. Auf einem Slave kann (darf!) nur gelesen werden, auf dem Master wird nur geschrieben. query spricht den Slave an (SELECT), write_query den Master (UPDATE, DELETE,...). Besser ist es bei einfachen Datenbankabfragen die vom MyBB bereitgestellten Methoden zu verwenden, dann muss man sich darüber keine Gedanken machen und man unterstützt meist gleich noch die anderen Datenbank-Systeme. RE: Sprache des ACP (Backend) auslesen? - Gerti - 27.10.2020 Habe es jetzt soweit gebracht: Mit: PHP-Code: $query_bblanguage = $db->simple_select("settings", "value", "name='bblanguage'"); Es soll aber bei den Users die Spalte "langauge" mit "bblanguage" nur gefüllt werden, wenn die Spalte langauge auch leer ist Verwende ich: PHP-Code: if(!empty($mybb->users['language'])) { Was ist bei der "IF-Definition" falsch? RE: Sprache des ACP (Backend) auslesen? - Schnapsnase - 27.10.2020 Du müsstest den update-query so ausführen, dass nur leere Felder gefüllt werden. Wofür eigentlich die zusätzliche DB-Abfrage zu "bblanguage"? Das muss doch auch so gehen: PHP-Code: $var = mybb->settings['bblanguage']; RE: Sprache des ACP (Backend) auslesen? - Gerti - 27.10.2020 (27.10.2020, 12:10)Schnapsnase schrieb: Du müsstest den update-query so ausführen, dass nur leere Felder gefüllt werden.Sorry, das mag zwar sein, aber ich bin da nicht der Profi. Wie muss in meinem Fall das Ergebnis von "var" verwendt in Verbindung mit der IF-Definition verwendet wreden? Mea Cupla, aber mit für mich Halbinformationen komme leider nicht zurecht. Wie Du unschwer erkennen kannst, habe ich mir zumindest Gedanken gemacht es irgendwie umzusetzen. Ich will lediglich ein bereits existierendes PlugIn in vielen Funktonen zum Wohle aller MyBB-Anwender erweitern. Das ist noch bei einigen anderen PlugIns angedacht. Mit jedem Projekt (demnächst Usermap mit drei farbigen Points) erweitert sich Dank Eurer Hilfe nicht nur die Funktionalität eines PlugIns, sondern auch die Attraktiviät MyBB zu verwenden. Wenn jedoch hier im Forum intensive Programmkenntnisse (die ich nun mal nicht habe, vorausgesetzt werden, bzw. detaillierte Anfragen mit einer Auszugsdefiniton beantwortet werden, respektiere ich das und sehe von meinen weiteren Vorhaben gerne ab. Besten Dank an alle die bisher geholfen haben. RE: Sprache des ACP (Backend) auslesen? - Schnapsnase - 27.10.2020 (27.10.2020, 13:03)Gerti schrieb: ...bzw. detaillierte Anfragen mit einer Auszugsdefiniton beantwortet werden,... Sorry, das ist keine Auszugsdefinition. Ich habe hier lediglich ein Setting in eine Variable geschrieben. Evtl. auch, um Dir zu zeigen, dass diese Information auch ohne DB-Abfrage bereits vorhanden ist und Du nur mit dieser eigenen Variable weiterarbeiten musst. Ich bin auch kein Programmierer und habe nur versucht, Dir Denkanstöße zu geben. Ich bin jetzt raus aus dieser Thematik. Ich wünsche Dir trotzdem weiterhin viel Erfolg mit diesem Projekt. In der global.php Zeile 57-77 gibt es sicher auch noch hilfreiche Infos für Dich. RE: Sprache des ACP (Backend) auslesen? - StefanT - 27.10.2020 Was ist $mybb->users für eine Variable? Woher kommt die? RE: Sprache des ACP (Backend) auslesen? - doylecc - 27.10.2020 (27.10.2020, 12:01)Gerti schrieb: Habe es jetzt soweit gebracht: Die wird jetzt bei allen gefüllt, weil du keine WHERE Klausel in der Update-Query hast. (27.10.2020, 12:01)Gerti schrieb: Verwende ich: Wenn du die Spalte bei allen Usern füllen willst, die keine eigene Sprache eingestellt haben, brauchst du eigentlich nur sowas wie: PHP-Code: $query_bblanguage = $db->simple_select("settings", "value", "name='bblanguage'"); RE: Sprache des ACP (Backend) auslesen? - StefanT - 27.10.2020 Warum will man das überhaupt machen? Eine leere Sprache ist nicht nur eine gültige Auswahlmöglichkeit sondern sogar der vorausgewählte Standard. Ein Plugin sollte daran nicht rumfummeln, für die gewünschte Funktionalität sehe ich da auch keine Notwendigkeit. Einen Fallback muss man immer einbauen, denn in der Datenbank kann durchaus eine Sprache gespeichert sein, die nicht mehr installiert ist. |