MyBot - 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: MyBot (/thread-30288.html) |
RE: MyBot - itsmeJAY - 29.01.2020 (29.01.2020, 17:28)Schnapsnase schrieb: @SvePu Das ist übrigens nicht bzw. nur indirekt der Fehler. Spätestens beim nächsten aufrufen des Forums (von wem auch immer) wird die Hook global_end ausgeführt und der Cache wieder gefüllt. Du hast mit dem Leeren des Caches nur bewirkt, dass das Plugin sich nicht mehr daran erinnert, wer bereits angeschrieben wurde. Man kann den Eintrag im Cache natürlich komplett rausnehmen, dann würde es klappen.. Ist allerdings trotzdem unsauber für die, die die Funktion (ähnlich wie Schnapsnase) schon einmal aktiviert hatten und der Fehler nun auftritt. Ich würde es so machen, da dies zu keinerlei Beeinträchtigung des Plugins führt und das Setting wenigstens mal angesprochen wird... Suche in inc/plugins/mybot.php in Zeile 145 nach PHP-Code: if (count($diff) == 0) und ändere dies ab zu: PHP-Code: if (count($diff) == 0 || $mybb->settings['mybot_remember'] == 0 || $mybb->settings['mybot_remember'] == 'no') Grüße, itsmeJAY Edit nach nochmaliger Überlegung: ... meine oben gepostete Variante funktioniert zwar, führt allerdings dazu, dass im Hintergrund trotzdem Code ausgeführt wird weil er nie in die if-Abfrage hier springt und somit nie returnen kann: PHP-Code: if ($last_run !== false) Wenn im Datacache der Eintrag nicht existiert, wird $last_run also false sein und er springt nie in den Funktionsblock und kann somit nie returnen. Somit wird der weitere Code unterhalb der if Abfrage ausgeführt. Deshalb, mache es am besten so und füg direkt unter die Funktion in Zeile 127 folgende if-Bedingung ein: PHP-Code: function mybot_remember() Das führt dazu, dass PHP direkt "stoppt" sobald die Funktion deaktiviert ist und gar nicht irgendwelchen anderen Code ausführt für die E-Mail-Funktion (Remember Funktion). Da freut der Interpreter sich bestimmt das er keine Arbeit für Nüsse machen muss RE: MyBot - Schnapsnase - 30.01.2020 (29.01.2020, 20:21)itsmeJAY schrieb: Du hast bestimmt die 1.5 von github (https://github.com/JN-Jones/MyBot/blob/master/inc/plugins/mybot.php)Hi JAY, ich kann mich ehrlich gesagt nicht mehr erinnern, wo ich gedownloadet habe. Es wird aber Vers. 1.5 angezeigt. Somit wirst Du wohl Recht haben. (29.01.2020, 21:46)itsmeJAY schrieb: .....Man kann den Eintrag im Cache natürlich komplett rausnehmen, dann würde es klappen.. Ist allerdings trotzdem unsauber......Ich habe gestern in einem ersten Wutanfall den Eintrag "mybot_remember" aus der Datacache-Tabelle komplett entfernt. Genügt jetzt Dein o.g. Code in Zeile 127, oder muss ich wieder einen "leeren" Eintrag im Datacache machen? Zumindest mal vielen Dank für Deine Arbeit und die Info`s!! Grüße RE: MyBot - itsmeJAY - 30.01.2020 (30.01.2020, 06:45)Schnapsnase schrieb:(29.01.2020, 20:21)itsmeJAY schrieb: Du hast bestimmt die 1.5 von github (https://github.com/JN-Jones/MyBot/blob/master/inc/plugins/mybot.php)Hi JAY, Durch das Löschen des Caches dürften jetzt erstmal keine Mails mehr versendet werden. Ich würde trotzdem die if Anweisung in Zeile 127 unter die Funktion einfügen (wie oben gepostet) damit auch kein Code mehr ausgeführt wird und er das Setting berücksichtigt. Somit könntest du die Funktion auch wieder aktivieren und deaktivieren ohne dir Sorgen um den Datacache zu machen. Gilt auch für andere die den Bot verwenden. Grüße RE: MyBot - Schnapsnase - 30.01.2020 Besten Dank dafür Grüße RE: MyBot - itsmeJAY - 30.01.2020 (30.01.2020, 10:41)Schnapsnase schrieb: Besten Dank dafür No problemo RE: MyBot - tc4me - 17.01.2021 Hallo liebe Gemeinde , ich habe heute den Bot mal installiert, bekomme im ACP die Fehlermeldung Warning [2] Use of undefined constant MODULE - assumed 'MODULE' (this will throw an Error in a future version of PHP) - Line: 11 - File: admin/modules/user/mybot.php PHP 7.4.14 (Linux) File Line Function /admin/modules/user/mybot.php 11 errorHandler->error /admin/index.php 824 require Kann mir da einer von euch bitte weiterhelfen lg Tc4me Danke selbergelöst ändere in der /admin/modules/user/mybot.php Zeile 8-11 Code: if(function_exists("myplugins_info")) in /admin/modules/user/mybot.php Code: if(function_exists("myplugins_info")) Fertig Hy Gemeinde , nochmals ein Problem das ihr ev auch schon mit dem Bot hattet, GeburtstagsThread bzw Thread bei neuer Registrierung, wird bei mir nicht gemacht, habt ihr ev Erfahrung damit und könnt mir helfen? lg Tc4me Hallo Leute , so Danke nochmals an Schnapsnase, der mir mit seine Hilfe doch sehr sehr geholfen hat. Alle Tipps durchgearbeitet, der Erfolg : nachdem ich alle Plugins mal deaktiviert habe und nur mal den Mybot installiert habe, funktionierte dieser problemlos! Danach ein nach dem anderen wieder aktiviert und siehe da, es funktioniert alles perfekt! DANKE !!!!!!!!!!!!!!! Schönen Sonntag lg Tc4me RE: MyBot - tc4me - 21.03.2021 Hy ItsmeJAY Hy Schnapsnase, sorry das ich euch nerve, also ich habe auch die Version 1.5 installiert und wollte den Rat von ItsmeJAY folgen und in der Zitat : direkt unter die Funktion in Zeile 127 das ein : PHP-Code: function mybot_remember() könntet ihr mit zeigen wie der fertige code aussieht ? Bitte PHP-Code: function mybot_remember() Ich komme nicht klar damit, wenn ich dass einfüge , ist das Forum Fehler 500 ... Danke RE: MyBot - skrilaxrev - 15.06.2021 Also, zunächst einmal zu dem hier: (17.01.2021, 14:44)tc4me schrieb: Danke selbergelöst ...hat bei mir geklappt! Vielen Dank! Der Fehler aus dem Admin-Bereich ist schon mal weg. Und zu deinem letzten Post: Bei mir funktioniert der Code. Vor der Änderung hat sich meine Seite totgeladen, sobald ich das Plugin aktiviert habe, aber nach der Anpassung nicht mehr. Du musst einfach nur den untern Code mit dem oberen deines Beitrages ersetzen. So habe ich es zumindest gemacht und nun lädt die Seite wieder, was schon einmal ein gutes Zeichen ist... Mir fällt aber gerade auf, dass dein Server mit PHP 7.4 läuft und meiner irgendwie noch auf PHP 7.3. Ich taste mich da ran, aber wer weiß. Wenn ich auf PHP 7.4 stelle, funktioniert es bei mir vielleicht auch nicht mehr. Ich werde das mal demnächst testen und dir Bescheid geben. Bis dahin, mal sehen welches Abendteuer als nächstes auf mich wartet. Wie gesagt, ab PHP 7.x läuft vieles nicht mehr. Gerade noch mal getestet, also Auto-PN bei Themeneröffnung funktioniert z.B. (habe auch die Github-Version 1.5 genommen, inklusive der in diesem Beitrag genannten Anpassungen). Jetzt weiß ich übrigens wieso mein Forum vorhin solange geladen hat. Ja, da gingen bereits einige Mails raus und ja, sie haben zur Uhrzeit der Änderung aufgehört.^^ Danke an itsmeJAY für diesen Code! Fehler beim Antworten? - Shorty - 03.04.2023 Hallo, wen ich auf einen Beitrag über den Button Antworten (Nicht Schnellantwort), bekomme ich Folgenden Fehler. Uncaught Error: Non-static method JB_Classes_StorableObject::getDefaultOptions() cannot be called statically in /var/www/vhosts/computer-fun-area.de/httpdocs/inc/plugins/jones/core/Classes/StorableObject.php:47\nStack trace:\n#0 /var/www/vhosts/computer-fun-area.de/httpdocs/inc/plugins/mybot.php(92): JB_Classes_StorableObject::getAll()\n#1 /var/www/vhosts/computer-fun-area.de/httpdocs/inc/plugins/jones/mybot/classes/Rule.php(63): mybot_cache_update()\n#2 /var/www/vhosts/computer-fun-area.de/httpdocs/inc/plugins/mybot.php(303): JB_MyBot_Rule::getFromCache()\n#3 /var/www/vhosts/computer-fun-area.de/httpdocs/inc/plugins/mybot.php(271): mybot_work()\n#4 /var/www/vhosts/computer-fun-area.de/httpdocs/inc/class_plugins.php(142): mybot_post()\n#5 /var/www/vhosts/computer-fun-area.de/httpdocs/newreply.php(600): pluginSystem->run_hooks()\n#6 {main}\n thrown in /var/www/vhosts/computer-fun-area.de/httpdocs/inc/plugins/jones/core/Classes/StorableObject.php on line 47', referer: https://computer-fun-area.de/newreply.php?tid=1 *EDIT* Bitte im Plugin MyBot zusammenfügen, sorry habe eben erst festgestellt das der Fehler von diesem Plugin verursacht wird RE: Fehler beim Antworten? - [ExiTuS] - 03.04.2023 Das Plug-In "MyBots" hat schon einen langen Bart und ist vor ca. 8 Jahren das letzte Mal aktualisiert worden. Sofern der PHP-Code nicht aktualisiert und auf aktuelles PHP-Level gebracht wird, gehört es begraben. Eventuell genügen schon ein paar Änderungen, um es wieder lauffähig zu bekommen. Da muss man selbst ran, denn auf den ursprünglichen Entwickler wird man nicht mehr zählen können. [ETS] |