Ein regelmäßiges Problem ist die Übergabe von Daten einer Anwendung z.B. an eine PHP-Anwendung. Im Beispiel wird ein verstecktes Formularfeld erzeugt, welches in einem Formular einbettet ist. Dieses Formular wird später von eienr PHP-Anwendung ausgelesen.
Die Herausforderung ist, dass wir einen mehrzeiligen Text übergeben, welcher auch Sonderzeichen enthalten kann. Daher konvertieren wir diesen zuerst definiert nach UTF-8 und kodieren diesen dann mit base64:
//UTF-8 Kodierung eines versteckten Feldes
byte[] bytes = Encoding.UTF8.GetBytes("mein täxt");
string utf8Str = Convert.ToBase64String(bytes);
result += GenerateHiddenField("feldname", utf8Str,);
public static string GenerateHiddenField(string name, string value, bool newLine = true)
{
string s = "<input type=\"hidden\" name=\"" + name + "\" value=\"" + value + "\">";
if (newLine) s+= Environment.NewLine;
return s;
}
$text = base64_decode($text);
Brauchen wir den Text als ISO-8859-1 kodierten Text, dann konvertieren wir den Text mit der Funktion "utf8_decode
":
$text = utf8_decode($text);