繁体   English   中英

Blueimp jQuery File Uploader并将文件大小保存到数据库中

[英]Blueimp jQuery File Uploader and save filesize into database

我使用Blueimp jQuery File Uploader,我想通过获取数据库中每个文件的文件大小(包括缩略图的文件大小(如果文件为图像))来更新用户使用的磁盘空间 我注意到每个文件都向服务器发送单独的请求,因此每个文件都有mysql_query。

  1. 首先:将mysql_query放在哪里
  2. 第二:可以为每个文件运行更新查询吗?

您是否尝试过Blueimp jquery文件Uploader的github Wiki。

这是链接https://github.com/blueimp/jQuery-File-Upload/wiki/Working-with-databases

它告诉您如何将数据库与上载器一起使用,并且必须添加数据库更新代码

在UploadHandler.php中,因为在每次上传时,此上传器都会向服务器发送XML请求,

并且使用在server / php文件夹中的UploadHandler.php中定义的类。

同样在受保护的函数handle_file_upload中,定义了size变量,该变量将在mysql查询中使用。

$file->size = $this->fix_integer_overflow(intval($size));

休息,您可以通过我给您的链接来做自己。

对于那些有相同问题的人,我找到了解决方案,首先您需要添加查询功能,如此处所述https://github.com/blueimp/jQuery-File-Upload/wiki/Working-with-databases

然后改变

        if (is_int($img_width)) {
            $this->handle_image_file($file_path, $file);
        }

对此

        if (is_int($img_width)) {
            $this->handle_image_file($file_path, $file);
        }else
    {
    $file->upload_to_db = $this->update_plus($file_size);//custom query function

然后搜索* handle_image_file *函数并添加此$ filesize = 0; 在开头,然后在函数末尾添加以下代码

    $dir = 'yourBaseDir';
    if($file->url) $filesize += filesize(urldecode($dir.$file->url));
    if($file->thumbnail_url) $filesize += filesize(urldecode($dir.$file->thumbnail_url));
    $file->upload_to_db = $this->update_plus($filesize);
}

用于删除我使用自定义功能的上传器分开

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM