首页 > 编程知识 正文

php第三方文件上传插件(php上传文件夹)

时间:2023-12-14 11:18:08 阅读:315465 作者:VWZZ

本文目录一览:

php 上传大文件 插件 有哪些

http协议里,

对断点下载有支持.

断点上传单纯靠php

是做不了的.

因为普通的浏览器端没那功能.(上传的时候

还是会整个文件编码发送)

想实现的话

,

客户端需要插件了,

客户端可以使用flex实现.

服务端,

php可以写个webservice

接受文件.

zblog网站怎么上传插件php

百度自动推送JS代码如何安装使用?

1 - 手动插入代码(适合所有网站程序)

站长需要在每个页面的HTML代码中包含以下自动推送JS代码当页面被访问时,页面链接会自动推送给百度,有利于新页面更快被百度发现。具体如下:

PHP

script

(function(){

var bp = document.createElement('script');

bp.src = '//push.zhanzhang.baidu.com/push.js';

var s = document.getElementsByTagName("script")[0];

s.parentNode.insertBefore(bp, s);

})();

/script

如果站长使用PHP语言开发的网站,可以按以下步骤操作:

1、创建名为“baidu_js_push.php”的文件,文件内容是上述自动推送JS代码;

2、在每个PHP模板页文件中的 body 标记后面添加一行代码:

PHP

?php include_once("baidu_js_push.php") ?

2 - 使用ZblogPHP百度自动推送插件

插件名称:百度自动推送

插件作者:大谋

应用ID:dm_plug_baidu

最低版本要求:Z-BlogPHP 1.3 Wonce

插件下载地址:http//app.zblogcn.com/?id=887

使用方法:下载安装插件后启用即可

推荐阅读

百度链接提交工具主动推送功能升级了

网站站内链接优化的几个技巧

让网站收录变快的方法

80%的站长不知道的“网站微调”优化技术

浅析ULR链接优化对百度排名提升的重要性

php上传文件时,显示百分比用什么插件比较好

使用Ajax 方式上传文件,显示进度条一般都要求IE10以上的浏览器,但Chrome Firefox Safari这些版本低些都可以支持;

如果上传文件的话可以使用 jQuery form 插件,如果同时上传多个文件的可以使用 jQuery Uploadify插件,用SWFUpload没有浏览器的限制但是要求浏览安装Flash插件,当前还有很多这方面的插件,你可以根据自己使用的习惯来选择;

SWFUpload 文件上传插件常用的配置讲解

上传文件swfUpload 插件:

基本的文件上传涉及到的四个文件  (还有一个处理数据的php文件  这里没有涉及到)

html页面:

upload_window.html

js文件:

swfupload.js

handlers.js

fileprogress.js

第一:从html页面出发:

重要的是将页面加载时间中的var setting={}这个大对象中的参数设置好  以下都是这个对象里面的常用配置 非常重要

首先需要将swfupload.swf加载

在 var  setting={} 这个大对象里面加flash_url:值

如: flash_url: "tpl$siteurl_static/tpl/assets/uc/js/swfupload.swf",

然后需要将上传的路径加入 如: upload_url: "" + uploadkey + "ck=" + ck + "cc=" + cc,(java的上传路径)

相关的设置常用的有:

file_size_limit  (设置上传的大小)    file_types(设置文件上传的类型)file_types_description(设置文件上传描述)

file_upload_limit (设置文件上传的数量限制)file_queue_limit (设置文件队列数量限制)

prevent_swf_caching : false  (在相关的swf文件增加随机参数避免Flash被缓存)

debug:false

按钮的相关配置:

button_width: "200",

button_height: "50",

button_text_left_padding: 16,

button_text_top_padding: 7,

button_cursor:  button_cursor 指定鼠标悬停在Flash按钮上时的光标样式,可用值为SWFUpload.CURSOR里定义的常量。如:button_cursor: SWFUpload.CURSOR.HAND,

button_action(设置只能上传一个文档的限制:--》button_action: SWFUpload.BUTTON_ACTION.SELECT_FILE)

之后就是设置一些事件处理函数  这些都是在  handlers.js 里面相应的函数

file_dialog_start_handler: fileDialogStart,(设置文件对话开始函数)

file_queued_handler: fileQueued,(设置文件队列函数)

file_dialog_complete_handler: fileDialogComplete,(设置文件对话完成处理函数)

file_queue_error_handler: fileQueueError,(设置队列错误处理函数)

upload_start_handler: uploadStart,(设置开始上传函数)

upload_progress_handler: uploadProgress,(设置上传进度处理函数)

upload_error_handler: uploadError,(设置上传错误处理函数)

upload_complete_handler: uploadComplete,(设置上传完成处理函数)

upload_success_handler: uploadSuccess(设置上传成功处理函数)

以上的配置都是在页面自动加载函数的setting大对象里面需要配置的基本参数

除了以上这些还有下面相应的非常关键的配置

别忘记:在setting大对象结束之后 在自动加载函数结束之前还有swfu = new SWFUpload(settings);  实例化一个对象

var setting还有比较重要的配置  如下:

1.关于上传进度的配置是关键:

在var setting={}这个大对象里面设置一个元素:

custom_settings: {

                    progressTarget: "fsUploadProgress"

 },

progressTarget的值(即fsUploadProgress)是文件上传进度的显示 将html里面设置相应的位置放id="fsUploadProgress"

如:div class="progressbar progressbar-0" id="fsUploadProgress"

            span class="prog-num"0/span

        /div

span标签里的0就是从0开始进行上传  0就是初始的显示进度

2:关于上传的按钮设置 

在 var setting={} 这个大对象里面设置  button_placeholder_id : "spanButtonPlaceHolder"

