Hallo zusammen,
ich bin nun schon seit Ewigkeiten auf der Suche nach einer Lösung für mein Problem.
Ich habe eine Excel-Artikelliste für einen Online-Shop erhalten.
Die Artikel sind dort auf deutsch und auf russisch hinterlegt.
Nach langem Probieren habe ich es nun auch geschaft, daraus eine CSV-Datei zu erstellen, in der die russichen Zeichen korrekt dargestellt werden. In die Datenbank importieren kann man es dennoch nicht:
Entweder erscheinen ??? statt der Werte oder andere Zeichen, die mit russisch nichts zu tun haben.
Also dachte ich, ich bin schlau:
Ich habe also eine Routine geschrieben, in der ich die CSV-Datei Zeile für Zeile auslese und die Werte dann in die Datenbank eintrage:
PHP-Code:
foreach($zeile[$i] as $key[$i] => $value[$i])
{
$value[$i] = str_replace("\"", "", $value[$i]);
$rows[$i] .= "'".htmlentities($value[$i])."', ";
//$rows[$i] .= "'".$value[$i]."', ";
}
$rows[$i] = substr($rows[$i], 0, strrpos($rows[$i], ","));
$insert = "insert into t_cat (id, parent_id, name_de, name_ru, group_id, group_main) values(".$rows[$i].", '', '')";
$result = mysql_query($insert);
Trotzdem ist das Ergebnis genau das gleiche. Zusätzlich werden die sogar die deutschen Einträge falsch dargestellt, zumindest alle Umlaute und Sonderzeichen.
Wenn ich aber über das normale Backend Titel und Text hinzufüge, werden die Daten korrekt eingetragen, obwohl auch hier nur htmlentities verwendet wird.
Woran kann das liegen? Und vor allem: Wie bekomme ich diese Artikel in einer Rutsche ich die Datenbank, damit ich nicht diese hunderte von Artikeln mehrsprachig per Hand eintragen muss?
Vielen Dank schon mal für eure Hilfe.