2012-08-23 56 views
1

我有一个上传的文件,当试图将它保存到文件系统时,它只是失败。
var_export($_FILES['bom_file'])产生PHP:“move_uploaded_file()”失败,没有任何有用的信息

array (
    'name' => '_bomUpload.tester.csv', 
    'type' => 'application/octet-stream', 
    'tmp_name' => 'C:\\wamp\\tmp\\php837A.tmp', 
    'error' => 0, 
    'size' => 265, 
) 

这是我的move_uploaded_file()尝试:(我已与一些差异文件路径试过)

$file_path = 'C:/wamp/NetBeansProjects/BomProject/application/uploads/boms/testfile.csv'; // For Testing ----> 
$testVar = move_uploaded_file($_FILES['bom_file']['name'], $file_path); 
echo ($testVar)? 'The file has been uploaded': 'There was an error uploading the file'; 
echo '<pre>UPLOAD?: ', var_export($testVar), '</pre>'; // For Testing ----> 

我一直想起来的错误消息,$testVar是FALSE。

我在想什么?

+0

确保Web服务器下运行的用户有写权限到目标位置。确保该属性中的文件夹不是“只读”。 – Dutchie432

+0

@ Dutchie432:“你的Web服务器是Windows还是Unix?” ''tmp_name'=>'C:\\ wamp \\ tmp \\ php837A.tmp','o_O – zerkms

+0

没有看到那里。 [耸肩]。 – Dutchie432

回答

2

变化

$testVar = move_uploaded_file($_FILES['bom_file']['name'], $file_path); 

$testVar = move_uploaded_file($_FILES['bom_file']['tmp_name'], $file_path); 

name仅是文件的 “名”。实际上传的文件引用是tmp_name阵列关键

+0

这个工作完美...和@ernie几乎在相同的时间发布了这个...很好的工作......谢谢! – mOrloff

+0

嗯... _几乎!!根据那个小代码块,一切都很好,但我得到了一个致命错误。我有一个很大的ol栈跟踪来排序,但肉和土豆是“_Uncaught异常”异常“,无法打开C:\ wamp \ tmp \ php9F9C.tmp进行读取,文件不存在._” ... wtf ?? :) – mOrloff

+0

经过大量的头部划伤之后,我只是使用'rename($ _ FILES ['foo'] ['tmp_name'],$ newPathAndName)'来代替...以防万一它帮助别人。 – mOrloff

1

在尝试$testVar = move_uploaded_file($_FILES['bom_file']['tmp_name'], $file_path); - 文件应该还是不对tmp_name为点

相关问题