【问题标题】:Notice: Unknown: file created in the system's temporary directory in Unknown on line 0注意:Unknown:在系统临时目录中创建的文件 Unknown on line 0
【发布时间】:2018-01-10 17:11:47
【问题描述】:

我只是使用 html 表单来上传文件。

但我遇到以下错误:

注意:未知:文件创建在系统的临时目录中 第0行未知

这是我的 HTML:

<form name="import" method="post" action="CSVUpload" enctype="multipart/form-data">
    <input type="file" name="file" /><br />
    <input type="submit" name="submit" value="Submit" />
</form>

路线如下:

$f3->route('POST|PUT @CSVUpload: /CSVUpload', 'GBD\Internals\Controllers\LeaveController->csvHandler');
$f3->route('GET /CSVUpload', 'GBD\Internals\Controllers\LeaveController->csv');

这是我的控制器:

public function csv()
{
    $this->f3->set('content', 'leave/csvUploader.php');
    $template = new \View;
    echo $template->render('dashboard/layout.php');
}

public function csvHandler()
{
    $postvalue = $this->f3->get('POST.submit');
    if(isset($postvalue))
    {
        $fileReceived = $this->f3->get('POST.file');
        var_dump($fileReceived);
    }
}

我正在使用脱脂框架。

我发现上传的文件暂存到upload_tmp_dir="C:\inetpub\temp"

这里有什么问题??

非常感谢任何帮助。谢谢。

【问题讨论】:

标签: php html file-upload fat-free-framework


【解决方案1】:

这不是错误,这是一个通知。见this request。基本上,它只是告诉您它已退回到系统的默认临时目录,而不是您提供的更具体的内容。您可以将其覆盖为更具体的内容(例如专门为此应用程序的临时目录)或通过error_reporting() 禁用通知。我推荐前者。

【讨论】:

  • 具体来说,如果提供的目录不存在,可能会发生这种情况。
【解决方案2】:

确保您要保存内容的目录可写

例如,在我的例子中,它是一个必须是可写的 Concrete 5 目录。在我将权限更改为 777 后,它停止了哭泣。

【讨论】:

  • 对我来说,文件夹的权限是 776,直到我将它们更改为 777,它仍然无法工作。对我来说,PHP 需要在目录上公开执行并不是隐含的,但我猜它确实如此.另外:“它停止哭泣”,那个让我崩溃了哈哈。
  • 请不要使用权限 777。这太糟糕了。使目录归需要使用的用户所有,并使用限制性权限。
【解决方案3】:

如果您的php.ini 有错误的upload_tmp_dir 路径,也会发生这种情况。

附言使用error_reporting() 可能无法禁用它。

【讨论】:

    【解决方案4】:

    花了 3 小时后,我发现我不小心从我的 windows 10 环境变量中删除了 temp 和 tmp,通过添加如下路径,我的问题得到了解决

    【讨论】:

      猜你喜欢
      • 2013-06-27
      • 1970-01-01
      • 1970-01-01
      • 2014-05-22
      • 2017-04-20
      • 2020-12-04
      • 2015-01-31
      • 2012-03-31
      相关资源
      最近更新 更多