Hallo zusammen!
Vorneweg: ich bin nicht sicher ob ich hier im Unterforum richtig bin, aber da ich Erfahrungen im Debugging brauche, hoffe ich, dass das halbwegs passt.
Heute hab ich mal wieder ein ganz dämliches Problem.
Wir nutzen für unsere Kundenprojekte immer gerne das Protheme aus dem Themestore und haben dementsprechend schon die eine oder andere Instanz davon im aktiven Betrieb. Seit Wochen (Monaten...?) habe ich aber zwei Instanzen, die im Gegensatz zu den anderen, einen nervigen Bug zeigen.
Die erste Frage, die euch nun sicher unter den Nägeln brennt: Warum fragt sie dann nicht bei den Protheme-Entwicklern?
Weil meine Recherche bisher ergeben hat, dass es nicht (ausschliesslich oder gesichert) am Protheme hängt. Ich hab mittlerweile den Punkt gefunden, WO der Fehler passiert, aber ich stoße mit meinen debugging-Fähigkeiten an meine Grenzen. Ich hoffe, es hat jemand ein wenig Zeit, sich das Problem durchzulesen um mir in die richtige Spur zu helfen:
Das System: derzeit Contao 4.4.40 - Problem existiert mindestens seit 4.4.35 bis hin zu 4.4.40. Was vor 4.4.35 war, kann ich nicht genau sagen, da wir länger nicht mehr an diese Elemente ran mussten und es erst mit 4.4.35 auffiel. Ich hab eine alte Testversion noch lokal auf meinem Ubuntu-Rechner, die hat das Problem nicht und läuft mit 4.4.26
Die Server:
Einmal Ubuntu 16.04 auf eigenem Server mit PHP 7.2, einmal ein Hostingpaket bei Netcup, beides wird mit Plesk administriert.
Das Problem:
Ich kann im Protheme bei Artikeln ein Hintergrundbild anlegen, entweder "einfach" oder als Parallaxe. Wenn ich das im Backend auswähle (egal ob Bild alleine oder mit Parallaxen-Effekt), wird das Filepicker-Widget geöffnet (alles gut), ich wähle eine Datei (auch alles ok) und übernehme die Auswahl, um dann das Artikel-Backendformular wieder zu sehen. HIER geschieht irgendwie ein Fehler. Denn bevor ich den Filepicker aufrufe, heisst das Formularfeld "t4c_row_image", das deckt sich auch mit dem Quellcode, alles in Ordnung. Wenn die Auswahl abgeschlossen ist und ich das Bild als Vorschau im Backend sehen kann, dann heisst das Formularfeld, das übertragen wird sobald ich auf "speichern" klicke, plötzlich "t4c[][image]"
So sieht der Quelltext für das Feld in der Entwicklerkonsole von Chrome aus, wenn ich den Filepicker geschlossen habe:
HTML-Code:
<input type="hidden" name="t4c[][image]" id="ctrl_t4c_row_image" value="0ac0f6e0-94d0-11e8-8d33-d8cb8a37d3c5">
Die Konsequenz ist natürlich dass die Datei nirgends eingetragen wird, wenn ich auf Speichern klicke. Ich weiss also, was passiert und ich weiss, wo es ungefähr passiert - aber ich weiss nicht, WARUM.
Besonders treibt mich in den Wahnsinn, dass ich dieses Problem nicht in allen Instanzen habe, die das Protheme benutzen. Ich habe andere Contao-Instanzen, die ebenfalls mit Protheme laufen und der selben Contao-Version, aber dieses Verhalten nicht zeigen. Ich habe mir den Quellcode angesehen - nicht, dass ich Experte wäre - und ich sehe innerhalb meiner Fähigkeiten keine Fehler, die das Auslösen würden. Aber es scheint ja irgend etwas zu sein, das dafür sorgt, dass die Zeichenkette t4c_row_image zu t4c[][image] umgedeutet wird.
Hier meine Bitte: Habt ihr einen Hinweis für mich, wo/ wie ich das Ganze weiter debuggen kann, um den Übeltäter zu finden? Ich erwarte keine Lösung für das Problem an sich, aber ich brauche bitte ein paar Denkanstöße, wo und wie ich den Fehler weiter verfolgen kann. Debugging über app_dev.php im Backend funktioniert nicht, ich bekomme die Symfony-Profiler-Bar nicht angezeigt (lokal auf Ubuntu).
Bevor ich nicht genauer sagen kann, was diesen Fehler verursacht (wahrscheinlich war ich das irgendwie sogar selbst...?!), kann ich auch keinen Entwickler anschreiben, ob er/sie das beheben kann oder wahlweise selbst beheben.
Danke für's Lesen!
VG,
Marina
Lesezeichen