我不知道该怎么做。我从下载包中找到的一个示例开始,并根据需要进行了编辑。我在php服务器文件脚本中进行了扩展验证,因此如果扩展名不在白名单中,脚本将退出并返回错误。我不知道如何让自定义消息工作。
有一个php函数
function HandleError($message) {
header("HTTP/1.1 500 Internal Server Error");
echo $message;
}但这只返回500,而不是$message!这是js uploadError()
function uploadError(file, errorCode, message) {
try {
var progress = new FileProgress(file, this.customSettings.progressTarget);
progress.setError();
progress.toggleCancel(false);
switch (errorCode) {
case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:
progress.setStatus("Errore upload: " + message);
this.debug("Error Code: HTTP Error, File name: " + file.name + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:
progress.setStatus("Upload fallito.");
this.debug("Error Code: Upload Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.IO_ERROR:
progress.setStatus("Errore Server (IO)");
this.debug("Error Code: IO Error, File name: " + file.name + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:
progress.setStatus("Errore Security");
this.debug("Error Code: Security Error, File name: " + file.name + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:
progress.setStatus("Limite upload superato.");
this.debug("Error Code: Upload Limit Exceeded, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:
progress.setStatus("File non valido. Upload ignorato.");
this.debug("Error Code: File Validation Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:
// If there aren't any files left (they were all cancelled) disable the cancel button
if (this.getStats().files_queued === 0) {
document.getElementById(this.customSettings.cancelButtonId).disabled = true;
}
progress.setStatus("Cancellato.");
progress.setCancelled();
break;
case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:
progress.setStatus("Sospeso.");
break;
default:
progress.setStatus("Errore non gestito: " + errorCode);
this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
break;
}
} catch (ex) {
this.debug(ex);
}如果我注释掉header()函数,它会在进度条中显示错误(是的),但将其视为成功,而不是我必须将其视为错误。删除header()后,转到uploadSuccess而不是uploadError。
文档真的很难看,我找不到其他任何东西。
发布于 2012-10-31 00:12:30
删除报头,然后在echo $message之后添加exit(0)。我认为这会解决这个问题。
https://stackoverflow.com/questions/8714544
复制相似问题