Hallo,

 das Problem ist inzwischen gelöst, quasi während des Schreibens dieser
Mail. Trotzdem schicke ich Sie ab, fürs Archiv und Leute, die später mal
irgendwann vielleicht ähnliche Probleme haben.

während dem Entwickeln habe ich DEBUG standardmäßig auf 2, das ist klar. Als
ausgeführtes Statement gab der Firefox mir an der Stelle, wo der Umlaut sein
soll ein ?. Damit konnte ich leider auch nicht viel anfangen... jetzt wird
es interessant:

ich hab mal mit utf8_encode() und utf8_decode() gespielt um zu sehen, ob es
was bringt, den Suchbegriff aus dem Input-Feld umzuwandeln. Hat aber beides
nichts erhellendes gebracht bis auf die Kombination, das ich "set names
utf-8" im Model weggelassen habe und den Suchstring mit utf8_decode() in
ISO-8859-1 gewandelt habe. Hier werden dann die gewünschten Datensätze
gefunden, allerdings ist jetzt natürlich die Ausgabe wieder vermurkst und
überall wo Umlaute sind erscheint im Firefox ein ? und im IE ein Kästchen.
wenn ich mir im IE den Quelltext anzeigen lasse, dann sind an den richtigen
Stellen die Umlaute. Sie werden halt nur nicht angezeigt. Der Firefox setzt
auch gleich in die Quelltext-Ausgabe Fragezeichen (das hatte mich zunächst
etwas verwirrt und ich dachte, die Fragezeichen würden auch so schon
ausgegeben). 

 Also ging ich nun davon aus, dass die Sonderzeichen im ISO 8859-1
ausgeliefert werden (das war mehr oder weniger geraten). Ich hab dann mal im
default.ctp den charset entsprechend umgestellt <?php
$html->charset('iso-8859-1'); ?> und siehe da: die Zeichen werden richtig
angezeigt. 

Dann wieder das utf8_decode ausgebaut und zumindest im Firefox funktioniert
es jetzt: Sonderzeichen werden dargestellt, Suche findet die gewünschten
Datensätze. Nur der Internet Explorer machte immernoch Probleme und auch nur
dann, wenn ich einen der Links in der Seite angeklick habe, bei dem der
Suchbegriff "mitgeführt" wird (das brauche ich für den Paginator). Dann wird
im Input-Feld auf der nächsten Seite nicht mehr der Umlaut ausgegeben (und
offenbar auch nicht mehr nach diesem gesucht) sondern dort stehen dann an
der entsprechenden Stelle UTF-8-Sonderzeichen (z. B. ü). In der
Adressleiste steht der Umlaut im IE, der Firefox schreibt hier %FC.  der IE
konvertiert also scheinbar Umlaute in URL irgendwie standardmäßig in UTF-8,
egal welcher charset im Dokument angegeben ist (das ist zumindest spontan
meine Schlußfolgerung - stimmt das?). Der Firefox scheint da etwas schlauer
zu sein und konvertiert Umlaute in URL je nach dem, welcher charset
angegeben ist. also für den IE an dieser Stelle noch extra URL-Strings
gebaut (mit urlencode() - was auch ISO-8859-1 erzeugt) und dann nimmt der
das auch brav.

 Alles in allem eine sehr lehrreiche Lektion:o)

 so, genug der Bastelstunde für heute, liebe Grüße und gute Nacht
- Chris


--~--~---------~--~----~------------~-------~--~----~
Sie erhalten diese Nachricht, weil Sie Mitglied sind von Google Groups-Gruppe 
"CakePHP-de für deutsche CakePHP Entwickler".
 Für das Erstellen von Beiträgen in dieser Gruppe senden Sie eine E-Mail
an [email protected]
 Um sich von dieser Gruppe abzumelden, senden Sie eine E-Mail an [EMAIL 
PROTECTED]
 Weitere Optionen finden Sie in dieser Gruppe unter 
http://groups.google.com/group/cakephp-de?hl=de
-~----------~----~----~----~------~----~------~--~---

Antwort per Email an