当前位置: 首页 > 知识库问答 >
问题:

PHP上传dropzoneJS:只允许某些文件扩展名

苏宜人
2023-03-14

我正在用PHP做一个简单的网站,我正在使用DropzoneJS上传文件
我尝试只允许以下扩展:

pdf、png、jpg、jpeg、bmp和txt

.
有什么帮助吗?抱歉英语不好
这是我的upload.php代码

$ds = DIRECTORY_SEPARATOR;
   $foldername = "../common/uploads";

    if (!empty($_FILES)) {
    $fileupload = basename( $_FILES['file']['name']);
    $fileType = $_FILES['file']['type'];
    $fileSize = $_FILES['file']['size'];

    $tempFile = $_FILES['file']['tmp_name'];
    $targetPath = dirname( __FILE__ ) . $ds. $foldername . $ds;
    $targetFile =  $targetPath. $fileupload;
    move_uploaded_file($tempFile,$targetFile);
    $upload_info = "Filetype : <b>".$fileType."</b> <br>File size : <b>".$fileSize."</b><br>File name : <b> ".$fileupload."</b>";
    add_to_log($_SESSION['username'], 'upload', $upload_info);
    }

干杯,先生。

共有1个答案

凌志学
2023-03-14

首先,不管是dropzone发送文件还是文件上传输入。它最终将在变量$\u文件中结束。即使受到dropzone的限制,您也应该保留验证服务器端。

所以你需要搜索的只是,

PHP上传 dropzoneJS: 只允许一些文件扩展名

当我这么做的时候,我是这样做的。

$valid_exts = array(// allowed extensions
                'gif',
                'jpeg',
                'jpg',
                'JPG',
                'png',
            );
$valid_types = array(
                'image/gif',
                'image/jpeg',
                'image/jpg',
                'image/pjpeg',
                'image/x-png',
                'image/png',
            );
$extension = pathinfo($file['name'], PATHINFO_EXTENSION);

// make sure extension and type are allowed
    if (!(in_array($file['type'], $valid_types) && in_array($extension, $valid_exts))) {
            echo 'File type not allowed.';
            die();
    } else {
      // Do what ever you wish.
    }
 类似资料:
  • 问题内容: 我正在创建一个页面,供用户上传文件。如果文件类型是其他jpg,gif和pdf,我希望使用if语句创建$ error变量。 这是我的代码: 我在构造if语句时遇到困难。我怎么说呢 问题答案: 将允许的类型放入数组并使用。

  • 问题内容: 我正在为某些目录编写一些脚本,但是这些目录包含各种文件类型。 我想只是和现在,但也许其他几个人的未来。 到目前为止,我有: 谁能告诉我我现在如何只添加特定的文件扩展名? 问题答案: 只需使用参数,如下所示: 那应该做你想要的。 从下面的HoldOffHunger答案中获取解释: :命令 :递归地 :忽略大小写 :所有* .cpp:C ++文件(如果文件名中带有星号的目录,请使用\进行转

  • 问题内容: 我正在尝试遍历文件夹和所有子文件夹以查找某些文件类型的所有文件-例如,仅.mp4,.avi,.wmv。 这是我现在拥有的,它遍历所有文件类型: 谢谢! 问题答案: 您可以使用which采取路径并将文件扩展名从其末尾分割:

  • 我正在spring boot中创建一个REST api,目前我有一个映射来获取用户和特定用户的列表。 假设我的用户是这样的: 还有,在发送更新用户的请求时,请求体是否需要正确嵌套? 两者都是有效的还是2号?

  • 我想问,有没有可能限制我的模板函数,使它只接受我指定的几种类型?这就是如何告诉编译器在我使用cout< 更明确地说,这就是我要做的:

  • 问题内容: 我正在将图像上传到servlet。通过检查文件头中的幻数,仅在服务器端验证上传的文件是否为图像。在将表单提交给Servlet之前,有什么方法可以在客户端验证扩展?我一按回车就开始上传。 我在客户端使用Javascript和jQuery。 更新: 我最终通过服务器端验证结束了工作,该验证读取字节,如果不是图像,则拒绝上传。 问题答案: 可以仅检查文件扩展名,但是用户可以轻松地将virus