PHP CSV导入问题

时间:2013-10-13 05:44:31

标签: php csv import

我正在尝试在MySQL数据库中导入CSV文件。脚本使用下面提到的脚本成功运行,但数据库在成功运行后发现为空。请帮忙,因为服务器限制,我无法使用文件中的加载数据

<?php 

include dbconf.php
//

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

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

do {
    if ($data[0]) {
        mysql_query("INSERT INTO hrc (field0,field2,..,field19) VALUES
            (  

'".addslashes($data[0])."',
'".addslashes($data[1])."',
'".addslashes($data[2])."',
'".addslashes($data[3])."',
'".addslashes($data[4])."',
'".addslashes($data[5])."',
'".addslashes($data[6])."',
'".addslashes($data[7])."',
'".addslashes($data[8])."',
'".addslashes($data[9])."',
'".addslashes($data[10])."',
'".addslashes($data[11])."',
'".addslashes($data[12])."',
'".addslashes($data[13])."',
'".addslashes($data[14])."',
'".addslashes($data[15])."',
'".addslashes($data[16])."',
'".addslashes($data[17])."',
'".addslashes($data[18])."',
'".addslashes($data[19])."'



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


header('Location: import.php?success=1'); die;

}

?>

1 个答案:

答案 0 :(得分:0)

Try this.


set_time_limit(10000);

ini_set('auto_detect_line_endings',TRUE);

$csv_data=array();

$file_handle = fopen($_FILES['file_name']['tmp_name'], 'r');

while(($data = fgetcsv($file_handle) ) !== FALSE){

 $update_data= array('first'=>$data['0'],
                      'second'=>$data['1'],
                      'third'=>$data['2'],
                       'fourth'=>$data['34']);

// save this array in your database
}

Thanks