Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: MySQL Datenbank schluckt Umlaute

    mod_max

    • Frisch an Board
    • Beiträge: 56
    MySQL Datenbank schluckt Umlaute
    am: 23. Januar 2012, 16:59:47
    Hallo,

    ich hatte das Problem nach der Migration von osCommerce auf modified eCommerce Shopsoftware schon gehabt: damals dachte ich, es würde an mir liegen, dann habe ich alles von Hand aus ersetzt (glaubt mir das hat kein spaß gemacht)!

    Heute habe ich das gleiche Problem entdeckt: alle Umlaute werden einfach von der Datenbank weggeschmissen.

    Beispiel:
    Von Jörn Muster bleibt nur noch J, alles was hinter dem Umlaut kommt, wird verworfen!
    Von Hessen-Thüringen bleibt nur Hessen-Th
    …etc. Und das bei allen Kundenbestellungen!!!!

    das scheint nur bei den Bestellungen zu passieren, in der Haupt-customers-Tabelle und dem Adressbuch sind alle Umlaute korrekt.

    D.h., dass hier irgendein Fehler beim Speichern der Kundeninfos in die orders-Tabelle passiert.

    Dies sieht nach einem encoding-Problem aus, in welchem script findet die Speicherung in die orders Tabelle statt?

    Ich kann nicht genau sagen, wann es passiert ist, aber das nochmal von Hand aus zu vergeben, ist mühsam!
    Was kann man dagegen tun?

    viele Grüße
    Max



    Linkback: https://www.modified-shop.org/forum/index.php?topic=18046.0

    mouseworx

    • Schreiberling
    • Beiträge: 254
    • Geschlecht:
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #1 am: 23. Januar 2012, 17:21:08
    Zunächst würde ich an deiner Stelle mal nachsehen was dein Server für ein Charset im Header heraus gibt, dann würde ich mir im Quellcode und/oder der Shop Admin ansehen wie du deine Shop Seiten codiert hast und zu guter letzt würde ich mit phpMyAdmin checken wie du deine Datenbank Tabellen codiert hast - da scheint irgend etwas nicht ganz zusammen zu passen...

    Grüsse
    Sebastian

    mod_max

    • Frisch an Board
    • Beiträge: 56
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #2 am: 23. Januar 2012, 17:35:21
    Zitat
    Server:         _SERVER["HTTP_ACCEPT_CHARSET"]   ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Datenbank:    Kollation - Zeichensatz / Kollation der MySQL-Verbindung: utf8_general_ci
    meta-content: iso-8859-15

    mouseworx

    • Schreiberling
    • Beiträge: 254
    • Geschlecht:
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #3 am: 23. Januar 2012, 17:57:29
    Na dann solltest du in Betracht ziehen die Datenbank auch auf ISO-8859-1 / latin1 zu switchen... zumindest solange modified eCommerce Shopsoftware noch nicht als UTF-8 Version für den produktiven Betrieb verfügbar ist oder du dir entsprechende Kenntnisse angeeignet hast.

    Und bevor du fragst: Nein, du kannst die Tabellen nicht mehr umcodieren denn was nicht mehr in der Datenbank steht - weil es Aufgrund des Zeichensatz Fehlers abgeschnitten wurde - lässt sich auch nicht umcodieren... es sei denn du hast ein Datenbank Backup.

    Grüsse
    Sebastian

    mod_max

    • Frisch an Board
    • Beiträge: 56
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #4 am: 23. Januar 2012, 18:06:40
    Na dann solltest du in Betracht ziehen die Datenbank auch auf ISO-8859-1 / latin1 zu switchen... zumindest solange modified eCommerce Shopsoftware noch nicht als UTF-8 Version für den produktiven Betrieb verfügbar ist oder du dir entsprechende Kenntnisse angeeignet hast.
    [...]

    Wie bereits erwähnt, sind in Haupt-customers-Tabelle und im Adressbuch alle Umlaute korrekt.
    Wie erklärst du diesen Effekt? ich denke nicht dass es an der Datenbank liegt, sonst wären die o.g. Tabellen auch falsch angezeigt!

    grüße
    Max

    mouseworx

    • Schreiberling
    • Beiträge: 254
    • Geschlecht:
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #5 am: 23. Januar 2012, 18:13:10
    Dann log dich doch mal in deinen Shop ein und editiere eine Adresse... schreib einfach mal irgendwo äüöß vorne dran... ich vermute danach ist der Eintrag - der eben noch OK war - auch futsch.

    Oder tätige eine Bestellung mit Umlauten in der Adresse und schau was in der "orders" Tabelle steht.

    Grüsse
    Sebastian

    Matt

    • Experte
    • Beiträge: 4.241
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #6 am: 23. Januar 2012, 19:53:59
    Das Problem dürfte sein, dass die Daten beim Anlegen von Kundenkonto und Adressbuch aus dem POST-Request kommen, in der "checkout_process.php" aber (da werden die Order-Daten geschrieben) aus der Datenbank.

    Füge mal in "/includes/application_top.php" in Zeile 448 ein:

    Code: PHP  [Auswählen]
    xtc_db_query("SET NAMES latin1");
    xtc_db_query("SET CHARACTER SET latin1");

    und mach 'ne Testbestellung mit Umlauten.

    mod_max

    • Frisch an Board
    • Beiträge: 56
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #7 am: 23. Januar 2012, 20:26:25
    Dann log dich doch mal in deinen Shop ein und editiere eine Adresse... schreib einfach mal irgendwo äüöß vorne dran... ich vermute danach ist der Eintrag - der eben noch OK war - auch futsch.

    Oder tätige eine Bestellung mit Umlauten in der Adresse und schau was in der "orders" Tabelle steht.
    [...]

    Hallo,

    ich habe folgendes gemacht:
    - einen neuen Artikel angelegt mit lauten Umlaute
    - neuer Kunde Name und Adresse mit Umlaute
    - neuer Artikel durch Neuer Kunde bestellt!

    Alels einwandfrei gelaufen: Artikel bzw. Artikelbeschreibung / Kundendaten / Bestellung werden in der Frontend/Backend/Datenbank sauber angezeigt!

    So war es auch immer gewesen, nur verstehe ich nicht warum die DB das nach einer Zeit verschluckt!!!!

    Grüße

    mod_max

    • Frisch an Board
    • Beiträge: 56
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #8 am: 23. Januar 2012, 20:28:08
    Hallo Matt,

    danke für die Antwort!

    auch ohne

    Code: PHP  [Auswählen]
        xtc_db_query("SET NAMES latin1");
        xtc_db_query("SET CHARACTER SET latin1");

    werden alle Umlaute angezeigt. Nur was ich nicht verstehe, warum das von alleine irgendwann mal gelöscht wird!

    Grüße

    mouseworx

    • Schreiberling
    • Beiträge: 254
    • Geschlecht:
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #9 am: 23. Januar 2012, 21:52:50
    Auch wenn du es nicht lesen möchtest - du würfelst die Charsets durcheinander.

    Es macht keinen Sinn nun an allen Ecken und Enden nach Ursachen zu suchen oder eine korrekte DB Connection mit SET NAMES erzwingen zu wollen geschweige denn zu sagen der Shop würde irgendetwas nach einer gewissen Zeit irgendwie durcheinander würfeln - wenn der Fehler in der Installation liegt.

    Zieh die Installation gerade, dann ist der 'Fehler' weg - oder kämpfe wie Don Quichote gegen Windmühlen, du hast die Wahl.

    Was ich aber gar nicht verstehe ist, dass Du diesen Thread eröffnest mit dem Hinweis das von Jörg X alles hinter den J bzw. von Thüringen alles hinter dem Th abgeschnitten würde. Stunden später schreibst du dann du könntest einen neuen Kunden mit Umlauten anlegen und/oder mit einem Kunden mit Umlauten ohne Probleme bestellen und alles wäre korrekt in der Datenbank. Das widerspricht sich - für mein Gefühl...

    :glaskugel:

    Grüsse
    Sebastian

    mod_max

    • Frisch an Board
    • Beiträge: 56
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #10 am: 23. Januar 2012, 22:04:37
    [...] Das widerspricht sich - für mein Gefühl...
    [...]

    Hallo Sebastian,

    genau das ist das Problem, dass ich nicht nachvollziehen kann, warum die Umlaute bei nur einer Datenbank Tabelle wieder verschwinden, wenn sie mal drin waren!

    Das Thread müsste ich auf die Art und weise so öffnen, um mein Problem zu schildern, mir ist nichts anderes eingefallen! Du hast aber die Option, gar nicht auf das Thread zu reagieren. ;)

    Das hat doch mit der Installation nichts zu tun, wenn alles andere konsistent läuft! :-o

    mouseworx

    • Schreiberling
    • Beiträge: 254
    • Geschlecht:
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #11 am: 23. Januar 2012, 22:08:24
    Gut, wenn du meinst es hat nichts mit deiner Installation bzw. dem Datenbank Charset zu tun, dann bin ich aus dem Thread raus. Einen Erklärungsansatz für das Phänomen und auch den Namen der Datei die für den Eintrag in die "orders" Tabelle zuständig ist ("checkout_process.php") hatte Matt bereits geliefert.

    Viel Erfolg beim Versuch der Problemlösung...

    Grüsse
    Sebastian

    schning

    • Neu im Forum
    • Beiträge: 27
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #12 am: 14. September 2012, 14:35:05
    Zitat
    Das Problem dürfte sein, dass die Daten beim Anlegen von Kundenkonto und Adressbuch aus dem POST-Request kommen, in der "checkout_process.php" aber (da werden die Order-Daten geschrieben) aus der Datenbank.

    Füge mal in "/includes/application_top.php" in Zeile 448 ein:

    Code: PHP

        xtc_db_query("SET NAMES latin1");
        xtc_db_query("SET CHARACTER SET latin1");

    hier herscht das selbe Problem jedoch ohne Lösung.

    Wo genau soll ich in der application_top.php den code einfügen ?
    Kann mir das mal einer mit "füge nach" oder ersezte erklären anstatt der Zeilennummer ;) bitte

    ciao schning

    jannemann

    • modified Team
    • Beiträge: 6.275
    • Geschlecht:
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #13 am: 14. September 2012, 16:19:25
    Hallo schning,

    nimm Notepad++ und öffne die betreffende Datei (Sicherheitskopie nicht vergessen!) und füge die Zeilen in Zeile 448 ein.

    Schöne Grüße,
    Jan

    schning

    • Neu im Forum
    • Beiträge: 27
    Re: MySQL Datenbank schluckt Umlaute
    Antwort #14 am: 15. September 2012, 01:25:38
    hat bei mir leider nichts gebracht.

    Zeile 448 ist dann übrigens:   $_SESSION['cart'] = new shoppingCart();
    Diese rutscht dann unter die zwei neueingefügten. (nur zur kontrolle das das richtig ist)

    hat jemand noch eine Idee ?
    Marktplatz - Eine große Auswahl an neuen und hilfreichen Modulen sowie modernen Templates für die modified eCommerce Shopsoftware
    3 Antworten
    3021 Aufrufe
    11. September 2010, 08:19:22 von fashionhouse
    19 Antworten
    14814 Aufrufe
    21. April 2016, 18:13:48 von TrueSlide
    6 Antworten
    4565 Aufrufe
    21. April 2015, 21:09:23 von Matt
    1 Antworten
    1748 Aufrufe
    15. Mai 2017, 10:14:03 von Timm