[gelöst] Nach SMF-Update nicht mehr online: Fatal error in block-smf_Center.php

Begonnen von LiLiConsult, 02 Januar 2012, 16:35:51

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

LiLiConsult

Hallo @all,

gestern habe ich mich aufgemacht, endlich die längst überfällige Aktualisierung von 0.1.11.3 vorzunehmen. Bisher hat es keine bzw. nur unbedeutende Fehler gegeben, das spricht für die Programmierer.

Jetzt, bei der Aktualisierung des Forums gibt es einen elementaren Fehler, der sogar dazu führt, dass meine Seite derzeit nicht online ist:

ZitatFatal error: Call to undefined function mxsmf_prepare_output() in /MeineSeite.de/blocks/block-smf_Center.php on line 172

Vor etwa 2 1/2 Jahren, bei der Installation von pragmaMx hatte ich, mit Hilfestellung hier aus dem Forum, das SMF-Forum mehrfach installiert. Die Konstellation hat bis heute gepasst und reibungslos funktioniert, deshalb sieht meine Struktur im Grundsatz immer noch so aus, wie damals gepostet:

/pragmaMx
.../admin
.../...
.../...
.../modules/
.../modules/Avatar/
.../modules/...
.../modules/...
.../modules/Forum/
.../modules/Forum/smf
.../modules/Forum/smf/...
.../modules/Forum/smf/...
.../modules/Forum02/
.../modules/Forum02/smf/
.../modules/Forum02/smf/...
.../modules/Forum02/smf/...
.../modules/Guestbook/
.../modules/...

Nach erfolgreicher Aktualisierung der Basis war jetzt heute das Forums-Modul dran. Exakt nach Installationsanleitung habe ich im ersten Step das Forum02 angepackt, Schritt für Schritt abgearbeitet und habe auch nach Punkt 11 ("...Wenn hier keine Fehler angezeigt werden, das Paket installieren...") den Hinweis erhalten, dass die Installation erfolgreich war.

Erst als ich meine Seite aufgerufen habe, kamen dann folgende Hinweise:

ZitatPHP Deprecated warning:
Function set_magic_quotes_runtime() is deprecated
in modules/Forum/smf/SSI.php on line 40

und

ZitatFatal error: Call to undefined function mxsmf_prepare_output() in /MeineSeite.de/blocks/block-smf_Center.php on line 172

Den ersten Hinweis (Function set_magic_quotes_runtime() is deprecated) können wir ignorieren. Hierzu hat sich Andi bereits geäußert: http://www.pragmamx.org/Forum-topic-32560.html

Zu der eigentlichen Meldung, dem 'Fatal error', habe ich hier im Board leider nichts gefunden. Ich vermute zwar, dass es an der mehrfachen Verwendung des Moduls liegt, aber mit Vermutungen komme ich nicht weiter.

Die gesicherten 'alten' Files habe ich noch nicht wieder zurückgespielt, weil es ja vielleicht eine schnelle und passende Hilfestellung aus dem Forum gibt. Wer kann mir helfen und die erforderlichen Maßnahmen aufzeigen ?

Vielen Dank vorab für jeden konstruktiven Beitrag.

Ach ja: Sollte der Beitrag besser im Board 'integrierte Module' aufgehoben sein, bitte ich die Moderation, ihn ggf. zu verschieben. Danke.

Gruß
Wolfgang
Sage mir nicht, warum es nicht geht ... sage mir, wie es geht !


CMS-Version pragmaMx 1.12.3.1.33.4.14 (2012-06-21)
PHP-Version: 5.3.10
MySQL-Version: 5.1.61-0+squeeze1
Server-Version: Apache

