ValidForm Builder文件类型验证

时间:2014-07-29 10:44:34

标签: validform

有人知道如何验证文件类型输入。

我修改了(硬编码)class.vf_file.php输入。

$strOutput .= "<input accept=\".pdf,.doc,.docx\"     etc----/>\n";

这对Google Chrome有帮助,但Safari,Firefox会忽略修改

如果检测到任何其他类型的文件,阻止用户提交表单将是理想的解决方案。

谢谢

1 个答案:

答案 0 :(得分:0)

我建议使用像Plupload这样的第三方文件上传库。我们总是将ValidForm Builder与Plupload一起使用;就像一个魅力。

但是,您可以使用meta数组在<input>标记中实现自定义属性,而无需对任何内容进行硬编码:

$objForm->addField(
    "upload-document", 
    "Upload Document", 
    ValidForm::VFORM_FILE,
    array(),  // Validation array
    array(),  // Error handling array
    array(    // Meta array
        "fielddata-extensions" => "pdf,doc,docx"
    )
);

通过在元字符前添加“字段”前缀,您可以将该特定元数据添加到<input>字段本身,而不是将其包裹<div class='vf__optional'></div>

以上示例将输出:

<div class="vf__optional">
    <label for="upload-image">Upload Image</label>
    <input type="hidden" name="MAX_FILE_SIZE" value="2097152">
    <input type="file" value="" name="upload-image[]" id="upload-image" class="vf__file" data-extensions="pdf,doc,docx">
</div>

因此,使用元和第三方文件上传处理程序的组合,您实际上可以非常酷。

话虽如此 - 我必须承认,文件上传字段最近没有像其他字段类型那样受到关注。