Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 24.11.2008, 22:28 Titel: Sonderzeichen in MySQL |
|
|
Eins vorweg: Ich finde es scheiße, dass man aufgrund von Limitierungen in der frühen Computerzeit heute noch so stark mit Sonderzeichen zu kämpfen hat.
Ok, ich habe also eine Webseite mit XAMPP unter WinXP gebaut. Statt sowas wie ä hab ich halt immer direkt ä geschrieben. Funktionierte auch wunderbar. Auch habe ich eine Spalte "Straße" genannt, funktionierte auch.
Doch jetzt will ich das ganze online Stellen, und Stelle fest: Nix geht mehr! Sämtliche Sonderzeichen werden als Fragezeichen dargestellt und scheinbar kann er auch nicht mehr die Tabelle mit der "Straße"-Spalte lesen.
Soweit ich weiß verwendet der Server Debian 8.
Ich habe in phpmyadmin meine Datenbank exportiert. Zur sicherheit hab ich sämtliche Angaben, die irgendwas mit Codierung zu tun haben könnten entfernt. Die Datei selbst ist UTF8 also kann es an der schonmal nicht mehr liegen, oder?
Beim importieren habe ich dann auch UTF8 angegeben und sonst nur die Standardeinstellungen. Im phpmyadmin auf dem Server sehen auch alle Sonderzeichen korrekt aus, nur wenn ich irgendwas in PHP auslese und anzeige geht gar nix.
An den PHP-Dateien sollte es auch eher nicht liegen, den die funktionieren ja auch auf meinem PC und da wird ja auch nix von wegen Kodierung angegeben.
Irgendwelche Ideen? _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 25.11.2008, 13:09 Titel: |
|
|
Hast du in den entsprechenden HTML/php-Dateien im Header einen Zeichensatz angegeben?
Gut möglich, dass dein Server da irgendne Standardeinstellung hat, die du so überschreiben musst. _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 25.11.2008, 15:57 Titel: |
|
|
meta http-equiv="Content-Type" content="text/html; charset=UTF-8"
Sowas? _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
fast hawk Senior JLI'ler
Anmeldedatum: 15.07.2005 Beiträge: 237 Wohnort: Freiburg Medaillen: Keine
|
Verfasst am: 25.11.2008, 19:10 Titel: |
|
|
charset=UTF-16 oder charset=UTF-16LE
wenn es geht.... _________________ Jetziges Projekt: The Ring War
Status: 40%
-----------------------------------
Nicht weil es schwer ist, wagen wir es nicht, sondern weil wir es nicht wagen, ist es schwer.
--
Lucius Annaeus Seneca (4)
röm. Philosoph, Dramatiker und Staatsmann |
|
Nach oben |
|
|
newby JLI'ler
Anmeldedatum: 17.08.2007 Beiträge: 106
Medaillen: Keine
|
Verfasst am: 26.11.2008, 14:23 Titel: |
|
|
ich meine mich zu erinnern, dass das mit dem meta-tag nicht funktioniert, du musst mit hilfe von php die information schon im header senden:
Code: |
header('Content-type: text/html; charset=ISO-8859-1');
|
bei mir hats so funktioniert |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 01.12.2008, 11:00 Titel: |
|
|
Hm, es hat schon Probleme gemacht wenn man nur EINE Ansi Datei includierte. Ich habe jetzt nochmal alle Dateie als UTF-8 gespeichert. Daraufhin gingen Sonderzeichen in php Dateien.
Damit es mit MySQL klappt, musste ich direkt nach dem Verbinden ein:
Code: | mysql_query("SET NAMES 'utf8';"); |
einfügen. Jetzt gehen erstmal alle Sonderzeichen und auch meine Tabelle mit der "Straße" Reihe
Das einzige was noch nicht geht, sind Bilder, deren Namen Sonderzeichen enthält, aber das wird hoffentlich auch bald irgendwie gehen. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 01.12.2008, 11:36 Titel: |
|
|
Jonathan_Klein hat Folgendes geschrieben: | Das einzige was noch nicht geht, sind Bilder, deren Namen Sonderzeichen enthält, aber das wird hoffentlich auch bald irgendwie gehen. |
Sind die überhaupt URL-konform? Muss man die Pfade nicht sowieso gewissermaßen Sonderzeichenfrei halten? _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
DirectXer Dark JLI'ler
Anmeldedatum: 05.02.2005 Beiträge: 1201 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 01.12.2008, 15:15 Titel: |
|
|
The Lord of Programming hat Folgendes geschrieben: | Jonathan_Klein hat Folgendes geschrieben: | Das einzige was noch nicht geht, sind Bilder, deren Namen Sonderzeichen enthält, aber das wird hoffentlich auch bald irgendwie gehen. |
Sind die überhaupt URL-konform? Muss man die Pfade nicht sowieso gewissermaßen Sonderzeichenfrei halten? |
jep sollte man, laut standard hat eine url mit http-protokoll (gilt auch für ftp etc.) die regex-form Code: | (?:http://(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.
)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)
){3}))(?::(?:\d+))?)(?:/(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F
\d]{2}))|[;:@&=])*)(?:/(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{
2}))|[;:@&=])*))*)(?:\?(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{
2}))|[;:@&=])*))?)?) | In den Character Klassen sieht man welche sonderzeichen wo erlaubt sind und welche nicht, also Code: | [a-zA-Z\d$\-_.+!*'(),] oder [%a-fA-F\d] oder [;:@&=] |
Gruß DXer
PS: nur mal so nebenbei (wer sowas braucht, nicht leicht zu finden) hier ist die komplette URL regex: http://internet.ls-la.net/folklore/url-regexpr.html |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 01.12.2008, 15:20 Titel: |
|
|
Aber wurden nicht erst kürzlich Sonderzeichen zugelassen?
Und wenn ich z.B. ein Leerzeichen in nem Link habe, dann macht FF zumindest das zu %20.
Oder Soll ich einfach alle Sonderzeichen in Dateinamen Escapen?
Oder geht das mit Sonderzeichen in Dateinamen eher doch nicht? _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
DirectXer Dark JLI'ler
Anmeldedatum: 05.02.2005 Beiträge: 1201 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 03.12.2008, 16:13 Titel: |
|
|
Jonathan_Klein hat Folgendes geschrieben: | Aber wurden nicht erst kürzlich Sonderzeichen zugelassen?
Und wenn ich z.B. ein Leerzeichen in nem Link habe, dann macht FF zumindest das zu %20.
Oder Soll ich einfach alle Sonderzeichen in Dateinamen Escapen?
Oder geht das mit Sonderzeichen in Dateinamen eher doch nicht? |
Hmm gute Frage.. Ich glaube dass die Umwandlung von ' ' zu %20 nur browserspezifisch ist, und das FF das aus Nettigkeit tut ;P Ich bin mir aber nicht sicher, kann auch sein dass da irgendwas erlassen wurde; halte ich aber für unrealisitsch da sonst jedes Programm das solche Dienste anbietet angepasst werden müsste...(siehe putty, wenn ich raw eine get request an einen server senden möchte werden auch nur die standardzeichen unterstütz) Das Escapen der Sonderzeichen dagegen wäre eine Möglichkeit, das könnte man machen
Gruß DXer |
|
Nach oben |
|
|
|