plupload - 如何设置文件上传到的位置?

时间:2012-10-04 13:42:13

标签: php file-upload plupload

我刚刚将最新版本的plupload安装到我的本地测试PHP服务器上,运行HTML5上传器。一切看似工作正常,但我无法确定文件的上传位置(以及如何将其更改为我想要设置的目录)。

这是文件 - http://jsfiddle.net/SQ9aB/

5 个答案:

答案 0 :(得分:2)

url位于配置对象的属性“url”中。

$("#html5_uploader").pluploadQueue({
    // General settings
    runtimes : 'html5',
    url : 'upload.php',
    max_file_size : '10mb',
    chunk_size : '1mb',
    unique_names : true,
....

在这种情况下为upload.php

答案 1 :(得分:1)

对于等式的另一面(更改文件在上传后的位置)并假设您使用plupload提供的示例,请打开upload.php并更改此行:

$targetDir = ini_get("upload_tmp_dir") . DIRECTORY_SEPARATOR . "plupload";

它应该位于header()次调用下方文件的顶部,但这会改变文件上传后的位置。

这个部分也位于文件的底部(这很奇怪,因为通常 PHP文件使用move_uploaded_file而不是从php://input读取,排序为{{ 1}}文件和.part / fread内容):

fwrite

看起来它尽可能地从流中取出所有内容,创建一个存储此内容的“.part”文件(对于我猜的不完整上传?)然后只需在当前目录中重命名它。再一次,奇怪,但我猜他/她自己。

答案 2 :(得分:1)

设法在$ targetDir var中使用以下内容来使其正常工作..希望我能在某个时候找一个人看同样的问题

$targetDir = realpath(getenv("DOCUMENT_ROOT")) . '\uploads';

答案 3 :(得分:1)

在Plupload新版本的upload.php文件中,它应该像这样汇总一行:

// $targetDir = 'uploads';

只需删除//并保存文件(当然,您需要在示例文件夹中创建名为uploads的目录。)

答案 4 :(得分:0)

对于laravel(或任何类似的MVC框架):

url : /to-your-route

在您的控制器中

$foldername = "yourFolderName";
$filename = $request->name;

    return Plupload::receive('file', function ($file) use ($foldername,$filename)
    {

        $file->move(public_path().DIRECTORY_SEPARATOR.$foldername.DIRECTORY_SEPARATOR, $filename);
        return ['result'=>'result','filename'=>$filename];


    });