php加载数据本地infile路径错误

时间:2014-01-28 19:03:29

标签: php

所以,我想获取文件路径,然后将其插入到mysql中。

这是代码:

<?php

$file = $_FILES['file']['tmp_name'];

include "config.php";

$result = mysql_query("LOAD DATA LOCAL INFILE '$file'" .
                      " INTO TABLE ponuda FIELDS TERMINATED BY '    '");
if (!$result) {
    die("Could not load. " . mysql_error());
}

?>

这是我收到的路径:

string 'C:\Users\xxx\AppData\Local\Temp\php11EF.tmp' 

但是,我收到mysql错误说:

Could not load. Can't find file 'C:UsersxxxAppDataLocalTempphp1FA6.tmp'.

为什么删除斜线?我做错了什么。试图搜索问题,但没有找到任何结果。

P.S。我想从我的本地PC上传该文件。

编辑:如果我在路径中将“\”更改为此“/”它运行良好,但是如何使用原始文件路径,而不是临时文件路径,因为该文件在临时文件中不存在?

1 个答案:

答案 0 :(得分:1)

好的,设法找到错误。

现在它正在运作:

<?php

$file = str_replace("\\", "/", $_FILES['file']['tmp_name']);

include "config.php";

$result = mysql_query("LOAD DATA LOCAL INFILE '$file'" .
                      " INTO TABLE ponuda FIELDS TERMINATED BY '    '");
if (!$result) {
    die("Could not load. " . mysql_error());
}

?>