Der Esel is back,
wie Ihr bemerken könnt: Ich habe meine IT-Probleme nach dem Releaseupgrade auf openSUSE 42.2 lösen können
. Das hat mich den halben Morgen gekostet und somit hat es auch keinen Sport gegeben. Man muss halt Prioritäten setzen. Kommen wir zur einfachen Lösung: Wie verhindert man Zugriffe aus dem bösen Internet, wenn man bei MySQL die Option "skip-networking" nicht mehr benutzen kann? Man bindet die Datenbank nur auf den localhost mit "bind-address=127.0.0.1". Das Ganze eben, weil e107 anscheinend in der Kombination mit php7 nicht mit Unix-Sockets arbeiten kann. Das andere Problem war schwieriger zu lösen: Das Modul MySQL gibt es bei php7 schlicht nicht mehr und das ist einfach doof für e107 in der ersten Version (die ich immer noch einsetze). Alternativ soll/kann man unter php7 mit MySQLi oder pdo arbeiten. Zunächst sah mir MySQLi als die attraktivere Option aus.
Es ist im Prinzip nur ein anderes Präfix und sämtliche Funktionen stehen auch in dem alternativen Modul zur Verfügung. Allerdings in vielen Fällen mit einer leicht anderen Parameterliste, obwohl die Parameter inhaltlich gleich sind (das verstehe, wer will: Warum überhaupt MySQLi und warum mit anderen Funktionssignaturen?). Aber ich hätte extrem viele Codestellen anpassen müssen. Obwohl ich gestern Abend noch angefangen war, habe ich abgebrochen: Das Unterfangen hätte keine Erfolgschance gehabt. Bei einer Tasse Kaffee kam mir ein blendender Gedanke: Wenn sich MySQL und MySQLi derartig ähnlch sind, muss es doch einen Wrapper geben??? Gesucht, gefunden:
MyWrapper. Den Wrapper-Code als php-Datei abspeichern, an den richtigen e107-Codestellen ein Include machen und ich hatte meinen DB-Zugriff wieder
. Der Rest war Feinarbeit, z.B. aufgekündigte Funktionen wie ereg oder eregi durch andere ersetzen.
Es ist extrem
warm geworden: Tagsüber +8 Grad und Sonne, jetzt +5 Grad,
Ralf