2017-08-07 155 views
0

我想從CSV文件中加載大量數據。我編寫了這個程序來完成它,但是當我執行程序時,它顯示出錯誤。錯誤是:使用php將csv文件插入到mysql表中使用php

找不到文件

如果我echo查詢,然後將其顯示的文件路徑比MySQL的搜索文件不同。

$fileName = $_FILES["file"] ["tmp_name"]; 

    // Creating a temporary table to hold csv file data.... 
    $tmp_tbl = "CREATE TABLE track LIKE trackingsite"; 

    mysqli_query($this->conn, $tmp_tbl) or die("Temporary table creation failed: " . mysqli_error($this->conn)); 

    $file_load = "LOAD DATA INFILE '$fileName' INTO TABLE track FIELDS TERMINATED BY ','OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\r\n' "; 
    echo $file_load; 

    echo '<br>'; 
    echo '<br>'; 
    mysqli_query($this->conn, $file_load) or die("Can not insert data: " . mysqli_error($this->conn)); 
+0

該文件在哪裏?你是否嘗試用HTML表單上傳它,還是已經在服務器上? – Twinfriends

+1

我有這個html表單,我只在這裏給出有錯誤的php代碼,問題實際上是在文件路徑中。 –

回答

-1

我想你應該使用absoulute直接加載文件的路徑。

像'for exmaple「C:// xammp/htdoc」in $ fileName

+0

其實我不得不在不同的時間從不同的路徑加載文件,所以我喜歡動態地使用它,這段代碼可以完美地讀取文件數據,但不能將數據插入數據庫 –