Steffi: MySQL: Umlaute und Sonderzeichen

Hi,

bin echt am verzweifeln...
mit LOAD DATA lasse ich aus einem PHP Script heraus mit mysql eine CSV Datei einlesen.
Diese erhalte ich von einem anderen Server. Sie enthält Umlaute und Sonderzeichen.
Die Felder der DB-Tabelle sind nun wieder auf latin1 umgestellt worden, da utf8 auch keine Verbesserung mit sich brachte :(
So werden z.B. röcke als r�ke dargestellt.
Sowohl mit, als auch ohne vorausgehende
mysql_query("SET NAMES utf8");

utf8_decode/encode von PHP kann diesen "Fehler" leider auch nicht zur Laufzeit beheben.
Welches Charset sollte ich denn verwenden, und was soll im Import und im Anzeige Script nach dem Verbinden für ein SET NAMES ... aufgerufen werden?
Denn wie gesagt, habe ich auf die CSV Datei keinen Einfluss; es sei denn, es würde etwas bringen, diese auf meinem Server temporär zu konvertieren. Aber wie/zu was??

Danke

  1. hi,

    Denn wie gesagt, habe ich auf die CSV Datei keinen Einfluss; es sei denn, es würde etwas bringen, diese auf meinem Server temporär zu konvertieren. Aber wie/zu was??

    In UTF-8 vielleicht, wenn du sonst auch (offenbar) überall UTF-8 verwendest?

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
  2. echo $begrüßung;

    mit LOAD DATA lasse ich aus einem PHP Script heraus mit mysql eine CSV Datei einlesen.
    Diese erhalte ich von einem anderen Server. Sie enthält Umlaute und Sonderzeichen.
    Die Felder der DB-Tabelle sind nun wieder auf latin1 umgestellt worden, da utf8 auch keine Verbesserung mit sich brachte :(
    So werden z.B. röcke als r�ke dargestellt.

    Die Beschreibung zur LOAD DATA INFILE Syntax ist zwar recht lang, jedoch wird die Character-Set-Frage bereits im 4. Absatz behandelt.

    Sowohl mit, als auch ohne vorausgehende
    mysql_query("SET NAMES utf8");

    SET NAMES wirkt sich auf character-set-connection, -client und -result aus. Wenn du mit LOAD DATA INFILE MySQL anweist, Daten aus einer Datei zu lesen, so kommen diese Daten nicht vom Client und auch nicht über dessen Connection (und das Result ist auch nicht betroffen).

    echo "$verabschiedung $name";