2011-07-22 63 views
0

我有一个简单但烦人的问题,我不明白原因。我需要用php上传一个简单的csv文件。这里是我的代码:问题在php中上传文件

的index.php:

<form method="post" action="upload.php" enctype="multipart/form-data"> 
    <input type="file" name="file" id="file" /> 
    <input type="submit" value="submit" /> 
</form> 

upload.php的:

$upfile = "csv/".$_FILES["file"]["name"]; 
move_uploaded_file($_FILES["file"]["tmp_name"], $upfile); 

没有任何错误,但该文件仍然没有上传到服务器上。

UPDATE:的print_r($ _ FILES)输出:

Array ([fileUpload] => Array ([name] => file1.csv [type] => text/comma-separated-values [tmp_name] => /var/tmp/php6YZ4Bt [error] => 0 [size] => 45)) 
+2

更新您的文章用'print_r($ _ FILES);'。但是我会在黑暗中拍摄最常见的原因 - 'csv /'不能被PHP写入。 –

+0

我认为你应该改变名称“文件”为“fileUpload”。并尝试使用$ upfile var中的完整路径。 – Warface

+0

您的服务器用户是否具有对csv的写入权限? –

回答

1

检查事项

1)确保你的目录有权限设置为755

2)检查您的路径,看看它是正确的。

3)确保您的post_max_size大小合适。

4)确保您的所有错误都已打开。 这可以在PHP脚本通过使用此代码来完成:

error_reporting(E_ALL); // or E_STRICT 
ini_set("display_errors",1); 

5)增加你的内存限制,看是否该脚本使用比以前分配更多的内存..

ini_set("memory_limit","1024M");