plUpload - 服务器端错误未显示
Posted
技术标签:
【中文标题】plUpload - 服务器端错误未显示【英文标题】:plUpload - Server Side Errors Not Showing 【发布时间】:2012-05-30 00:22:01 【问题描述】:我有一个基于来自网站的自定义示例的 plupload 实例,它工作完美,除了显示来自服务器端上传脚本的错误消息(来自下载示例文件夹的upload.php)。
正在显示本地错误消息,例如,如果我尝试上传已受限制的文件类型,我会收到我期望的错误消息,但是,服务器端消息只是没有显示。
我知道upload.php 文件正在正确触发,因为我的上传已成功处理,并且我设置了一个睡眠功能来验证文件是否被请求。 此刻我只是简单地放置在我的 upload.php 顶部的行以帮助调试,它只是休眠 10 秒并返回错误消息,这仍然不起作用。
upload.php
sleep(10);
die('"jsonrpc" : "2.0", "error" : "code": 500, "message": "THIS IS AN ERROR.", "id" : "id"');
...(Rest of normal upload.php file)...
我正在使用的 javascript 包含在下面,如果你们能提供任何帮助,我将不胜感激,因为我已经在这方面花费了太长时间,而问题是让我无法实时推送我的代码。
谢谢,
亚历克斯
// Fanart
$(function()
var fanart_uploader = new plupload.Uploader(
runtimes : 'html5,flash,html4',
browse_button : 'fanart_pickfiles',
container : 'fanart_container',
drop_element : 'fanart_drop',
chunk_size : '1mb',
max_file_size : '8mb',
url : '/upload.php?gameid=<?= $gameid ?>&arttype=fanart',
flash_swf_url : '/js/plupload/js/plupload.flash.swf',
silverlight_xap_url : '/js/plupload/js/plupload.silverlight.xap',
filters : [
title : "Image files", extensions : "jpg,png",
]
);
fanart_uploader.bind('Init', function(up, params)
$('#fanart_runtime').html("You are using " + params.runtime);
);
$('#fanart_uploadfiles').click(function(e)
fanart_uploader.start();
e.preventDefault();
);
fanart_uploader.init();
fanart_uploader.bind('FilesAdded', function(up, files)
$.each(files, function(i, file)
$('#fanart_filelist').append(
'<div style="padding: 4px; margin: 3px; border: 1px dotted #fff; border-radius: 6px; background-color: #333;" id="' + file.id + '"><img class="tick" src=\"<?= $baseurl ?>/images/common/icons/tick_16.png\" style=\"display: none; vertical-align: -2px;\" />' +
file.name + ' <em>(' + plupload.formatSize(file.size) + ')</em> <div style=\"margin: auto; margin-top: 3px; width: 200px; height: 20px; border: 1px solid #fff; border-radius: 6px; background-color: #222;\"><div class="progressbar" style=\"width: 0px; height: 16px; padding: 2px 0px; background-color: #ccc; border-radius: 6px; text-align: center;\"><b style="font-size: 16px; color: #222;"></b></div></div>' +
'</div>');
);
up.refresh(); // Reposition Flash/Silverlight
);
fanart_uploader.bind('UploadProgress', function(up, file)
$('#' + file.id + " b").html(file.percent + "%");
$('#' + file.id + " .progressbar").css("width", (file.percent * 2));
);
fanart_uploader.bind('Error', function(up, err)
$('#fanart_filelist').append("<div>Error: " + err.code +
", Message: " + err.message +
(err.file ? ", File: " + err.file.name : "") +
"</div>"
);
up.refresh(); // Reposition Flash/Silverlight
);
fanart_uploader.bind('FileUploaded', function(up, file)
$('#' + file.id + " .tick").show();
);
);
【问题讨论】:
nm,回答了我自己的问题...堆栈溢出不允许我提出自己的答案,所以你可以在这里找到我的答案 - plupload.com/punbb/viewtopic.php?id=1804 【参考方案1】:这是您链接到的答案:
NM,回答了我自己的问题...
似乎我的 plUpload 实例减轻了服务器响应,这是 JSON 字符串转换成一个 JS 对象,可以通过 “文件上传”事件。
这是需要此答案的任何其他人的代码示例。
fanart_uploader.bind('FileUploaded', function(up, file, info) $('#' + file.id + " .tick").show(); printObject(info); var response = jQuery.parseJSON(info.response); alert(response.error.message); );
【讨论】:
感谢您为我发布此信息;)以上是关于plUpload - 服务器端错误未显示的主要内容,如果未能解决你的问题,请参考以下文章
commons-fileupload处理plupload多文件上传
收到此错误:处理命令时发生未知的服务器端错误。原始错误:无法读取未定义的属性“替换”
数据表服务器端处理未在页面上显示输出并且条件不起作用[关闭]