1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Gedankenstrich Kodierung in xls

Discussion in 'Office-Programme' started by marino610, Mar 24, 2012.

Thread Status:
Not open for further replies.
  1. marino610

    marino610 Byte

    Hallo, mein Problem ist etwas speziell, aber vielleicht gibt es hier ja richtige Experten. :)

    Ich lese mit PHPExcelReader Daten aus einem Excel Sheet aus und speichere diese in einer MySQL-Datenbank. Später werden die Daten auf einer HTML-Seite angezeigt. Das funktioniert perfekt, außer eine Zelle enthält einen Gedankenstrich (Geviertstrich oder Halbgeviertstrich). Evtl. könnten auch andere Sonderzeichen Probleme machen, aber die meisten funktionieren (z.B. das Copyright-Symbol). Wenn ich mir die xls-Datei mit einem Hex-Editor anschaue sehe ich, dass bei Gedankenstrichen die Daten seltsam kodiert werden, und zwar nicht nur der Gedankenstrich selbst, sondern Excel fügt nach jedem Zeichen der Zelle ein weiteres Zeichen ein (HEX 00). Das führt dazu, dass in der Datenbank doppelt so viele Zeichen stehen und der Gedankenstrich im HTML falsch dargestellt wird.
    Ich könnte jetzt entweder statt dem Gedankenstrich einen Bindestrich nehmen, was nicht korrekt wäre, oder den Gedankenstrich im Excel gleich HTML-kodiert eingeben (–), was unschön ist.

    Hat jemand eine Idee für dieses spezielle Problem?
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Da du die fraglichen Zeichen ja kennst, kannst du vor dem Schreiben der Daten in die Datenbank diese ersetzen. Das müsste natürlich an passender Stelle im PHPExcelReader-Code passieren. Ich würde allerdings für die Aktion keine großartigen Klassen her nehmen, sondern die Tabellen in Excel als csv exportieren und diese Datei direkt mit PHP einlesen und die Daten in die Datenbank schreiben. Sollten keine 10 Zeilen Code sein.
     
Thread Status:
Not open for further replies.

Share This Page