Empfehlungen: Erweiterte Suche

Auch: Umlaute

Unterstützung der Daten-Formatierung in den Views (DRY)

Auch: Umlaute

Beitragvon havanna » Mo 16. Mär 2009, 22:14

Ähnlich wie Mathias http://www.cakephp-forum.com/helper/keine-umlaute-trotz-utf-8-t165.html habe ich das Problem mit Umlauten - allerdings nur in der Übersetzung und in Flash-Messages.
Wenn ich in der Übersetzungsdatei (default.po) die HTML-Kodierung für einen Umlaut verwende (z.B. ä für ä) dann geben mir Firefox und Internet Explorer genau diese Zeichenfolge aus: ä
Wenn ich den deutschen Umlaut verwende (ä) kommt gar nichts.
Im Head habe ich <?php echo $html->charset('utf-8'); ?> daran sollte es also nicht scheitern. Als Editor verwende ich Notepad++, der ist auf utf-8 eingestellt.

Irgendeine Idee?

Ciao Thomas
Benutzeravatar
havanna
 
Beiträge: 191
Registriert: Mi 15. Okt 2008, 23:12
Wohnort: Bodman-Ludwigshafen
CakePHP-Version: 1.2.x
OS: WIN

Re: Auch: Umlaute

Beitragvon euromark » Mi 18. Mär 2009, 18:38

ich verstehe den sinn nich ganz, umlaute bei utf8 mit &auml; etc zu codieren^^
euromark
 
Beiträge: 618
Registriert: Fr 27. Jun 2008, 22:17
Wohnort: München
CakePHP-Version: 2.1
OS: Windows

Re: Auch: Umlaute

Beitragvon havanna » Mi 18. Mär 2009, 19:42

Hallo Mark,
da hast du sicher Recht. Aber in meiner Verzweiflung habe ich alles durchgetestet, was geht.

Fakt ist:
1) ich habe im Header <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/> (das ist der Quelltext im Browser im Layout entsprechend als PHP)
2) ich habe die Ausgabe von cake erzeugen lassen (gebacken) der Quelltext sieht dann z.B. so aus:
Code: Alles auswählen
<?php echo $html->link(__('Edit', true), array('action'=>'edit', $user['User']['id'])); ?>


3) Den Header in der Datei default.po habe ich noch etwas ergänzt entsprechend dem Beispiel von Mathias. Sieht jetzt so aus:
Code: Alles auswählen
"Project-Id-Version: PROJECT VERSION\n"
"POT-Creation-Date: 2009-03-16 21:15+0100\n"
"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\n"
"Last-Translator: NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <EMAIL@ADDRESS>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: German\n"
"X-Poedit-Country: GERMANY\n"
"X-Poedit-SourceCharset: utf-8\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"


Die Message in der default.po ist z.B.
Code: Alles auswählen
#: \views\groups\index.ctp:32
#: \views\groups\view.ctp:64
#: \views\users\admin_index.ctp:50
#: \views\users\index.ctp:64
msgid "Edit"
msgstr "Ändern"


Wenn ich einen deutschen Umlaut hier einsetze, wird garnichts ausgegeben. Wenn ich HTML-Code eingebe, wird der ausgegeben wie geschrieben.

Als Editor verwende ich Notepad++. Das Format im Editor ist auf UTF-8 eingestellt.

Was könnte man noch ausprobieren?

Ciao Thomas
Benutzeravatar
havanna
 
Beiträge: 191
Registriert: Mi 15. Okt 2008, 23:12
Wohnort: Bodman-Ludwigshafen
CakePHP-Version: 1.2.x
OS: WIN

Re: Auch: Umlaute

Beitragvon havanna » Mi 18. Mär 2009, 19:46

Hat sich soeben erledigt.

Habe noch einmal alles im Editor durchgeschaut. Cake hatte die Datei default.po in ANSI gebacken. Dachte es wird mir autom. in UTF-8 umgewandelt, wenn ich "Speichern unter..." wähle und UTF-8 in den Grundeinstellungen habe.

So ein Mist.

Ciao Thomas
Benutzeravatar
havanna
 
Beiträge: 191
Registriert: Mi 15. Okt 2008, 23:12
Wohnort: Bodman-Ludwigshafen
CakePHP-Version: 1.2.x
OS: WIN


Zurück zu Helper

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron