-1
 if ($_FILES[csv][size] > 0) { 

    //get the csv file 
    $file = $_FILES[csv][tmp_name]; 
    $handle = fopen($file,"r"); 

    //loop through the csv file and insert into database 
    do { 
        if ($data[0]) { 
            mysql_query("INSERT INTO PowerFlex (customerCode, postCode,Name, Address1,Address2) VALUES 
                ( 
 '".addslashes($data[0])."', 
 '".addslashes($data[1])."', 
 '".addslashes($data[2])."', 
 '".addslashes($data[3])."', 
 '".addslashes($data[4])."', 
 '".addslashes($data[5])."', 

 etc

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

このコードは CSV をデータベースにアップロードしますが、CSV の最初の行のヘッダー (フィールド) をスキップせず、ヘッダーをデータベース テーブルのヘッダーと照合しません。それ、どうやったら出来るの ?

4

4 に答える 4

0
if ($_FILES[csv][size] > 0) { 

    //get the csv file 
    $file = $_FILES[csv][tmp_name]; 
    $handle = fopen($file,"r"); 
    $data = fgetcsv($handle,1000,",",'"') // this for skipping first line in your file
    $data = fgetcsv($handle,1000,",",'"') //
    //loop through the csv file and insert into database 
    do { 
        if ($data[0]) { 
            mysql_query("INSERT INTO PowerFlex (customerCode, postCode,Name, Address1,Address2) VALUES 
                ( 
 '".addslashes($data[0])."', 
 '".addslashes($data[1])."', 
 '".addslashes($data[2])."', 
 '".addslashes($data[3])."', 
 '".addslashes($data[4])."', 
 '".addslashes($data[5])."', 

 etc

                ) 
            "); 
        } 
    } while ($data = fgetcsv($handle,1000,",",'"')); 
    // 
}
于 2014-08-20T06:21:49.710 に答える