Php 移动上传的\u文件功能不正常

Php 移动上传的\u文件功能不正常,php,Php,我为一个允许上传csv文件并自动存储在mysql数据库中的网站制作了一部分。我设置了move_uploaded_file函数,这样我就可以确保它的上传正确,但是每次我尝试上传一些东西时,它都失败了 形式 <form enctype="multipart/form-data" action="LoadData.php" method="POST"> <input type="hidden" name="MAX_FILE_SIZE" value="1000000"> Uplo

我为一个允许上传csv文件并自动存储在mysql数据库中的网站制作了一部分。我设置了move_uploaded_file函数,这样我就可以确保它的上传正确,但是每次我尝试上传一些东西时,它都失败了

形式

<form enctype="multipart/form-data" action="LoadData.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
Upload File: <input name="uploadedfile" type="file"><br />
File/Table Name: <input name="filename" type="text"><br />
<input name="submit" type="submit" value="Upload File">
</form>

上传文件:
文件/表名称:
上传代码

$FileName = $_POST['filename'];
$target_path = "/director/to/all/uploaded/files/" . $FileName;

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path))
{
    echo "File uploaded correctly </br>";

    //uploads file to database
    mysql_query("LOAD DATA LOCAL INFILE....."); //long piece of code that uploads the csv file to the database.table
    echo "Table imported <br/>"';
}
else
{
    echo "The file was no uploaded correctly, the table was not imported.";
}
$FileName=$\u POST['FileName'];
$target_path=“/director/to/all/upload/files/”$文件名;
如果(移动上传的文件($上传文件['uploadedfile']['tmp\U名称'],$target\U路径))
{
回显“文件已正确上传”
; //将文件上载到数据库 mysql_query(“加载数据本地填充…”;//将csv文件上载到database.table的一段长代码 echo“导入的表格
”; } 其他的 { echo“文件未正确上载,表未导入。”; }
我已经检查过,$\u FILES数组不是空的,但是这些文件不是在新目录中创建的,我已经确保新目录存在并且具有完全权限。我很确定我的语法也是正确的;移动上传的文件(/temporary/file/location/tmp\u name.csv,/new/file/location/test.csv)有人知道我哪里出错了吗

更新1

打印结果(美元文件)

([uploadedfile]=>Array([name]=>Final1.csv[type]=>text/逗号分隔值[tmp_name]=>/tmp/phpVnOIUK[error]=>0[size]=>11607))

更新2


还没有找到解决方案,如果你认为你有一个简单的答案,请把它贴出来,但现在我只想试着绕过这个问题

您的代码盲目地假设成功。永远不要假设上传成功。您的样板上传处理代码应该更像

if ($_FILES['uploadedfile']['error'] === UPLOAD_ERR_OK) {
   // it worked, handle the upload
   ...
} else {
   die("Upload failed with error code: " . $_FILES['uploadedfile']['error']);
}

这里定义了错误代码:

太抽象,没有具体的路径(它们必须是服务器绝对路径,而不是webroot相对路径)和错误消息。您也不应该接受未筛选的随机文件名(路径遍历)。如果路径存在并且
$\u FILES
包含正确的数据,那么唯一的可能性就是权限问题。Web服务器需要足够的权限才能写入文件应移动到的目录。不,除了“文件未上载”之外,没有其他错误“。至于路径,目的地是一成不变的,第一个是文件上传时的临时位置,如果这能变得更具体,请告诉我如何实现。关于接受所有文件名,我现在只是简单地设置了基础,但我会记住这一点,并在以后进行调整。@MrCode,文件夹拥有全部权限。“我确定了这一点。”梅森,这应该是根据你所说的来实现的,除非web服务器运行在根目录或www数据之外的其他目录下
ps aux | grep apache
将向您展示。如果您仍然想找到解决方案,我建议您在serverfault.com(stackoverflow的服务器管理网站)上发布。谢谢,我对php还是比较陌生的,我会确保添加一段更标准的错误处理代码。