Sieht soweit okay aus. Bleibt der Rest zu prüfen...
Problem mit UTF-8
Einklappen
X
-
Kann es sein, dass das was mit dem Browser zu tun hat? Ich habe nun in der Sedcard mal ein paar Sonderzeichen ausgebessert und siehe da, die kommen auch wieder richtig an. Also muss doch im Browser irgendwas umzustellen sein, oder eben doch ein accept-charset="utf-8" an den Form-Tag hängen?
Kommentar
-
Nein, das hat nichts mit dem Browser zu tun.
Wenn utf8 Zeichen für iso zeichen gehalten werden und so in die Datenbank gespeichert werden und du dann beim auslesen diese utf8 Zeichen immernoch für iso-zeichen hältst, dann ist es klar, dass sie korrekt dargestellt werden, obwohl sie falsch gespeichert werden. (ich hoffe ich habe das jetzt richtig verschriftlicht.)
Das kannst du übrigens in der Datenbank überprüfen.
Kommentar
-
Wenn du es WIE einträgst?
Gehen wir mal wie folgt vor:
1) Stelle sicher, dass über PMA alle Daten korrekt angezeigt werden.
2) Kontrolliere deine Webseite, wo noch Fehler angezeigt werden.
3) Jetzt prüfst du ob die Formulare die Daten korrekt eintragen/manipulieren, oder ob dabei Fehler entstehen.
So sollte sich vernünftig debuggen lassen.
Kommentar
-
Ich habe die fehlerhafte Sedcard per Webseite anzeigen lassen, bin dann in die Zentrale, hab die Sonderzeichen ausgebessert und dann gespeichert und schon waren auf der Webseite, wie auch im PMA, alle Sonderzeichen wieder in Ordnung. Nur wenn andere diese Forumulare nutzen, dann kommen da diese verstümmelten Sonderzeichen raus, aber eben auch nicht bei allen.
Kommentar
-
Es könnte vielleicht daran liegen, dass du einmal general_ci und einmal unicode_ci hast.
Die Mysql Verbindung setzt du auf general_ci
mysql_query("SET collation_connection='utf8_general_ci'");
mysql_query("SET collation_server='utf8_general_ci'");
`kuerzel` varchar(10) collate utf8_unicode_ci NOT NULL default '',
`land` varchar(150) collate utf8_unicode_ci NOT NULL default '',
UNIQUE KEY `kuerzel` (`kuerzel`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
mysql_query("SET collation_connection='utf8_unicode_ci'");
mysql_query("SET collation_server='utf8_unicode_ci'");
Kommentar
-
Original geschrieben von uspri
Kann es sein, dass das was mit dem Browser zu tun hat? Ich habe nun in der Sedcard mal ein paar Sonderzeichen ausgebessert und siehe da, die kommen auch wieder richtig an. Also muss doch im Browser irgendwas umzustellen sein, oder eben doch ein accept-charset="utf-8" an den Form-Tag hängen?
ich bin absoluter neuling, was php und mysql anbelangt, aber exakt dieses problem hatte ich auch schon und zwar explizit mit mysqlabfragen.
von einem anderen pc aus war alles in ordnung, von meinem pc aus wurden sämtliche deutschen sonderzeichen und umlaute falsch wie in der problematik beschrieben dargestellt.
eine wirkliche ursache habe ich hierfür noch nicht gefunden, aber der fehler tritt bei mir meist dann auf, nachdem die systemressourcen absinken und mir msie abstürzt.
es wäre wirklich interessant zu wissen, woran das liegt.
es liest sich zwar blöde an, aber hast du, wenn dieses problem auftritt, deine kiste einmal neu gestartet und dann unmittelbar geprüft, was dann ist?
weil es bei mir nach einem neustart dann bis zum nächsten msieabsturz funktioniert..
ich vermute, dass es was damit zu tun hat, denn wenn ich die codierung im browser umstelle, dann wird mein text hier wie folgt dargestellt:
...... habe ich hierf?h nicht gefunden, aber ..... und mir msie abst?
es w䲥 wirklich interessant....Zuletzt geändert von Joergoletto; 17.09.2008, 02:05.
Kommentar
-
Ich mag mich irren, aber ich hatte kürzlich auch ein Problem mit UTF-8 Java und einem generierten XML Dokument....
In einer Java API hatte ich ständig eine Exception, wenn ich versucht habe dieses XML Dokument zu öffnen. Habe ich es lokal gespeichert und dann eingeladen ging es....
Zur Lösung des Problemes:
Ich hatte bei der Genierung den hier nicht gesetzt:
http://de.wikipedia.org/wiki/Byte_Order_Mark
In eurem Fall würde ich mal versuchen, die PHP File unter UTF-8 mit BOM abzuspeichern....
evtl. hilft das, zumindest würde ich es mal versuchen...
BTW: ultraedit kann jeden Zeichensatz speichern...ne trial gibts sicher auch...[color=blue]MfG Payne_of_Death[/color]
[color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
[color=red]Merke:[/color] [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->
Murphy`s Importanst LAWS
Jede Lösung bringt nur neue Probleme
Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
In jedem kleinen Problem steckt ein großes, das gern raus moechte.
Kommentar
Kommentar