Subversion-Projekte lars-tiefland.content-management

Revision

Blame | Letzte Änderung | Log anzeigen | RSS feed

<?
        // upload überprüfen

        require_once "scanFile.php";
        require_once "createUser.php";  
        require_once "createOrder.php";
        require_once "translateCountry.php";

        $errorFlag=false;
        if ($_FILES)
        {
                foreach($_FILES as $file)
                {
                        echo "Upload Datei ".$file[name]." ";
                        if ($file[error] != 0)
                        {
                                echo "FEHLER";
                                $errorFlag=true;
                        }
                        else
                        {
                                echo "OK.";
                        }
                        echo "<br>";
                }
        }
        else
        {
                $errorFlag=true;
        }

        if ($errorFlag==false)
        {
                $customer       =       scanFile
                                                (
                                                        $_FILES[customer][tmp_name],
                                                        "\"",
                                                        ";",
                                                        0
                                                );
                                                        
                $order          =       scanFile
                                                (
                                                        $_FILES[order][tmp_name],
                                                        "\"",
                                                        ";"
                                                );

                  /*/------------------------------/*/
                 /*/ Daten für Logins vorbereiten /*/
                /*/------------------------------/*/
                foreach (array_keys($customer) as $elem)
                {
                        // Strasse und Hausnummer trennen
                        //$customer[$elem][5] = trim($customer[$elem][5]);
                        if (preg_match("/^\d/",$customer[$elem][5]))
                        {
                                $customer[$elem][5] = array_reverse(preg_split("/(\s)/", $customer[$elem][5], 2, PREG_SPLIT_NO_EMPTY));
                        }
                        else
                        {
                                $customer[$elem][5] = preg_split("/(\d.*)/", $customer[$elem][5], -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
                        }

                        // Datum umschreiben
                        $customer[$elem][14]=implode("-",array_reverse(explode(".",$customer[$elem][14])))." ".$customer[$elem][15];
                        unset ($customer[$elem][15]);
                
                        // Artikelcontainer an customer anhängen
                        $customer[$elem][artikel] = array();

                        // Versandkosten im Container ablegen
                        /*
                                1126                                    =       Abholung
                                "Versandkosten"                 =       String der im WWS ausgegeben wird.
                                ""                                              =       Pfad zum Artikel
                                1                                               =       Menge
                                $customer[$elem][16]    =       Preis
                                $customer[$elem][0]             =       ID der Bestellung von 1und1
                                ""                                              =       artikel_to_Bestellung Status                            
                        */
                        $customer[$elem][16] = str_replace(",", ".", $customer[$elem][16]);
                        $customer[$elem][artikel][] = array
                                                                                        (
                                                                                                4299,
                                                                                                "Versandkosten",
                                                                                                "",
                                                                                                1,
                                                                                                $customer[$elem][16],
                                                                                                $customer[$elem][0],
                                                                                                ""
                                                                                        );
                }
        
                  /*/-------------------------/*/
                 /*/ Artikelcontainer füllen /*/
                /*/-------------------------/*/
                foreach ($order as $elem)
                {
                        // Preis formatieren
                        $elem[4] = str_replace(",", ".", $elem[4]); 

                        // Status anhängen
                        $elem[]="offen";
                        
                        $customer[$elem[5]][artikel][] = $elem;
                }

                  /*/-----------------------------/*/
                 /*/ Nach Bestelldatum sortieren /*/
                /*/-----------------------------/*/
                function cmp($a,$b)
                {
                    if ($a[14] == $b[14]) return 0;
                    return ($a[14] < $b[14]) ? -1 : 1;
                }
                usort ($customer, "cmp");

                echo "Importiere ".count($customer)." Datensätze<br>";

                    /*/---------------------------------/*/
                   /*/ Login erstellen                 /*/
                  /*/ Bestellung erstellen            /*/
                 /*/ Artikel der Bestellung zuordnen /*/
                /*/---------------------------------/*/
                foreach ($customer as $bestellung)
                {
                        $data = array();
                        $data[Vorname]          =       addslashes($bestellung[3]);
                        $data[Nachname]         =       addslashes($bestellung[4]);
                        $data[Firma]            =       addslashes($bestellung[2]);
                        $data[Strasse]          =       addslashes($bestellung[5][0]);
                        $data[Hausnummer]       =       addslashes($bestellung[5][1]);
                        $data[PLZ]                      =       addslashes($bestellung[6]);
                        $data[Ort]                      =       addslashes($bestellung[7]);
                        $data[Land]                     =       translateCountry($bestellung[8]);
                        $data[email]            =       addslashes($bestellung[11]);
                        $data[Telefon]          =       addslashes($bestellung[9]);
                        $data[Fax]                      =       addslashes($bestellung[10]);
                        $userData = createUser($data);

                        $data = array();
                        $data[Bemerkung]                        =       "Importrobot";
                        $data[shops_ID]                         =       $import_to_shop;
                        $data[userId]                           =       $userData[ID];
                        $data[erstellt_am]                      =       $bestellung[14];
                        $data[letzte_Aenderung_von]     =       "Importrobot";
                        $data[Language]                         =       "DE";

                        $bestellId = createOrder($data);

                        $bestellwert=0;
                        foreach($bestellung[artikel] as $artikel)
                        {
                                $query=
                                "
                                        insert into
                                                artikel_to_Bestellung
                                        (
                                                artikel,
                                                Bestellung,
                                                Menge,
                                                Preis_pro_Stueck,
                                                Bezeichnung,
                                                status
                                                
                                        )
                                        values
                                        (
                                                '".$artikel[0]."',
                                                '".$bestellId."',
                                                '".$artikel[3]."',
                                                '".$artikel[4]."',
                                                '".$artikel[1]."',
                                                '".$artikel[6]."'
                                        )
                                ";
                                $result = mysql_query ($query) or die (mysql_errno().": ".mysql_error()."<hr>$query<hr>");
                                $bestellwert = $bestellwert + $artikel[3] * $artikel[4];
                        }
                        
                        /* SHOP-LOG eintragen */
                        $query_log="
                                insert into
                                        shop_log
                                        (
                                                shops_ID,
                                                eintrag2,
                                                eintrag3,
                                                erstellt_am,
                                                erstellt_von
                                        )
                                        values
                                        (
                                                '".$import_to_shop."',
                                                '".$bestellwert."',
                                                '".$bestellId."',
                                                '".$data[erstellt_am]."',
                                                '(Bestellung)'
                                        )
                        ";
                        $result_log = mysql_query ($query_log) or mail
                                                                                                                (
                                                                                                                        "admin@weban.de",
                                                                                                                        "Fehler in 1und1importer.php",
                                                                                                                        mysql_errno().": ".mysql_error()."<hr>$query_log<hr>",
                                                                                                                        "from: 1und1importer"
                                                                                                                );
                }
                echo "OK";
        }
?>