簡體   English   中英

MySQL加載數據infile錯誤路徑

[英]Mysql load data infile wrong path

嗨,我非常需要您的幫助。

使用mysql加載數據infile導入.CSV文件后顯示錯誤。

我有一個表格上傳,下面可以正常工作

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
</head>

以及使用加載數據文件的PHP上傳腳本。

require("../config/conn.php");


  if (is_uploaded_file($_FILES['my-file']['tmp_name']) && $_FILES['my-file']['error']==0) {
    $path = 'C:/xampp/htdocs/dom/test/uploads/' . $_FILES['my-file']['name'];
    if (!file_exists($path)) {
      if (move_uploaded_file($_FILES['my-file']['tmp_name'], $path)) {

        echo $mysql = "LOAD DATA LOCAL INFILE '".$_FILES['my-file']['name']."' 
                REPLACE INTO TABLE table 
                FIELDS 
                    TERMINATED BY ',' 
                LINES 
                    TERMINATED BY '\\n'
                IGNORE 1 LINES 
                (`col1`,`col2`,`col3`,`col4`,`col5`....)";

                $query = mysqli_query($link, $mysql) or die(mysqli_error($link));

if(!$query) 
{
    printf("Error message: %s\n", mysqli_error($link));     
}   




      } else {
        echo "The file was not uploaded successfully.";
      }
    } else {
      echo "File already exists. Please upload another file.";
    }
  } else {
    echo "The file was not uploaded successfully.";
    echo "(Error Code:" . $_FILES['my-file']['error'] . ")";
  }

一切都很好,除了加載數據本地文件名看不到正確的路徑。 請查看錯誤: 找不到文件“ logJan262013.CSV”。 但是.csv文件已成功上傳到文件夾“ uploads /”中。 任何幫助,將不勝感激。

非常感謝!

您正在使用查詢:

$mysql = "LOAD DATA LOCAL INFILE '".$_FILES['my-file']['name']."'...

我相信您希望使用完整的路徑

$mysql = "LOAD DATA LOCAL INFILE '".$path."'...

你做

 if (move_uploaded_file($_FILES['my-file']['tmp_name'], $path)) {

之前

$query = mysqli_query($link, $mysql)

因此, LOAD DATA找不到文件也就不足為奇了。

如果您給LOAD DATA適當的$path ,它應該可以按預期工作。

錯誤,您還沒有告訴LOAD DATA INFILE路徑! 嘗試告訴它路徑,一切都應該沒問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM