Seite 2 von 2

Verfasst: 11.01.2005 19:18
von Pyramide
itst hat geschrieben:Die Eingabe kommt doch per Formular, oder?

In diesem Fall ist der Inhalt der Variable URL-kodiert, so daß Umlaute in ihren Hex-Code umgewandelt sind. Das musst Du mit urldecode() rückgängig machen.
Das macht PHP ja schon automatisch. Wenn man sich die von dragon geposteten Strings ansieht, stellt man jedoch fest, daß es sich dabei um UTF-8 handelt. Anstatt seines komplizierten Codes würde also folgender reichen:

Code: Alles auswählen

$search = array('Ä', 'Ö', 'Ü', 'ä', 'ö', 'ü', 'ß');
$replace = array('Ae', 'Oe', 'Ue', 'ae', 'oe', 'ue', 'ss');
$string = str_replace($search, $replace, utf8_decode($string));
Bleibt noch die Frage, wieso die Strings überhaupt als UTF-8 ankommen - wird das von HTTP so gefordert?
Bin gerade zu faul, selbst nachzugucken :D

Verfasst: 12.01.2005 16:45
von AmShaegar
dragon1402 hat geschrieben:

Code: Alles auswählen

  $string = urldecode($string);
ich glaub, das kannst du dir dann sparen. hast ja eh keinen code mehr da oder irre ich mich?