需要将html相应的上传按钮加上相应的id="spanButtonPlaceHolder"

如:div id="upload_doc" class="up-btn"i 上传文档/ispan id="spanButtonPlaceHolder"/span/div

成功上传需要将相应的数据进行处理:

在html页面中需要写ajax进行数据的处理~

如:

//成功后调用

function agree_upload(){

            var doc_id=$('.doc_title').attr('id');

            if(doc_id0){

                uploadFinish(doc_id);

                parent.DOC88Window.close();

            }else{

                alert('您还未选择重新上传的文档');

            }

        }

        function uploadFinish(new_p_id) {

            var old_p_id = "tpl$p_id/tpl";

            $.ajax({

                url: "/ucr/doc.php?act=save_upload",

                type: "post",

                data: {

                    old_p_id: old_p_id,

                    new_p_id: new_p_id

                },

                dataType: "json",

                success: function (msg) {

                    if (msg.result == 1) {

                        alert("数据正确");

                    } else {

                        alert("数据错误");

                    }

                }

            });

        }

第二:因为html页面中setting配置中有相应的函数处理配置  涉及到handler.js函数,所以接下来到handler.js文件的处理配置

根据html页面的配置 处理函数的顺序进行相应的配置

首先是fileQueue函数  文件排队函数:

需要设置一个变量 关于flash动画的函数

var stats = swfu.getStats();

根据需要将文件上传队列数量进行限制

if (stats.files_queued 1) {

            alert("您的附件不能超过1个");

                    return false;

    }

接下来是fileQueueError函数  文件排队错误函数:

根据需要将相应的设置放在这个函数里面

可以放在try catch函数里面    设置的限制如下:

      switch (errorCode) {

            case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:

                alert('单个文件大小不要超过50MB');

                break;

            case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:

                alert('不能上传空文件');

                this.debug("Error Code: Zero byte file, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);

                break;

            case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:

                alert('文件类型错误');

                break;

            default:

                if (file !== null) {

                }

                this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);

                break;

        }

接下来是uploadStart函数  文件上传开始函数:

设置相应的功能按钮的变换  比如上传开始(走到这个函数时 可以将相应的上传按钮改成上传中 并且禁止点击 就是禁用功能 加上一个取消上传按钮 )

可以将上传的文件的名称和文件格式显示出来 

如:

$("#upload_doc i").html("上传中");

    $('#cancel_upload').html('取消');

$("#upload_doc").attr('disabled','disabled');

var name = file.name;

                $('.doc_title').html(name);

        var format = file.type;

        format = format.toLocaleUpperCase();

        format = format.replace('.', '');

        $('.doc_format').html(format); 

接下来是uploadProgress函数  文件上传进度函数:如:

var percent = Math.ceil((bytesLoaded / bytesTotal) * 100);//上传的进度

        var progress = new FileProgress(file, this.customSettings.progressTarget);

        progress.setProgress(percent);

        progress.setStatus("正在上传");

接下来是uploadSuccess函数  文件上传成功函数

然后是uploadError函数  上传失败函数:

其他相关的函数可以根据需要进行设置

第三:fileprogress.js文件  关于文件上传进度  关键的是:

FileProgress函数的设置:

如:

function FileProgress(file, targetID) {

        this.fileProgressID = file.id;

        this.fileProgressWrapper = document.getElementById(this.fileProgressID);

        if (!this.fileProgressWrapper) {

                  this.fileProgressWrapper = document.createElement("li");

                  this.fileProgressWrapper.id = this.fileProgressID;

                  document.getElementById(targetID).appendChild(this.fileProgressWrapper);

        }

      this.setTimer(null);

}

FileProgress.prototype.setProgress = function (percentage) {}  里面进度样式的处理

如:

if (percentage = 5) {

                $(".progressbar").addClass('progressbar-5');

    } else if (percentage = 10) {

                $(".progressbar").addClass('progressbar-10');

    }......

第四:swfupload.js文件    几乎不用修改 可以将不用的函数删减

有很详细的讲解 链接:

php中上传文件的方法有多少种

一、传统的php写的上传类。

写一个php的上传类,这个方法用到的知识全部是php的,而且技术的难点也不多。

form method="post" action="upload.php" enctype="multipart/form-data"

table border=0 cellspacing=0 cellpadding=0 align=center width="100%"

input type="hidden" name="MAX_FILE_SIZE" value="2000000"//隐藏域。这里name必须设置成MAX_FILE_SIZE,其值就是上传文件的最大长度,单位是B,这里我限制成2M

input name="file" type="file" value="浏览"

input type="submit" value="上传" name="B1"

/table

/form

服务端利用php的$_FILES['file']['name']来获取文件后缀名,具体的代码自己查找资料看看,这里就不多说了。

总结;这个方法可以用来上传小于2M的文件或者是图片,基本的功能可以实现。

二、利用uploadify插件

这个是利用jQuery的上传插件,上传可以带进度条,容易配置。

总结:可以上传一些大文件,和图片,而且带进度条,可以多文件上传,在WEB中会经常用。

三、利用百度的webupload

WebUploader 是由 Baidu FEX 团队开发的一款以 HTML5 为主,FLASH 为辅的现代文件上传组件。在现代的浏览器里面能充分发挥 HTML5 的优势,同时又不摒弃主流IE浏览器,沿用原来的 FLASH 运行时,兼容 IE6+,iOS 6+, Android 4+。采用大文件分片并发上传,极大的提高了文件上传效率。

四、swfupload的插件

这是一个jquery的上传插件,功能也非常强大,开发也比较容易,网上有很多的资料,可以自行查找。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。