PHPlist – der FCKEditor wird nicht angezeigt.

Mal wieder ein Auszug aus dem Alltag einer Web-Programmiererin:

Zu installieren und einzurichten war phplist als Newsletterversandtool. Aus unerfindlichen Gründen lief der WYSIWYG-Editor, der FCKEdit, nicht auf dem Kundenserver. Auf dem eigenen Server ging’s natürlich. Wie galt es nun vorzugehen, um zu ermitteln, was am Kundenserver so anders war? Klar, die PHP-Versionen sind nicht identisch, die Server haben etliche unterschiedliche Einstellungen und Sicherheiten, aber ich konnte den Kundenserver schlecht ändern und meinen auch nicht wirklich. Also machte ich mich zuerst ans googlen bei Leuten mit dem gleichen Problem. Das hatten welche, aber die in Foren angegebenen Lösungen waren trivial. Natürlich ist Javascript aktiviert oder die config.php  richtig konfiguriert. Also machte ich mich ans selbst debuggen. Dazu ist das erste hilfreiche Tool der Firebug. Der lieferte nämlich gleich mal einen entscheidenden Hinweis bei seiner Aktivierung:

NetworkError: 500 Internal Server Error - http://***(Pfad)***/admin/?page=fckphplist&action=js4"

Aha, also rief ich diese Seite direkt auf. Gleicher Fehler, klar. Übersetzt handelt es sich um die fckphplist.php. Da habe ich dann gleich am Anfang ein

 "echo test"; flush(); 

eingefügt. Warum flush? Um sicherzugehen, dass die Ausgabe gesendet wird, bevor der Programmabsturz passiert.  Das „test“ wird trotzdem nicht angezeigt. Das ist seltsam, habe ich aber auch schon öfters erlebt. Sind da irgendwelche Zeichencode-Fehler drin? Nun weiß ich nur noch eine Vorgehensweise: Die Datei Stück für Stück reduzieren, bis der Fehler nicht mehr auftaucht. Am Anfang lösche ich alles bis auf die Ausgabe. Das klappt. Nun hangel ich mich Stück für Stück durch das Entfernen von Codeteilen durch (was nervig lange dauert), bis ich die entscheidende Zeile(n) entdecke:

// FCKConfig.ProtectedSource.Add( /<%[\s\S]*?%>/g ) ; 
// ASP style server side code <%...%>

Aha, ich hätte das auch schneller erkennen können, da der Notepad++ die Stellen farblich anders hervorhebt. Es handelt sich hier offenbar um die öffnenden und schließenden Tags um ASP-Programmcode zu integrieren. Da der Server des Kunden ein Windoof-Server mit offenbar aktivierten ASP ist, wirden dieser ausgeführt. Da innerhalb der Tags nur Sinnlos-Code steht, zumindest wohl die Stelle <%...%>
führt das zum vollständigen Server-Error. Da diese Zeile eh auskommentiert ist, reicht ein einfaches rausnehmen dieser Zeile, und einer weiterer mit diesen Tags weiter unten und schwuppdiwupp, der Editor geht. Wieder bin ich erfahrener geworden, nächstes Mal kann ich ähnliche Probleme schneller lösen. Und genau diese mittlerweile 10-jährige Erfahrung in der PHP-Programmierung für all solchen „komischen“ Probleme zeigt mir, dass die wichtigen Dinge nicht nur im Studium erlernt werden, sondern erst die Praxis einen guten Programmierer kreiert.

Ein Gedanke zu „PHPlist – der FCKEditor wird nicht angezeigt.“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert