欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

php swfupload 500

林晨陽1年前7瀏覽0評論

PHP SWFUpload 500是一款非常流行的PHP文件上傳插件,它可以通過Flash實(shí)現(xiàn)多個文件同時上傳。有很多網(wǎng)站都在使用它來實(shí)現(xiàn)文件上傳。但是在使用過程中,你可能會遇到一些問題,比如上傳的文件大小限制。本文將為你詳細(xì)介紹如何解決PHP SWFUpload 500的大小限制問題,并提供代碼示例。

首先,我們來看一下PHP SWFUpload 500的一般上傳代碼:

<form id="upload-form">
<input type="hidden" name="PHPSESSID" value="<?php echo session_id(); ?>" />
<div>
<input type="file" name="file-0" id="file-0" />
<input type="button" id="upload-btn" value="Upload" />
</div>
</form>
<script type="text/javascript">
var swfu;
$(function() {
var settings = {
upload_url: "upload.php",
flash_url: "swfupload/swfupload.swf",
post_params: {
"PHPSESSID": "<?php echo session_id(); ?>"
},
file_size_limit : "5 MB",
file_types : "*.jpg;*.jpeg;*.gif;*.png;*.bmp",
file_types_description : "Image Files",
file_upload_limit : 0,
file_queue_limit : 0,
button_placeholder_id : "upload-btn",
button_text : "Select Files",
button_width : 120,
button_height : 30,
button_text_style : "",
button_text_top_padding : 3,
button_text_left_padding : 12,
file_dialog_start_handler : fileDialogStart,
file_queued_handler : fileQueued,
file_queue_error_handler : fileQueueError,
file_dialog_complete_handler : fileDialogComplete,
upload_start_handler : uploadStart,
upload_progress_handler : uploadProgress,
upload_error_handler : uploadError,
upload_success_handler : uploadSuccess,
upload_complete_handler : uploadComplete,
custom_settings : {
progressTarget : "upload-progress",
cancelButtonId : "upload-cancel"
},
debug : false
};
swfu = new SWFUpload(settings);
});
function fileDialogStart() {
// ...
}
function fileQueued(file) {
// ...
}
// 其他方法省略
</script>

這段代碼是一個簡單的上傳表單,其中包括一個文件選擇框和一個上傳按鈕。在Javascript中,我們使用SWFUpload對象來配置上傳參數(shù)。其中 file_size_limit 參數(shù)指定了上傳文件的大小限制,file_types 參數(shù)指定了上傳文件的類型,file_upload_limit 參數(shù)指定了上傳文件的數(shù)量限制。

如果上傳文件的大小超過了 file_size_limit 的限制,那么上傳會失敗。這個功能是非常有必要的,因?yàn)榉?wù)器很容易因?yàn)樯蟼鞔笪募罎ⅰ5怯袝r候,我們需要上傳更大的文件,可能超過了默認(rèn)限制。這個時候,我們需要修改代碼。

如果你想上傳更大的文件,只需要在 PHP 的配置文件 php.ini 中修改 upload_max_filesize 和 post_max_size 參數(shù)即可。例如:

upload_max_filesize = 100M
post_max_size = 100M

這將允許上傳最大文件大小為 100MB 的文件。但是,這只能解決PHP的限制,不能解決SWFUpload插件的限制。

如果你想上傳更大的文件,那么你需要修改 SWFUpload.js 文件。在 SWFUpload.js 中,我們可以找到以下代碼:

File.prototype.checkSize = function() {
if (this.size === 0) {
this.fileStatus = SWFUpload.FILE_STATUS.ERROR;
this.fileErrorCode = SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE;
return false;
} else if (this.size > this.swfupload.settings.file_size_limit) {
this.fileStatus = SWFUpload.FILE_STATUS.ERROR;
this.fileErrorCode = SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT;
return false;
}
return true;
};

這個方法實(shí)現(xiàn)了文件大小的限制。如果文件大小超過了 file_size_limit,那么SWFUpload會返回一個錯誤,阻止上傳。如果你想上傳更大的文件,你可以修改這個方法中的條件判斷。例如:

File.prototype.checkSize = function() {
if (this.size === 0) {
this.fileStatus = SWFUpload.FILE_STATUS.ERROR;
this.fileErrorCode = SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE;
return false;
} else if (this.size > this.swfupload.settings.file_size_limit * 10) {
this.fileStatus = SWFUpload.FILE_STATUS.ERROR;
this.fileErrorCode = SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT;
return false;
}
return true;
};

在這個例子中,我們將文件大小的限制放寬了10倍。這樣就可以上傳更大的文件了。

總之,PHP SWFUpload 500是一款非常強(qiáng)大的文件上傳插件。它可以通過Flash實(shí)現(xiàn)多個文件同時上傳。如果你遇到文件大小限制的問題,可以通過上述方法來解決。在修改代碼時,一定要注意代碼結(jié)構(gòu)和語法錯誤。