在线演示http://www.oapro." />
  • ASP教程
  • PHP教程 JSP教程 CGI教程 XML教程 ASP.NET教程 JAVA教程
    当前位置:教程 > 程序设计 > ASP教程 > 正文

    在线编辑公文并保存到后台数据库

    编辑:教程网 来源:网络 时间:2011年06月23日 15:44
    在线编辑公文并保存到后台数据库
    --------------------------------------------------------------------------------
    http://www.standsoft.com (2004.1.14) 文章来源:智岛软件

    按此在新窗口浏览图片

    在线演示http://www.oapro.com/ostarocx/sample/savefilepro/default.ASP
    源代码http://www.oapro.com/ostarocx/download/OStarOCX_savefile.rar

    概述
    本文讲解了一个使用办公之星控件实现在线编辑文件并保存到后台数据库的例子,使用该方法没有选择文件步骤,可以在WEB环境下实现类似单机环境下点击保存文件的效果。

    引言

    为了在HTML网页中获得上传功能,在客户端我们可以使用如下格式的FORM:



    这种方案在客户端和服务器端的使用都有很多限制。首先,我们必须使用POST方法,因为GET方法无法处理这样的表单数据。并且,没有什么方法可以在不使用表单的情况下引发一个POST动作。把数据发送给表单处理程序后,浏览器将会把处理程序作为新页面加载,然后使用者会看到一个不讨人喜欢的页面转换过程。

    办公之星控件中的上传方案

    需要按照如下步骤操作:

    客户端:

    将办公之星控件所编辑的文档保存至本地
    利用HTTP协议将保存的临时文档发送给Web服务器

    服务器端:

    从Request对象中读出上传的二进制文档
    读出二进制数据并且存储到数据库的BLOB型字段中。

    利用办公之星控件可以在WEB环境下实现和word功能相当的图文混排以及字处理功能,但如何将所编辑的文档保存至服务器端?上述的方案似乎没有什么新东西。按照前言中的说明,file控件的value值为只读,一定存在选择文档在手动点击上传按钮的过程。是这样吗?先介绍二个办公之星控件接口方法:

    1. SaveToTempFile(str filename)

    将当前用办公之星控件编辑的文档保存至本地形成一个临时文件,参数filename为临时文件的文件名称。该方法会返回一个参数,这个参数表示临时文件的绝对路径。示例: SaveToTempFile("abc.ost")

    2. UpLoadFile(str filepath,str operatorfile)

    将本地指定文件上传至服务器端,参数filepath为本地待上传文件的绝对路径,operatorfile为服务器端用来接收上传文件流的文件名称。该方法会返回一个参数,提示操作过程中是否成功。示例:UpLoadFile("c:\abc.ost","http://www.oapro.com/save.asp")

    看到这里,相信您已经明白了,办公之星控件已提供接口方法,将指定文件自动上传。下面给出客户端完整的代码:



    上述页面中OStar为办公之星控件在页面中的操作对象名称。以下代码为服务器端如何处理上传文件并保存至数据库:

    <%
    ' 定义变量和对象
    dim sql
    dim rs
    dim UpFile
    dim conn
    dim connstr
    dim db

    '保存上传文件的数据库名称
    db="db.mdb"

    '取得上传的二进制数据
    UpFile=Request.BinaryRead(Request.TotalBytes)

    '建立数据库连接
    Set conn = Server.CreateObject("ADODB.Connection")
    connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&db&"")
    conn.Open connstr
    sql="select UpFile from OStarRepTemplate where (id is null)"
    rs.open sql,conn,1,3
    rs.addnew

    '添加上传的二进制内容入数据库
    rs("UpFile").AppendChunk UpFile
    rs.update

    ' 销毁数据库连接对象
    rs.close
    set rs=nothing
  • 原文来自 教程网 转载请注明:http://www.websmill.com/chengxu/ASP/6184.html

  • 上一篇:蛙蛙推荐:asp中的多条件组合查询实现
  • 下一篇:对asp和asp程序员的一些话。。。