• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

文件上传之SWFUpload插件(代码)_PHP

php 搞代码 3年前 (2022-01-25) 7次浏览 已收录 0个评论

下面通过一段代码给大家演示下,主要分为1.前台文件index.html和 2.后台文件upload.php。具体代码如下所示:

1.前台文件index.html <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>SWFUpload</title><link href="css/default.css" rel="stylesheet" type="text/css" /><!---ecms -ecms Swfupload插件begin--><script type="text/javascript" src="swfupload/swfupload.js"></script><script type="text/javascript" src="js/swfupload.queue.js"></script><script type="text/javascript" src="js/fileprogress.js"></script><script type="text/javascript" src="js/handlers.js"></script><!---ecms -ecms Swfupload插件end--><script type="text/javascript">  var swfu;   window.onload = function() {   var settings = {    flash_url : "swfupload/swfupload.swf",    upload_url: "upload.php", // 后台文件    post_params: {"PHPSESSID" : ""},    file_size_limit : "100 MB",    file_types : "*.*",    file_types_description : "All Files",    file_upload_limit : 100,    file_queue_limit : 0,    custom_settings : {     progressTarget : "fsUploadProgress",     cancelButtonId : "btnCancel"    },    debug: false,     // 按钮设置    button_image_url: "images/TestImageNoText_65x29.png", // Flash样式图片文件    button_width: "65",    button_height: "29",    button_placeholder_id: "spanButtonPlaceHolder",    button_text: '<span class="theFont">浏览</span>',    button_text_style: ".theFont { font-size: 16; }",    button_text_left_padding: 12,    button_text_top_padding: 3,     // 句柄设置    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,    queue_complete_handler : queueComplete   };    swfu = new SWFUpload(settings);   }; </script><body><div id="header"> <h1 id="logo">SWFUpload</h1> <div id="version">v2.2.0</div></div> <div id="content">   <p>点击“浏览”按钮,选择您要上传的文档文件后,系统将自动上传并在完成后提示您。</p>  <p>请勿上传包含中文文件名的文件!</p>  <div class="fieldset flash" id="fsUploadProgress">   <span class="legend">快速上传</span>  </div>  <div id="divStatus">0 个文件已上传</div>   <div>    <span id="spanButtonPlaceHolder"></span>       </div>  </div><div align="center">Hanization By Leo.C,</div>

2.后台文件upload.php

  $multiplier*(int)$POST_MAX_SIZE && $POST_MAX_SIZE) {  header("HTTP/1.1 500 Internal Server Error");  echo "POST exceeded maximum allowed size.";  exit(0); } // 基本设置 $save_path = getcwd() . "/file/";                // 文件上传位置 $upload_name = "Filedata"; $max_file_size_in_bytes = 2147483647;             // 2GB $extension_whitelist = array("doc", "txt", "jpg", "gif", "png"); // 允许文件类型 $valid_chars_regex = '.A-Z0-9_ !@#$%^&()+={}\[\]\',~`-';   // 文件名规则 // 其他变量 $MAX_FILENAME_LENGTH = 260; $file_name = ""; $file_extension = ""; $uploadErrors = array(  0=>"文件上传成功",  1=>"上传的文件超过了 php.ini 文件中的 upload_max_filesize directive 里的设置",  2=>"上传的文件超过了 HTML form 文件中的 MAX_FILE_SIZE directive 里的设置",  3=>"上传的文件仅为部分文件",  4=>"没有文件上传",  6=>"缺少临时文件夹" ); // 检测文件是否上传正确 if (!isset($_FILES[$upload_name])) {  HandleError("No upload found in \$_FILES for " . $upload_name);  exit(0); } else if (isset($_FILES[$upload_name]["error"]) && $_FILES[$upload_name]["error"] != 0) {  HandleError($uploadErrors[$_FILES[$upload_name]["error"]]);  exit(0); } else if (!isset($_FILES[$upload_name]["tmp_name"]) || !@is_uploaded_file($_FILES[$upload_name]["tmp_name"])) {  HandleError("Upload failed is_uploaded_file test.");  exit(0); } else if (!isset($_FILES[$upload_name]['name'])) {  HandleError("File has no name.");  exit(0); } // 检测文件尺寸 $file_size = @filesize($_FILES[$upload_name]["tmp_name"]); if (!$file_size || $file_size > $max_file_size_in_bytes) {  HandleError("File exceeds the maximum allowed size");  exit(0); }  if ($file_size  $MAX_FILENAME_LENGTH) {  HandleError("Invalid file name");  exit(0); } // 检测重名文件 if (file_exists($save_path . $file_name)) {  HandleError("File with this name already exists");  exit(0); } // 检测后缀名 $path_info = pathinfo($_FILES[$upload_name]['nam<div>……本2文来源gaodai.ma#com搞##代!^码@网3</div><code>搞代gaodaima码</code>e']); $file_extension = $path_info["extension"]; $is_valid_extension = false; foreach ($extension_whitelist as $extension) {  if (strcasecmp($file_extension, $extension) == 0) {   $is_valid_extension = true;   break;  } } if (!$is_valid_extension) {  HandleError("Invalid file extension");  exit(0); } // 保存文件 if (!@move_uploaded_file($_FILES[$upload_name]["tmp_name"], $save_path.$file_name)) {  HandleError("文件无法保存.");  exit(0); } // 成功输出  echo "File Received"; exit(0); function HandleError($message) { header("HTTP/1.1 500 Internal Server Error"); echo $message;}?>

以上代码就是实现文件上传之SwFUpload插件的全部内容,希望大家喜欢。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:文件上传之SWFUpload插件(代码)_PHP
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址