使用php在mysql中加载csv文件时出错


Error when loading csv file in mysql using php

有人能帮我解决我出现错误的原因吗?我不知道为什么!!!!我有大约45列,我只需要使用表中的1,2,3,4,7,8,所以我无法加载所有内容。

    <? 
        $con=mysqli_connect("localhost","*******","*****","******");
// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
        //get the csv file
    $file = "tickets/feed/rtc.csv";
    $handle = fopen($file,"r");
    $count=0;
    $sid="32837459823";
    //loop through the csv file and insert into database
    do {
        if ($data[0]) {
            mysqli_query($con,"INSERT INTO carlist (id, stknum, vin, vt, stat, other, store_id) VALUES
                (
                    '".$count++."',
                    '".addslashes($data[7])."',
                    '".addslashes($data[8])."',
                    '".addslashes($data[2].$data[3].$data[4])."',
                    '".addslashes($data[1])."',
                    '".addslashes("0")."',
                    '".addslashes($sid)."'
                )
            ");
        }
    } while ($data = fgetcsv($handle,1000,",","'"));
    //
        ?>

以下是我获取时的错误

注意:未定义的变量:中的数据/home1/inventory/mobile/actions/loadsubmit.php在线139

注意:未定义的偏移量:7英寸/home1/inventory/mobile/actions/loadsubmit.php在线139

注意:未定义的偏移量:8英寸/home1/inventory/mobile/actions/loadsubmit.php在线140

注意:未定义的偏移量:2英寸/home1/inventory/mobile/actions/loadsubmit.php在线141

注意:未定义的偏移量:3英寸/home1/inventory/mobile/actions/loadsubmit.php在线141

注意:未定义的偏移量:4英寸/home1/inventory/mobile/actions/loadsubmit.php在线141

注意:未定义的偏移量:1英寸/home1/inventory/mobile/actions/loadsubmit.php在线142

看起来$data直到您点击才被定义

while ($data = fgetcsv($handle,1000,",","'"));

因此,当您试图访问该行之前的$data时,会出现错误,因为该变量不存在。