BlueImp jQuery文件上传 - 重命名文件名,带有数据输入标题



我想用隐藏的附加表单字段重命名文件名,然后在上传照片时进行一个小的独特随机数。文件名应该看起来像这样:hidden_form_field-random_number.jpg = hello_dj84lx.jpg

我找到了进行随机名称的解决方案,依此类推,但没有使用插入的形式。我试图从示例中使用$ file->标题,但没有成功。

我设法解决了问题。

首先,我将此功能添加到上传/server/php/index.php文件

protected function generate_unique_filename($filename = ""){
        $extension = "";
        if ( $filename != "" ){
            $extension = pathinfo($filename , PATHINFO_EXTENSION);
            if ( $extension != "" ){
                $extension = "." . $extension;
            }
        }           
        $characters = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        $charactersLength = strlen($characters);
        $randomString = "";
        for ($i = 0; $i < 5 ; $i++) {
            $randomString .= $characters[rand(0, $charactersLength - 1)];
        }
        return $filename.'_'.date('siHdmy').$randomString.$extension;
}

然后我编辑了uploadhandler.php文件。我添加了一个公共变量$ mytitle并替换了此代码:

$file->name = $this->get_file_name($uploaded_file, $name, $size, $type, $error, $index, $content_range);

使用此

$this->mytitle='what-ever-text-filled-in-the-title-form-field';
$file->name = $this->generate_unique_filename($this->mytitle);

相关内容

  • 没有找到相关文章

最新更新