Merge branch 'master' of ssh://git-mbunkus@lx-office.linet-services.de/~/lx-office-erp
[kivitendo-erp.git] / lxo-import / addressB.php
old mode 100644 (file)
new mode 100755 (executable)
index 2341fdd..05ced5e
@@ -109,7 +109,16 @@ if ($ok) while (!feof($f)){
             continue;
         };
         $data=trim($data);
-        $data=mb_convert_encoding($data,"ISO-8859-15","auto");
+        // seit 2.6 ist die DB-Kodierung UTF-8 @holger Ansonsten einmal vorher die DB-Encoding auslesen
+        // Falls die Daten ISO-kodiert kommen entsprechend wandeln
+        // UTF-8 MUSS als erstes stehen, da ansonsten die Prüfung bei ISO-8859-1 aufhört ...
+        // TODO Umlaute am Anfang wurden bei meinem Test nicht übernommen (Österreich). S.a.:
+        // http://forum.de.selfhtml.org/archiv/2007/1/t143904/
+
+        $encoding = mb_detect_encoding($data,"UTF-8,ISO-8859-1,ISO-8859-15");
+        if ($encoding != "UTF-8"){
+          $data=mb_convert_encoding($data, "UTF-8","$encoding");
+        }
         //$data=htmlentities($data);
         $data=addslashes($data);
         if ($in_fld[$i]==$file."number") {  // customernumber || vendornumber
@@ -123,9 +132,12 @@ if ($ok) while (!feof($f)){
         } else if ($in_fld[$i]=="taxincluded"){
             $data=strtolower(substr($data,0,1));
             if ($data!="f" && $data!="t") $data="f";
-        } else if ($in_fld[$i]=="ustid"){
+        } /*else if ($in_fld[$i]=="ustid"){
+            Was passiert hier:
             $data=strtr(" ","",$data);
-        } /*else if ($in_fld[$i]=="matchcode") {
+            SUCHE IN ' ' nach dem Vorkommen von '' mit der BOOLEAN-Interpretation von $data
+            demnach gibt es immer eine leere Zeichenkette zurück.
+        }*/ /*else if ($in_fld[$i]=="matchcode") {
                   $matchcode=$data;
                   $i++;
                   continue;