Befehl zum HTML-Sonderzeichen umwandeln
Karl Kowald
- php
Huhu...
hätte eine Frage: Mit welchem Befehl kann ich Sonderzeichen, also Ä,Ö,Ü,ß,&, etc., in HTML-Code umwandeln lassen, jedoch die HTML-Tags ,< & >, weiterhin nutzen, sodass die Sonderzeichen umgewandelt werden, aber HTML-Tags weiterhin eingetragen werden können.
Ich hab mir nen kleinen Blogger gebastelt (http://karl.kowald.info). Allerdings kann ich derzeit keine Links in die Datenbank schreiben, weil ich vorher alles per htmlentities umwandle...
Gibts da ne vorgefertigte funktion, oder muss ich den ganzen Text auseinandernehmen und nach solchen Zeichen parsen, sodass nur die anderen Teile umgewandelt werden?
Guten Morgen!
hätte eine Frage: Mit welchem Befehl kann ich Sonderzeichen, also Ä,Ö,Ü,ß,&, etc., in HTML-Code umwandeln lassen, jedoch die HTML-Tags ,< & >, weiterhin nutzen, sodass die Sonderzeichen umgewandelt werden, aber HTML-Tags weiterhin eingetragen werden können.
Ich hab mir nen kleinen Blogger gebastelt (http://karl.kowald.info). Allerdings kann ich derzeit keine Links in die Datenbank schreiben, weil ich vorher alles per htmlentities umwandle...
Du musst im Grund gar nichts maskieren, solange Du von Eingabe bis Ausgabe auf einen, durchgängig benutzten Zeichensatz achtest.
Moderne Browser kannst Du mit <form ... accept-charset="utf-8"> dazu veranlassen, die Daten in UTF-8 zu senden. Umgekehrt kannst Du bei der Ausgabe den Browser mit (unter anderem) header("Content-Type: text/html; charset=utf-8"); darauf hinweisen, wie er die Bytes interpretieren soll, musst dann allerdings logischerweise dafür Sorge tragen, dass der Rest der Seite auch in utf-8 kodiert ist. Du bräuchtest also einen utf-8-fähigen Editor (unter Windows zum Beispiel notepad++).
Scheint vielleicht auf den ersten Blick etwas aufwendig, ist es aber in der Praxis nicht und Du wärest Ärger mit Zeichensätzen und -maskierungen ein für allemal los, einzig um <, > und & müsstest Du Dich mit htmlspecialchars() kümmern.
Dass Du der Außenwelt nicht die Möglichkeit geben solltest, in Deine Seiten HTML-Code einzubauen, und falls doch, dass Du diesen Code bis in die Attribute hinein kontrollieren musst (Stichwort: Javascript), weißt Du sicherlich.
Grüße.