WBCE CMS – Way Better Content Editing.
You are not logged in.
Die Situation: Ich habe auf einer Website NWI neu installiert und möchte die erste NWI-Seite anlegen. Beim Speichern erhalte ich im Backend folgende Fehlermeldung, welche das komplette Backend rechts vom Menü beansprucht, so dass dort nichts anderes mehr steht:
Fatal error: Uncaught Error: Call to a member function numRows() on null in <myurl>/modules/news_img/functions.inc.php:62 Stack trace: #0 <myurl>/modules/news_img/functions.inc.php(966): mod_nwi_get_groups() #1 <myurl>/modules/news_img/modify.php(48): mod_nwi_posts_getall() #2 <myurl>/<mein_individueller_admin-verzeichnisname>/pages/modify.php(165): require('<myurl>/m...') #3 {main} thrown in <myurl>/modules/news_img/functions.inc.php on line 62
Ich kann die Situation nur verlassen, indem ich im Menü etwas auswähle, z. B. "Seiten", denn außer dem Menü gibt es nichts Benutzbares mehr im Backend.
Der Fehler tritt wieder und wieder auf, auch auf unterschiedlichen Sites.
Kann es sein, dass NWI mit dem anders benannten "admin"-Verzeichnis nicht zurecht kommt?
(WBCE 1.4.5, PHP 7.4.3)
Offline
Welche NWI-Version?
Der Fehler deutet eher darauf hin, dass in der Datenbank die Tabelle mod_news_img_groups fehlt. Das umbenannte Admin-Verzeichnis ist mMn nicht der Auslöser.
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
Hallo Florian, die NWI-Version ist 5.0.7. In der Tat fehlt mod_news_img_groups. Nachdem ich das aufgrund Deines Hinweises festgestellt habe, habe ich das Ganze anhand der letzten Site- und Datenbank-Sicherung nochmals nachvollzogen. Basis ist, wie zuvor, die bisherige Site ohne NWI.
Hier installiere ich also vom Backend aus NWI 5.0.7. Das NWI-Modul legt nur die Tabellen mod_news_img_tags, mod_news_img_tags_posts und mod_news_img_tags_sections an. Alle weiteren NWI-Tabellen wurden nicht mit angelegt. Einen entsprechenden Hinweis während der Installation sehe ich nicht.
Auch bei einem erneuten Versuch mit vorherigem Modul-Abgleich (dieses Mal nach Klick auf "Erweitert" im Bereich Erweiterungen) ändert sich nichts an diesem Verhalten.
Offline
Das ist sehr seltsam.
Gibt es Meldungen im Errorlog?
Was passiert, wenn Du im Adminer oder Phpmyadmin mal direkt den SQL-Befehl zum Anlegen der Tabellen eingibst, also z.B.
CREATE TABLE IF NOT EXISTS `dings_mod_news_img_posts` ( `post_id` INT NOT NULL AUTO_INCREMENT, `section_id` INT NOT NULL DEFAULT '0', `group_id` INT NOT NULL DEFAULT '0', `active` INT NOT NULL DEFAULT '0', `position` INT NOT NULL DEFAULT '0', `title` VARCHAR(255) NOT NULL DEFAULT '', `link` TEXT NOT NULL , `image` VARCHAR(256) NOT NULL DEFAULT '', `content_short` TEXT NOT NULL , `content_long` TEXT NOT NULL , `content_block2` TEXT NOT NULL , `published_when` INT NOT NULL DEFAULT '0', `published_until` INT NOT NULL DEFAULT '0', `posted_when` INT NOT NULL DEFAULT '0', `posted_by` INT NOT NULL DEFAULT '0', PRIMARY KEY (post_id) )
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
Das Errorlog schweigt leider. Aber zur Sicherheit: Wo muss
error_reporting (E_ALL);
stehen, damit alle Meldungen im Errorlog gezeigt werden?
Und schließlich: Das manuelle Anlegen der fehlenden Tabellen funktioniert. Aber mir fehlen (außer eben zu dings_mod_news_img_posts) die Feldeigenschaften für die weiteren Tabellen.
Offline
Das error_reporting muss nicht hochgesetzt werden, der Errorlogger ist von der Einstellung bei den Grundeinstellungen unabhängig.
Falls er nicht alles loggen kann, wird dort ein entsprechender Hinweis angezeigt.
Mich wundert, dass das manuelle Anlegen klappt. Das ist einfach nur aus der /modules/news_img/install.php rauskopiert und dann halt alle Zeilenumbrüche und alle Hochkomma-Maskierungen (\') entfernt.
Hast Du irgend einen komplizierten DB-Präfix - oder gar keinen?
Ist das MySQL oder MariaDB oder was anderes?
Ist das ein selbst verwalteter Server oder ein "normales" Webhostingpaket?
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
Habe auch gerade die install.php entdeckt. Da kann ich mir womöglich dann auch noch nach erneuter "halber" Installation von NWI die weiteren Tabellen-Definitionen kopieren. Das wäre ja schon mal hilfreich, ist aber eigentlich jetzt nicht soooo die Lösung.
Ich verwende ein Präfix aus drei Buchstaben, natürlich nix wie ß, ä, ö, ü oder so. Es ist eine MySQL Datenbank.
Ich arbeite an der Erweiterung dieser Site noch lokal, habe die Probleme aber auch dann, wenn wenn ich das oben Beschriebene auf der Online-Version im Rahmen eines Ionos-Hostingpakets versuche. Ansonsten läuft die Site problemlos, inklusive einiger Topics-Seiten, die ich jetzt (zur Sicherheit manuell!) auf NWI umstellen wollte.
Witzigerweise (wenn es denn witzig ist ) gibt es auf einer anderen Site, die NWI-Seiten hat und in der lokalen Entwicklungs-Umgebung sowie beim Hoster jeweils unter exakt denselben Bedingungen betrieben wird, diese Probleme nicht.
Offline
Vielleicht solltest Du dann doch davon absehen, auf NWI umzusteigen. Topics läuft ja noch (auch mit PHP 7.4).
Eine andere Möglichkeit wäre übrigens, für die Aktuelles-Beiträge normale Seiten zu erstellen, die Du dann ganz nach Bedarf zusammensetzen kannst. Es gibt ja genug Möglichkeiten, diese nicht in der Hauptnavigation erscheinen zu lassen.
Die Übersichtsseite könnte mit etwas show_menu2-Gebastel (Grundlage SitemapChild-Droplet) trotzdem automatisch erstellt werden.
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
Das Folgende wäre somit keine brauchbare Option? (s. o.)
Da kann ich mir womöglich dann auch noch nach erneuter "halber" Installation von NWI die weiteren Tabellen-Definitionen kopieren.
Würden da irgendwelche Inkonsistenzen drohen, auch dann, wenn ich dies sofort nach der NWI-Installation machen würde?
Offline
Ich weiß es nicht. Wenn schon das Anlegen der Tabellen aus mir nicht ersichtlichen Gründen fehlschlägt, fürchte ich, dass auch das Befüllen derselbigen nicht reibungslos funktionieren wird.
Ich kann das Problem auch leider weder mir erklären noch reproduzieren.
Man müsste mal ins Detail gehen und ganz genau prüfen, ob es nicht doch Unterschiede gibt zwischen der einen Instanz, wo es funktioniert, und der anderen, wo es nicht funktioniert.
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
OK & danke!
Last edited by viktor321j (13.01.2021 08:32:04)
Offline