shorty

 are you tried to put the new smf center block ? (it's in the new version of the bridge)

LiLiConsult

Hallo shorty,

Danke für Deine Antwort.

Ich denke schon, dass ich richtig vorgegangen bin. Zuerst habe ich das Forum auf den neuesten Stand (1.1.16) gebracht und anschließend die aktuellste Sprachdatei (1.1.15) übertragen. Danach habe ich die Dateien aus 'pragmaMx-SMF-Bridge_1.12-update' hochgeladen.

Die 5 Files 'block-smf-...php', also auch die 'block-smf_Center.php', habe ich in den Ordner 'blocks' abgelegt. Ich bin mir nicht mehr sicher, aber ich glaube, da gab es nichts zu überschreiben, weil es diese Dateien vorher nicht gab.

Den Inhalt des Ordners 'modules/forum/' habe ich dann bei mir natürlich in den Ordner 'modules/forum02/' kopiert und dabei eventuell vorhandene gleichnamige Dateien überschrieben. Mein FTP-Programm (FileZilla 3.5.2) hat die erfolgreiche Übertragung bestätigt, weshalb ich davon ausgehe, dass der Transfer fehlerfrei war.

Abschließend habe ich den jetzt im Paketmanager zu findenden Eintrag 'pragmaMx_patch_1.12 auf ,,Modifikation anwenden"' angeklickt und das Paket installiert.

Gruß
Wolfgang
Sage mir nicht, warum es nicht geht ... sage mir, wie es geht !


CMS-Version pragmaMx 1.12.3.1.33.4.14 (2012-06-21)
PHP-Version: 5.3.10
MySQL-Version: 5.1.61-0+squeeze1
Server-Version: Apache

Andi

Moin :)

Zitathabe ich im ersten Step das Forum02 angepackt,
ZitatDie 5 Files 'block-smf-...php', also auch die 'block-smf_Center.php', habe ich in den Ordner 'blocks' abgelegt. Ich bin mir nicht mehr sicher, aber ich glaube, da gab es nichts zu überschreiben, weil es diese Dateien vorher nicht gab.

Der Fatal Error kommt ja aber aus dem Block "block-smf_Center.php". Da der aktiviert ist, muss er also auch vorher schon dagewesen sein. Der Block sucht standardmässig die Forumsdateien aber im Ordner /modules/Forum/, nicht in  /modules/Forum02/ und so wie ich das verstehe, hat das SMF im Ordner /modules/Forum/ ja noch den alten Stand, oder?
D.h. die Dateien passen nicht zu dem aktualiserten Block, weswegen dann die Funktion mxsmf_prepare_output() nicht gefunden wird.


Das Forum02, an und für sich läuft aber, oder? Probleme existieren nur auf der Startseite?


Und was ich jetzt garnicht verstehe ist das:
ZitatDen Inhalt des Ordners 'modules/forum/' habe ich dann bei mir natürlich in den Ordner 'modules/forum02/' kopiert und dabei eventuell vorhandene gleichnamige Dateien überschrieben. Mein FTP-Programm (FileZilla 3.5.2) hat die erfolgreiche Übertragung bestätigt, weshalb ich davon ausgehe, dass der Transfer fehlerfrei war.

Du hast also das bereits aktualiserte Forum02 mit den eigentlich veralteten Dateien aus Forum #1 überschrieben?
schön´s Grüssle, Andi

LiLiConsult

Hallo Andi,

Danke für Deine Unterstützung.

ZitatDer Fatal Error kommt ja aber aus dem Block "block-smf_Center.php". Da der aktiviert ist, muss er also auch vorher schon dagewesen sein. Der Block sucht standardmässig die Forumsdateien aber im Ordner /modules/Forum/, nicht in  /modules/Forum02/ und so wie ich das verstehe, hat das SMF im Ordner /modules/Forum/ ja noch den alten Stand, oder?
D.h. die Dateien passen nicht zu dem aktualiserten Block, weswegen dann die Funktion mxsmf_prepare_output() nicht gefunden wird.

Schon hier kann die Lösung drin stecken.

Ja, es ist so, dass es den Ordner /modules/Forum/ auch gibt. Da ist mein hauptsächliches Forum drin und ich wollte die Aktualisierung erst mal mit dem weniger wichtigen Forum (/modules/Forum02/) testen.

