Fehlerlösungen
[unmarkierte Version] | [unmarkierte Version] |
Zeile 3: | Zeile 3: | ||
=Fehler in PHP= | =Fehler in PHP= | ||
+ | ==Internal Server Error== | ||
+ | Wenn beim Abspeichern eines Beitrag der Internal Server Error auftritt, kann der Beitrag nicht gespeichert werden, da die Seite kollabiert. | ||
+ | |||
+ | Der Fehlergrund hierfür liegt in zwei hintereinanderfolgenden -, die am Zeilenbeginn stehen. | ||
+ | '''Daher bitte niemals zwei hintereinanderfolgende - (--) am Zeilenbeginn einfügen!''' | ||
+ | |||
==CustomTitle== | ==CustomTitle== | ||
Mit der Extension CustomTitle trat das Problem auf, dass im Text immer wieder Codeteile dargestellt wurden, wie z.B. xxx-CustomPageTitleStart-xxxDoel en scopexxx-CustomPageTitleEnd-xxx | Mit der Extension CustomTitle trat das Problem auf, dass im Text immer wieder Codeteile dargestellt wurden, wie z.B. xxx-CustomPageTitleStart-xxxDoel en scopexxx-CustomPageTitleEnd-xxx |
Version vom 16. Mai 2018, 15:22 Uhr
Diese Seite dient zur Erklärung von verschiedensten Fehlern, die aufgetreten und behoben worden sind.
1 Fehler in PHP
1.1 Internal Server Error
Wenn beim Abspeichern eines Beitrag der Internal Server Error auftritt, kann der Beitrag nicht gespeichert werden, da die Seite kollabiert.
Der Fehlergrund hierfür liegt in zwei hintereinanderfolgenden -, die am Zeilenbeginn stehen. Daher bitte niemals zwei hintereinanderfolgende - (--) am Zeilenbeginn einfügen!
1.2 CustomTitle
Mit der Extension CustomTitle trat das Problem auf, dass im Text immer wieder Codeteile dargestellt wurden, wie z.B.
Um dies zu Unterbinden wurden in der CustomTitle.php die Funktion onOutputPageBeforeHTML verändert.
vorheriger Code:
function onOutputPageBeforeHTML(&$out, &$text) { if (($found = strpos($text, 'xxx-CustomTitleStart-xxx')) !== false) { if (preg_match("//", $text, $matches)) { $this->customTitle = $matches[1]; $text = str_replace($matches[0], "", $text); } } if (($found = strpos($text, 'xxx-CustomPageTitleStart-xxx')) !== false) { if (preg_match("//", $text, $matches)) { $this->customPageTitle = $matches[1]; $text = str_replace($matches[0], "", $text); } } return true; }
Lösung:
function onOutputPageBeforeHTML(&$out, &$text) { if (($found = strpos($text, 'xxx-CustomTitleStart-xxx')) !== false) { if (preg_match("//", $text, $matches)) { $this->customTitle = $matches[1]; $text = str_replace($matches[0], "", $text); // replace any remaining occurrences while (preg_match("//", $text, $matches)) { $text = str_replace($matches[0], "", $text); } } } if (($found = strpos($text, 'xxx-CustomPageTitleStart-xxx')) !== false) { if (preg_match("//", $text, $matches)) { $this->customPageTitle = $matches[1]; $text = str_replace($matches[0], "", $text); // replace any remaining occurrences while (preg_match("//", $text, $matches)) { $text = str_replace($matches[0], "", $text); } } } return true; }