dedlfix: Versenden von <option value='&lt;' />

Beitrag lesen

Tach!

Bei mir steht der Text vollständig drin. Einfach so. Und da muss auch nicht mit irgendwelchen Methoden am Client gezaubert werden.

Vielleicht liegt es tatsächlich an meinen Meta-Data im Header. Ich werde mal verschiedene charsets ausprobieren.

Zeichenkodierungen sind, soweit ich das bisher sehe, kein Teil des Problems.

Deine Frage ist vermutlich eher, wie man solche Zeichen im HTML-Umfeld anzeigen lassen kann: Indem man sie kontextgerecht maskiert.

echo htmlspecialchars($_REQUEST['address']);

Nein, das war nicht meine Frage. Habe schon htmlspecialchars() probiert. Maskiert ja nicht anders, als wenn ich per Hand &lt; schreibe.

Du kannst vielleicht in Literale im Code per Hand Maskierungen schreiben, aber du kannst nicht in einem laufenden Programm Daten während der Verarbeitung per Hand ändern. (Das heißt, das kannst du schon, wenn du einen Debugger hast und das Programm an einem Breakpoint anhältst. Das ist aber im PHP-Umfeld nicht üblich.)

Es geht darum, das was du in $_REQUEST stehen hast, auf den Bildschirm zu bekommen, und zwar so, dass dabei keine Zeichen vom Browser fehlinterpretiert werden und dir so der Eindruck entsteht, dass da Teile von den Daten abgeschnitten werden. In deinem Fall verschwindet nämlich nichts, jedenfalls nicht, wenn ich die Puzzleteile deiner Problembeschreibung soweit ergänze, dass eine nachvollziehbare Testumgebung entstehen kann.

Du kannst das htmlspecialchars() auch weglassen und stattdessen in die Quelltextansicht des Browsers schauen, wenn du meinst, dass htmlspecialchars() nicht die Lösung deines Problems ist. Andererseits kannst du auch ein vollständig nachvollziehbares Beispiel des Problems liefern, dann kann man vielleicht erkennen, wo der Fehler wirklich sitzt.

dedlfix.