您的位置:首页 > 理论基础 > 计算机网络

web大文件上传控件-jsp-oracle-bug修复-Xproer.HttpUploader6

2016-08-18 15:09 453 查看
说明:

修复删除文件夹逻辑错误的问题

 

1.更新up6.js

更新前:





更新后:





代码:

        , "RemoveFolder": function (fileSvr)

        {

            var ref = this;

            var idSvr = fileSvr.idSvr;

            var ui = this.filesUiMap[idSvr];

 

            $.ajax({

                type: "GET"

                   , dataType: 'jsonp'

                   , jsonp: "callback" //自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名

                   , url: this.Config["UrlFdDel"]

                   , data: { uid: fileSvr.uid, fid: fileSvr.idSvr,fd_id:fileSvr.fdID, time: new Date().getTime() }

                  , success:function (msg){if (msg == 1){ui.empty();}}

                  , error: function () { alert("发送删除文件信息失败!"); }

                  , complete: function (req, sta) { req = null; }

            });

        }

 

2.更新fd_del.jsp

更新前:





更新后:





 

更新后的代码:

<%@ page language="java" import="up6.*" pageEncoding="UTF-8"%><%@

     page contentType="text/html;charset=UTF-8"%><%@

     page import="org.apache.commons.lang.StringUtils" %><%

/*

     此页面主要用来执行删除文件夹逻辑。

     只修改数据库中文件夹状态。

     更新记录:

         2014-07-24 创建

*/

String path = request.getContextPath();

 

String fid         = request.getParameter("fid");

String fd_id = request.getParameter("fd_id");

String uid         = request.getParameter("uid");

String callback = request.getParameter("callback");//jsonp

int ret = 0;

 

//参数为空

if ( !StringUtils.isBlank(fid)

     &&   !StringUtils.isBlank(fd_id)

     ||   uid.length()>0 )

{

     DBFolder.Remove(Integer.parseInt(fid),Integer.parseInt(fd_id), Integer.parseInt(uid));

     ret = 1;

}

out.write(callback + "{(\"value\":"+ret+")}");

%>

 

3.更新DBFolder.java

更新前:





更新后:





更新代码:

删除文件夹时仅更新文件标识,文件夹标识,同时更新所有子文件标识。

     static public void Remove(int id_file,int id_folder,int uid)

     {

         StringBuilder sb = new StringBuilder();

         sb.append("begin ");

         sb.append("update up6_files set f_deleted=1 where f_idSvr=? and f_uid=?;");//更新文件表

         sb.append("update up6_files set f_deleted=1 where f_pidRoot=? and f_uid=?;");//更新子文件

         sb.append("update up6_folders set fd_delete=1 where fd_id=? and fd_uid=?;");//更新文件夹

         sb.append(" end;");        

         DbHelper db = new DbHelper();

         PreparedStatement cmd = db.GetCommand(sb.toString());

         try

         {

              cmd.setInt(1, id_file);

              cmd.setInt(2, uid);

              cmd.setInt(3, id_folder);

              cmd.setInt(4, uid);

              cmd.setInt(5, id_folder);

              cmd.setInt(6, uid);

         } catch (SQLException e) {

              // TODO Auto-generated catch block

              e.printStackTrace();

         }

         db.ExecuteNonQuery(cmd);

     }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: