html:如何将上传文件格式限制为纯文本

时间:2015-02-14 01:10:09

标签: javascript html web

我需要在我的网页上设置上传文件功能。我只希望人们能够选择.csv和纯文本(.txt)文件。

<input type="file" accept=".csv,text/plain" >

我知道属性accept可能有效。但是有两个问题。

  1. 它不适用于Firefox或Safari
  2. csv工作正常,但文字似乎不受限制。我可以上传.java文件,.rtf文件,.python文件等。
  3. 任何人都知道如何实现它?

3 个答案:

答案 0 :(得分:1)

请注意,您在客户端执行的任何操作(例如使用accept标记中的input属性)都可以被客户端轻松忽略/覆盖。因此,如果您确实希望阻止除指定类型之外的文件上传到您的服务器,那么您应该在表单发布到的脚本中对服务器端进行某种检查。

答案 1 :(得分:0)

如果您只想接受txt文件,请将接受从text / plain更改为accept=".csv,.txt"

答案 2 :(得分:0)

$target="images/";  //path to upload
if( isset($_POST['submit']) ) //check if post is set
{
        if $_FILES['file']['type'] != 'text/plain'
        {  
             // error
         } else {
           //upload
             move_uploaded_file($_FILES['file']['tmp_name'], $target);
          }   

}