数据库总是添加9个空行

时间:2016-12-06 09:47:08

标签: php mysql

所以我从.asc文件导入数据,我将它放入数据库。一切都插入,但在一开始它有一点问题 这是代码:

<?php
function importdb()
{
    include('db_config.php');
    $File       = 'lijst.csv';
    $File2      = 'preise.asc';
    $handle     = fopen($File, "r");
    $handle2    = fopen($File2, "r");
    $arrResult  = array();
    $arrResult2 = array();
    fgetcsv($handle);
    fgetcsv($handle);
    fgetcsv($handle);
    fgetcsv($handle);
    fgetcsv($handle);
    fgetcsv($handle);
    while (($data = fgetcsv($handle, 1000, ";")) !== FALSE && ($data2 = fgetcsv($handle2, 1000, ";")) !== FALSE) {
        //---------------------
        $artikelnmr       = $data[0];
        $barcode          = $data[1];
        $omschrijving_nl  = $data[2];
        $omschrijving_exp = $data[3];
        $bruto_prs        = $data[4];
        $staffel_prs      = $data[5];
        $aktie_prs        = $data[6];
        $bruto_antl       = $data[8];
        $staffel_antl     = $data[9];
        $aktie_aantal     = $data[10];
        $voorraad         = $data[15];
        $leverdatum       = $data[16];
        $besteld          = $data[17];
        $pallet_antl      = $data[19];
        $artikel_groep    = $data[22];
        $extra_info       = $data[27];
        //------------------------
        $type             = $data2[0];
        $artikel          = $data2[1];
        $prijs1           = $data2[6];
        $prijs2           = $data2[7];
        $prijs3           = $data2[8];
        $prijs4           = $data2[9];
        $prijs5           = $data2[10];
        //----------------------
        $stmt             = $db->prepare("INSERT INTO `producten`(`id`, `artikelnr`, `barcode`, `omschrijving_nl`, `omschrijving_exp`, `bruto_prijs`, `bruto_aant`, `staffel_prijs`, `staffel_aantal`, `aktie_prijs`, `aktie_aantal`, `voorraad`, `leverdatum`, `besteld`, `pallet_aantal`, `artikel_groep`, `extra`)
                VALUES ('', :artikelnmr,:barcode,:omschrijving_nl,:omschrijving_exp,:bruto_prijs,:bruto_aantal,:staffel_prijs,:staffel_aantal,:aktie_prijs,:aktie_aantal,:voorraad,:leverdatum,:besteld,:pallet_aantal,:artikel_groep,:extra)");
        $stmt2            = $db->prepare("INSERT INTO `prijzen`(`artikelnr`, `prijs_soort`, `prijs1`, `prijs2`, `prijs3`, `prijs4`, `prijs5`) VALUES (:nmr, :soort, :prijs1, :prijs2, :prijs3, :prijs4, :prijs5)");
        //----------------------
        $stmt->bindParam(":artikelnmr", $artikelnmr);
        $stmt->bindParam(":barcode", $barcode);
        $stmt->bindParam(":omschrijving_nl", $omschrijving_nl);
        $stmt->bindParam(":omschrijving_exp", $omschrijving_exp);
        $stmt->bindParam(":bruto_prijs", $bruto_prs);
        $stmt->bindParam(":bruto_aantal", $bruto_antl);
        $stmt->bindParam(":staffel_aantal", $staffel_antl);
        $stmt->bindParam(":staffel_prijs", $staffel_prs);
        $stmt->bindParam(":aktie_aantal", $aktie_aantal);
        $stmt->bindParam(":aktie_prijs", $aktie_prs);
        $stmt->bindParam(":voorraad", $voorraad);
        $stmt->bindParam(":leverdatum", $leverdatum);
        $stmt->bindParam(":besteld", $besteld);
        $stmt->bindParam(":pallet_aantal", $pallet_antl);
        $stmt->bindParam(":artikel_groep", $artikel_groep);
        $stmt->bindParam(":extra", $extra_info);
        //----------------------
        $stmt2->bindParam("nmr", $artikel);
        $stmt2->bindParam(":soort", $type);
        $stmt2->bindParam(":prijs1", $prijs1);
        $stmt2->bindParam(":prijs2", $prijs2);
        $stmt2->bindParam(":prijs3", $prijs3);
        $stmt2->bindParam(":prijs4", $prijs4);
        $stmt2->bindParam(":prijs5", $prijs5);
        //----------------------
        $stmt2->execute();
        $stmt->execute();
        echo $artikel . ': ' . $type . "<br>";
    }
    fclose($handle);
    fclose($handle2);

}
importdb();
?>

这只发生在第二个语句(stmt2)中。第一个声明(stmt)中的一切都没问题 这就是数据库中发生的事情以及应该在前几行中添加的内容:

Database Result
What should be inserted

我是否需要像在第一个文件中那样跳过几行?

提前致谢。

0 个答案:

没有答案