Mailinglisten-Archive |
hallo, vielleicht hat ja jemand offenere Augen. Ich habe in diesem speziellen Fall nur die Möglichkeit, dem CMS zu sagen, jage bitte alles durch eine Funktion, die alles relevanten Zeichen mit htmlspechialchars bearbeitet - oder eben nicht (1 = ja|0 = nein). Also im einfachsten Fall: funktion html($string) { return htmlspechialchars($string); } Da ich aber spezielle, mit [c]xxx[/c] umschlossene hrefs, jeweils parsen oder auch nicht parsen möchte, muss ich mir was einfallen lassen. Ich poste nur den relevanten Teil der Funktion: Es soll alles ersetzt werden - außer die ausgezeichneten Stellen; die sollen als hrefs vorhanden bleiben. // Erst alles wandeln, da ich diese als return später brauche $string = htmlspecialchars($string); // Die relevanten Teile rausholen preg_match("/(\[c\])(.*)(\[\\/c\])/", $string, $matches); // Die Pattern... $search = array("'<'","'>'","'"'", "'\[c\]'","'\[/c\]'","'&'"); $replace = array("<",">","\"","","","&"); //Den Inhalt der Ergebnisstrings wieder in einfache Zeichen wandeln $text = preg_replace($search, $replace, $matches[0]); $erg = $matches[0]; // Die vormals gefunden Teile ($matches[0] jetzt $erg) durch das Ergebnis aus dem letzten preg_replace ersetzen; Vorkommen in der var $string; und das Ergebnis zurückgeben. return preg_replace($erg, $text, $string); [/...] Genau das letzte funktioniert aber nicht. Ich bekomme Fehlermeldungen, das nicht erlaubte Delimiter gefunden werden. Ich habe schon versucht, mit den verschiedensten Quotes rumzumachen, um dem letzten preg_replace klar zu machen, das er die Pattern als "nur-strings" ansehen soll, komme hier aber auch nach längerem Versuchen zu keinem Ergebnis. Einzeln ($text, $string, $erg) bekomme ich alles raus,- nur will ich natürlich nicht die ersetzten Strings und gleichzeitig deren nicht bearbeitet Pendants haben... Ist der Weg grundsätzlich falsch oder wo könnte mein Fehler liegen ? Danke schon jetzt! gruss Olaf -- Olaf Gleba | creatics media&systems http://www.creatics.de | mailto:og at creatics.de
php::bar PHP Wiki - Listenarchive