Hello,
das ist schon ganz schön verknotet bei Dir :-O
http://de1.php.net/manual/en/function.mb-substr.php
Das sollte dann auch durchgängig durchgehalten werden im ganzen Projekt.
Ach Du großer Schreck! Das heißt Arbeit.
Aber schon am Anfang scheitere ich:
<?php
header('Content-Type: text/html; charset=UTF-8');
echo <<<TXT
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
</head>
<body>
TXT;$string='Apfel';
$key = mb_substr($string,0,1);
echo "$key <br>"; // => A$string='Äpfel';
$key = mb_substr($string,0,1);
echo "$key <br>"; // => ?$string='Apfel';
$key = mb_substr($string,0,2);
echo "$key <br>"; // => Ap$string='Äpfel';
$key = mb_substr($string,0,2);
echo "$key <br>"; // => Äecho <<<TXT
</body>
</html>
TXT;
?>
Lass Dir mal <http://de1.php.net/manual/en/function.mb-internal-encoding.php> augeben.
Und gewöhn Dir an, Ausgaben, die im HTML-Kontext landen, gleich richtig zu behandeln
<http://de1.php.net/manual/en/function.htmlspecialchars.php>
Und hast Du auch mal in den Quelltext im Browser geschaut, was dort angekommen ist?
Denke daran, dass der Editor des Browsers (Quelltextanzeige) auch schon cooked arbeitet, also die seiner Meinung nach passende Decodierung benutzt.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
![](http://selfhtml.bitworks.de/Virencheck.gif)
--
☻\_
/▌
/ \ Nur selber lernen macht schlau
<http://bikers-lodge.com>