我想知道,有没有办法在文件选择器上传之前阻止没有扩展名的文件?
谢谢你。
文森特。
有一种方法可以使用 data-fp-mimetype 参数将文件列入白名单。没有办法黑名单。这意味着您可以设置要排除的文件,但不能设置不排除的文件。
我今天才开始使用 FilePicker,但我发现了以下内容,这些内容超出了我在他们网站上可以找到的任何文档的范围。他们提供的 javascript 从返回的变量中提取上传文件的 url。在这些变量中还有文件名。
这是javascript的输入...
<input onchange="out='';fn='';
for(var i=0;i<event.fpfiles.length;i++)
{
out+=event.fpfiles[i].url;
out+=' '
fn+=event.fpfiles[i].filename;
fn+=' '
};
document.getElementById('drop_filename_'+drop_count).value=fn;
fn='File #'+drop_count+': '+fn+'<br>';
document.getElementById('drop_'+drop_count).value=out;
document.getElementById('dropped_display_'+drop_count).innerHTML=fn;
document.getElementById('dropped_display_'+drop_count).style.display='';
drop_count++;
if(drop_count>5){drop_count=5;}"
type="filepicker-dragdrop"
data-fp-multiple="true"
data-fp-apikey="your_api_key"
data-fp-mimetypes="*/*"
data-fp-container="modal"
data-fp-maxsize="4000000"
data-fp-services="COMPUTER">
我添加了一个变量“fn”并用正在上传的文件的文件名填充它。因为它存储了一个没有扩展名的 filepicker.io,所以它没有任何威胁。但是,当提交到 php 脚本时,我可以运行该文件并省略任何我认为不需要的扩展名。
我准备了一些表单字段来接受提供的数据,然后将其发送到 php 脚本进行处理。
<span style="display:none;" id="dropped_display_1"></span>
<input type="hidden" name="drop_1" id="drop_1" />
<input type="hidden" name="drop_filename_1" id="drop_fn_1" />