【问题标题】:how to display echo when using dropzone使用dropzone时如何显示回声
【发布时间】:2019-03-11 21:59:20
【问题描述】:

在使用 dropzone 上传文件时,我试图从 php 获取回显。

这是html:

<div class="dropzone"></div>

我的 ajax 调用:

$(".dropzone").dropzone({

    url: '',                        
    success:function(file, response) {
    alert(response);
    }

});

php:

$extensionName = explode(".", $_FILES["files"]["name"][0]); 
$extension = strtolower(end($extensionName));



if($SumStorage > $LimitStorage) { // if max available storage is reached

    echo 'out of storage';

    exit;
}
elseif($_FILES["file"]["size"] > $MaxUploadSize) { // if maxupload size is exceeded

    echo 'file too big';

    exit;

}
elseif(in_array($extension, $AllowedExts) == 0) { // if extension is not allowed

    echo 'extension not allowed';

    exit;

}

elseif 循环没有问题。我只在 php 中设置了这个限制,而不是在 dropzone.js 本身!如果文件太大,不允许扩展或其他什么......他拒绝上传。但问题是回声:如果由于某种原因不允许,我总是得到0,如果成功上传,我总是得到1

但他应该回显file too bigextension not allowed等...

【问题讨论】:

  • 您确定在 PHP 中从 $_FILES 数组中捕获文件吗?
  • 问题只是回声。循环中的检查工作正常
  • 删除所有退出函数。并放入所有行$error = 'extension not allowed; 而不是“退出”。最后通过 die($error); 用“if”在下面检查它;

标签: php ajax response dropzone


【解决方案1】:

你可以像这样修改你的 ajax cal:

$(".dropzone").dropzone({

    url: '',                        
    success:function(file, response) {
    // alert(response);
    $("dropzone").append(response);
    }

});

在你的 php 文件中尝试使用 return 而不是 echo

【讨论】:

    猜你喜欢
    • 2014-02-24
    • 2017-12-05
    • 1970-01-01
    • 1970-01-01
    • 2015-01-17
    • 2020-09-02
    • 2022-01-14
    • 1970-01-01
    • 2014-03-26
    相关资源
    最近更新 更多