preg_replace Fehler

Scorp1337

Erfahrenes Mitglied
Hallo =)
ich hab da ein kleines Problemchen =)
....bei der Seite die ich im Moment programmiere, anstatt den aus der Datenbank geholten Umlauten werden Kästchen / Fragezeiche eingefügt.

Um dem Ganzen entgegenzuwirken hab ich versucht die Textausgabe vorher zu bearbeiten.

PHP:
						$text = substr($news["text"],0,300);
						$text = substr($text,0,strrpos($text," "));
						$text = preg_replace("ä", "ä", $text);
						$text = preg_replace("ö", "ö", $text);
						$text = preg_replace("ü", "ü", $text);

Das ist ein "Vorab-News-Text", deshalb wird er auf 300 begrenzt.

Allerdings krieg ich bei diesem Code folgende Fehler:

Warning: preg_replace() [function.preg-replace]: Delimiter must not be alphanumeric or backslash in P:\Programme\xampp\htdocs\Memorandum\templates\news.php on line 44/45/46

Die Zeilen sind die Zeilen mit dem preg_replace.

Muss ich das ä/ü/ö und die jeweiligen HTML Codes dafür vorher in eine Variable schreiben damit es funktioniert? oder was meint ihr wie ich abhilfe schaffen könnte?
 
Für diesen Zweck ist die Funktion [phpf]str_replace[/phpf] viel geeigneter als [phpf]preg_replace[/phpf].
Und dann sollte es auch so funktionieren.

Allerdings ist die Funktion [phpf]htmlspecialchars[/phpf] wahrscheinlich noch geeigneter für dich, da sie das was du vorhast automatisch macht.
 
Genau nach so einer Funktion hab ich gesucht.
Danke!

....einer Frage noch....
Wie rum ist es sinnvoller?
Beim Eingabeformular den Text mit HTML Chars zu versehen oder den Text normal zu speichern und dann bei der Ausgabe den String umwandeln? (Oder beides?)

Gruß Scorpion
 
Genau nach so einer Funktion hab ich gesucht.
Danke!

....einer Frage noch....
Wie rum ist es sinnvoller?
Beim Eingabeformular den Text mit HTML Chars zu versehen oder den Text normal zu speichern und dann bei der Ausgabe den String umwandeln? (Oder beides?)

Gruß Scorpion


Ist eigentlich relativ egal, da die Zeit zur Berechnung irrelevant ist (vermutlich in deinem Fall). Wenn du die Zeichen erst bei der Ausgabe umwandelst sparst du etwas Speicherplatz in der Datenbank ;)

Ich möchte dich noch auf 2 Funktion aufmerksam machen htmlentities und htmlspecialchars
 
Zurück