文件上传错误.错误返回FALSE,但move_上载


File upload error. Error returns FALSE but move_uploaded

我正试图实现一个文件上传到一个预先存在的形式,我知道的作品,仍然做除了文件上传部分。

基本上,我不确定错误和如何修复它。输出只是基于我对代码

的理解而放入的内容。

我从下面的代码得到以下输出:


<>之前数组([chart-image] =>数组([name] =>图表example.jpg[type] => image/jpeg[tmp_name] =>/tmp/php5iGbQD . sh[error] => 0[size] => 50222))无法移动文件之前

<form id="<?php echo $type ?>-trade" enctype="multipart/form-data" method='post' action='<?php echo $url; ?>'>
*snip*
    <input type="hidden" name="MAX_FILE_SIZE" value="52428800" />    
    <input name="chart-image" type="file" />
*snip*
</form>

ACTION PAGE

print_r(带有_file美元);
if($_FILES['chart-image']['error'] == '0'){
    $uploaddir = '/images/charts/';
    $file = basename($_FILES['chart-image']['name']);
    $uploadfile = $uploaddir . $file;
    if(file_exists($_FILES['chart-image']['tmp_name'])){
       if (move_uploaded_file($_FILES['chart-image']['tmp_name'], $uploadfile)) {
          echo "GOOD";
       } else {
           echo "CAN'T MOVE FILE";
       }
    } else {
       echo "ERROR";
    }
}
else{
    echo "Error In Uploading File";
}
*snip*

附加信息

    我正在运行wordpress
  • 目录为chmod 777
  • php.ini中启用的上传表单
  • <form>php.ini的文件都小于最大文件大小

我试过了,它工作得很好:

<?php
//print_r($_FILES);

if($_FILES['chartimage']['error'] == '0'){
    $uploaddir = 'images''';
    $file = ($_FILES['chartimage']['name']);
    $uploadfile = $uploaddir . $file;
    if(file_exists($_FILES['chartimage']['tmp_name'])){
       move_uploaded_file($_FILES['chartimage']['tmp_name'], $uploadfile);
    } else {
       echo "ERROR";
    }
}
else{
    echo "Error In Uploading File";
}
?>

当你打印$uploadfile = $ uploaddr。美元的文件;回声还是美元;有了你的代码,我得到:images/C:'WINDOWS'Temp'php76.tmp这是问题的根源。