-
Also das scheint alles doch nicht ganz so trivial zu sein. Ich habe an manchen Ausgaben die Anzeige mittels mysql_query("SET NAMES 'utf8'"); korrekt bekommen, an anderen Stellen wird mir z.B. statt äüöß dann äüöß angezeigt, wenn ich mysql_query("SET NAMES 'utf8'"); nach der Verbindung verwende. Lasse ich das weg, ist die Ausgabe korrekt. Wo also angeben, und wo nicht? Das Umstellen der Felder in der DB auf utf-8, hat nichts gebracht. Ich habe gelesen, dass auch in den Formularen utf-8 verwendet werden sollte. Also der Aufwand ist, wenn man alles berücksichtigt, imens.
-
02.11.09 19:50 #17
- Registriert seit
- May 2007
- Ort
- Dresden (Sachsen)
- Beiträge
- 1.961
Meine Datenbanken laufen standardmäßig mit UTF8 als Kodierung und ich hatte bisher nie ein Problem damit.
Ich mag:- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
ja einfach ist es nicht.....
Ich würde dir empfehlen mit einer leeren Datenbank anzufangen.
Denn wenn schon Daten drin sind kannst du dir m.E. nicht sicher sein ob es jetzt korrekt in utf-8 kodiert ist.
Fang mit einer leeren Datenbank an und wenn alles wie gewünscht passt kümmere dich um das wiedereinpflegen der Daten.
Ja nur hier handelt es sich um ein Problem bei der Umstellung der Daten und genau da kommen die Probleme auf.
Wenn man von Anfang an einen Server hat bei dem utf-8 konsequent eingesetzt wird kennt man derartige Probleme nicht.
Geändert von Da_Chris (02.11.09 um 19:55 Uhr)
Google und die Forensuche beantworten 50% aller Fragen!
Pflichtlektüre: Das PHP Handbuch als Windows Help Datei
Bitte Benutzt für Source-Code immer die richtigen Formatierungstags:
[PHP]Für PHP diese Tags[\PHP] ... [HTML]Für HTML diese Tags[\HTML] ... [SQL]Für SQL diese Tags[\SQL] ... [CODE]Für sonstigen Code[\CODE]
Wenn mein Beitrag hilfreich war bitte ich um eine positive Bewertung.
-
Da_Chris hat es richtig erkannt, es geht um ein bestehendes System, deshalb wohl jetzt auch die Schwierigkeiten.
Also bei einem neuen Projekt wäre dann auf Folgendes zu achten: (?)
- DB-Felder mit UTF-8
- Verbindungen mit mysql_query("SET NAMES 'utf8'");
- evtl. Formulare mit UTF-8 kodieren, oder nicht notwendig?
- utf8_encode() und utf8_decode() noch notwendig?
Neue Datenbank heißt im Prinzip nichts anderes, als alle Tabellen-Felder entsprechend mit UTF-8 anzulegen, richtig? Was verwendet ihr hier? utf8_general_ci oder utf8_unicode_ci? Habe auch in manchen Systemen schon utf8_bin gesehen. Im Deutschen und Französischen funktioniert utf8_unicode_ci wohl mit der Sortierung gut, aber es soll ja mehrsprachig sein und hier hat keine Sprache Vorrang, alle sind gleichwertig zu behandeln.Ich würde dir empfehlen mit einer leeren Datenbank anzufangen.
-
Nun nicht unbedingt wenn der server entsprechend eingerichtet ist reicht ein eintrag im metatag des html um den client browser auf utf8 hinzuweisen.
Vorraussetzung ist Apache in einer aktuellen Version und eine Datenbank die utf8 kodiert ist.
Für dein Problem kann man als Workaround wenn du das Projekt nicht komplett aufsetzen willst utf8_en/decode einsetzen damit sollte es hinhauen.Google und die Forensuche beantworten 50% aller Fragen!
Pflichtlektüre: Das PHP Handbuch als Windows Help Datei
Bitte Benutzt für Source-Code immer die richtigen Formatierungstags:
[PHP]Für PHP diese Tags[\PHP] ... [HTML]Für HTML diese Tags[\HTML] ... [SQL]Für SQL diese Tags[\SQL] ... [CODE]Für sonstigen Code[\CODE]
Wenn mein Beitrag hilfreich war bitte ich um eine positive Bewertung.
-
Kann man die Datenbank selbst UTF-8-kodieren oder meinst du damit einfach, die Felder entsprechend zu kodieren?...und eine Datenbank die utf8 kodiert ist.
-
sollte ausreichen die Felder zu kodieren sofern es sich um aktuelles mysql handelt.
set names kann helfen bei problemen sollte aber nicht notwendig sein.
und ob general_ci oder was anderes is erstmal egal das hat mit der sortierung intern zu tun. Ich verwende general_ci und bin glücklich damit.
Nur wenn du mal bei querys bestimmte sortierung brauchst musst du dich in die mysql doku einlesenGoogle und die Forensuche beantworten 50% aller Fragen!
Pflichtlektüre: Das PHP Handbuch als Windows Help Datei
Bitte Benutzt für Source-Code immer die richtigen Formatierungstags:
[PHP]Für PHP diese Tags[\PHP] ... [HTML]Für HTML diese Tags[\HTML] ... [SQL]Für SQL diese Tags[\SQL] ... [CODE]Für sonstigen Code[\CODE]
Wenn mein Beitrag hilfreich war bitte ich um eine positive Bewertung.



1Danke

Zitieren


Login






[PHP][Snippet] Array zu XML konvertieren