我想制作文件上传表单。
但我的困惑是,当我把文件元素放在html中时,它允许选择所有类型的文件。
我希望浏览按钮只允许从文件系统中选择图像。
实际上它应该只显示文件系统的图像。
提前致谢。
答案 0 :(得分:8)
任何浏览器都不支持带有MIME类型列表的属性“accept”。
<input type="file" accept="image/gif, image/jpeg" />
您可以使用JS对文件扩展名进行排序,或者尝试http://swfupload.org/
答案 1 :(得分:1)
一般来说,文件上传应该在服务器端验证,因为主要浏览器不完全支持'accept'属性。示例如下:
$accept = array('jpg','png','gif','bmp');
$extension = substr($_FILES['file']['name'],strrpos($_FILES['file']['name'],'.')+1);
if(!in_array($extension,$accept)){
// If the extension is not allowed show an error, else, the file type is valid
echo 'Not a valid file extension';
}
答案 2 :(得分:1)
Uploadify会对你有用。它允许您指定哪些文件类型可供用户选择。如果您需要,它还可以允许用户一次上传多个文件。所有上载的文件都显示在带有进度条的队列中,并在完成上载后从队列中删除。我强烈推荐它。