Wenn ich Dich richtig verstehe, dann müsste ich also /modules/Forum/ ebenfalls aktualisieren, dann wird sich der Fehler damit wahrscheinlich erledigt haben. Ist das so gemeint ?

ZitatDas Forum02, an und für sich läuft aber, oder? Probleme existieren nur auf der Startseite?

Im Moment ist es so, dass meine Seite für Besucher nicht erreichbar ist. Ich hatte einen Site-Service Text eingegeben und aktiviert; der wird angezeigt.

Wenn ich das Forum über den Admin-Bereich aufrufe, funktioniert es (scheinbar) reibungslos.

ZitatDu hast also das bereits aktualiserte Forum02 mit den eigentlich veralteten Dateien aus Forum #1 überschrieben

Nein, sorry. Hier habe ich mich wohl missverständlich ausgedrückt.

Die .zip-Datei 'pragmaMx-SMF-Bridge_1.12-update' enthält auch den Ordner /modules/forum/ und die darin befindlichen Dateien habe ich auf den Server in den Ordner /modules/forum02/ hochgeladen.

Den Ordner /modules/forum/ auf dem Server habe ich bisher noch nicht angepackt.

Zusammenfassend die Frage:

Ist es richtig, jetzt den Ordner /modules/forum/ ebenfalls zu aktualisieren, weil damit (wahrscheinlich) der Fehler nicht mehr auftreten wird ?

Nochmals vielen Dank für die schnelle und gute Hilfestellung.

Gruß
Wolfgang
Sage mir nicht, warum es nicht geht ... sage mir, wie es geht !


CMS-Version pragmaMx 1.12.3.1.33.4.14 (2012-06-21)
PHP-Version: 5.3.10
MySQL-Version: 5.1.61-0+squeeze1
Server-Version: Apache

Kauter

Hallo Wolfgang,

du hast sicherlich den Block-smf_Center auf der Startseite eingebunden, diese solltest du erstmal auf inaktiv setzen. damit sollte die Seite wieder erreichbar sein.
Ich gehe davon aus, das du ja wie beschrieben im Ordner /modules/forum/ nichts aktualisiert hast. Die Bridge beinhaltet noch den Ordner html/blocks mit Dateien und die Datei ssi.php
Diese beziehen sich dann auf die forum und nicht forum2, da es gewisse unterschiede zwischen den Versionen gibt solltest du entweder die alten blocks und ssi.php wieder hochladen oder eben forum aktualisieren.
Christian Kauter
www.hogaSCOUT.de - Das Gastronomieportal
we SCOUT your BUSINESS


CMS-Version: pragmaMx 1.12.3.1.33.4.14 (2012-06-21)
PHP-Version: 5.2.17
MySQL-Version: 5.0.96-log
Server-Version: Apache/2.2.24 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8r

IE 10 / Firefox / Opera

LiLiConsult

Yippee Yippee Yeah

Hallo Andi,
Hallo Christian,

sorry für den Anfang meiner Antwort, aber ich bin einfach nur froh, dass meine Seite wieder erreichbar ist und dass scheinbar die gröbsten Schnitzer behoben sind.

Eure beiden Antworten haben mich veranlasst, den Ordner /modules/Forum/ ebenfalls zu aktualisieren. Und siehe da ... grundsätzlich funktioniert es wieder. Und meinen Ärger, dass ich nicht selber darauf gekommene bin, werde ich in den nächsten Tagen abbauen.

Der eingeschaltete Debug-Modus bringt mir zwar noch einige Warnhinweise, aber mein Ehrgeiz verlangt, dass ich mich damit (zumindest zuerst) selber beschäftige.

Ich sage nochmals 'vielen Dank' für die vorbildliche Hilfestellungen.

Gruß
Wolfgang
Sage mir nicht, warum es nicht geht ... sage mir, wie es geht !


CMS-Version pragmaMx 1.12.3.1.33.4.14 (2012-06-21)
PHP-Version: 5.3.10
MySQL-Version: 5.1.61-0+squeeze1
Server-Version: Apache