aspupload文件重命名及上传进度条的解决方法附代码第1/2页

发现还没有aspupload这个组件的,这两样功能的解决方案,现把我的改进方案写在这里!谢谢 
关于aspupload上传组件,文件重命名,进度条的问题解决方案! 
共用到4个文件,分别是1.asp,2.asp,bar.asp,framebar.asp 
运行第一个文件:1.asp,执行上传操作! 


代码如下:

<%
'''进度条
dim SPid,PID,barref
Set UploadProgress = Server.CreateObject("Persits.UploadProgress")
SPid = UploadProgress.CreateProgressID()
PID = "PID=" & SPid
barref = "framebar.asp?to=10&" & PID
%>
<SCRIPT language="javascript">
<!--
function ShowProgress()
//加载进度条

  strAppVersion = navigator.appVersion;
  if (document.upfile.filename.value != "")
  {
    if (strAppVersion.indexOf('MSIE') != -1 && strAppVersion.substr(strAppVersion.indexOf('MSIE')+5,1) > 4)
    {
      winstyle = "dialogWidth=375px; dialogHeight:175px; center:yes;status:no";
      window.showModelessDialog('<% = barref %>&b=IE',window,winstyle);
    }
    else
    {
      window.open('<% = barref %>&b=NN','','width=370,height=165', true);
    }
  }
  return true;
}
function isPic(){
    var temp;
    var ExtList = ".jpg.gif.bmp.png.swf";//客户端,检测文件后缀名,省得上传完成后,才报文件类型错误!
    var filename = upfile.filename.value;
    var the_ext = filename.substr(filename.lastIndexOf(".")+1).toLowerCase();
    if (ExtList.indexOf(the_ext)==-1){
        alert("不是图片,请选择图片文件!");
        return false;
    }
    return true;
}
//-->
</SCRIPT>
  <html>
  <head></head>
  <body>
  <form method="post"enctype="multipart/form-data"action="2.asp?<% = PID %>"name="upfile"OnSubmit="return ShowProgress();"> 
  
  选择要上传的文件:<br>
  <input type=file name="filename"><br>
  <input type=submit value="上传" onclick="return isPic()">
  </form>

  </body>
  </html>

2.asp


代码如下:

<%

Set Upload = Server.CreateObject("Persits.Upload")

' Prevent overwriting 
Upload.OverwriteFiles = False

' We use memory uploads, 文件大小限制 ,单位:b
Upload.SetMaxSize 1*1024*1024*1024, true

if Request.QueryString("PID") = "" then
                Upload.ProgressID="010D60EB00C5AA4B"
        else
                Upload.ProgressID=Request.QueryString("PID")
        end if

On Error Resume Next

' Save to memory 保存到内存
Upload.Save

If Err.Number = 8 Then
   Response.Write "文件大于1G"
End If

'为使文件不重名,用系统时间+随机数,作为文件名
Dim ranNum
        randomize
        ranNum=int(999*rnd)
        CreateName=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum
NewName = CreateName
'保存文件路径
articlepath = Server.MapPath("upload1")

For Each File in Upload.Files 
        FileExt=Lcase(replace(File.ext,".",""))
                '服务器端判断文件类型,动网论坛的判断方式
                If CheckFileExt(FileExt)=false then
                        Response.write "文件格式不正确,或不能为空 [ <a href=# onclick=history.go(-1)>重新上传</a> ]"

else
   File.SaveAs articlepath & "/" & NewName & File.ext 
   Response.Write "New name: " & File.FileName & "<BR>" 
End If

Next

%> 
<%
'服务器端判断文件类型,动网论坛的判断方式
Private Function CheckFileExt(FileExt)

If FileExt="" or IsEmpty(FileExt) Then
                CheckFileExt=false
                Exit Function
        End If
        If Lcase(FileExt)="asp" or Lcase(FileExt)="asa" or Lcase(FileExt)="aspx" then
                CheckFileExt=false
                Exit Function
        End If
        If Lcase(FileExt)="gif" or Lcase(FileExt)="jpg" or Lcase(FileExt)="png" or Lcase(FileExt)="swf" or Lcase(FileExt)="bmp" then
                CheckFileExt=true
                Exit Function
        Else
                CheckFileExt=false
        End If
End Function
%>

当前1/2页 12下一页阅读全文

(0)

相关推荐

  • 利用ASPUPLOAD,ASPJPEG实现图片上传自动生成缩略图及加上水印

    今天在站长站看到一网友写的相册程序,功能挺简单的,看到他用了ASPJPEG生成缩略图,不由想起再用上ASPUPLOAD上传,于是花了一个小时时间完善了他的代码. 以下代码均加有简单的注释,如果你看不懂,请先看ASPJPEG以及ASPUPLOAD的说明文档(E文,希望有心理准备),看不懂的可以问我. 以下是代码: 复制代码 代码如下: <%  if session("admin")<>"on" then  Response.Redirect"

  • aspupload 3.0 下载与使用集锦

    打包下载(该版本为破解版仅用于学习,请不要用与商业用途,解压密码请到论坛索取) AspUpload 是一款功能强大的动态服务器上传组件!安装此程序,可以让你通过ASP程序上传各种文档! AspUpload 能够实现以下功能: 1.限制上载文件的大小 2.设置用户的权限 3.修改文件属性 4.同时上载多个文件 5.能够将文件保存到数据库中 今天要安装aspupload 3.0这个组件,默认安装到的路径是C:\Program Files\Persits Software\AspUpload\Bin\

  • aspupload文件重命名及上传进度条的解决方法附代码第1/2页

    发现还没有aspupload这个组件的,这两样功能的解决方案,现把我的改进方案写在这里!谢谢  关于aspupload上传组件,文件重命名,进度条的问题解决方案!  共用到4个文件,分别是1.asp,2.asp,bar.asp,framebar.asp  运行第一个文件:1.asp,执行上传操作!  复制代码 代码如下: <% '''进度条 dim SPid,PID,barref Set UploadProgress = Server.CreateObject("Persits.Uploa

  • php使用APC实现实时上传进度条功能

    php不具备实时上传进度条功能,如果想有这种功能我们一般会使用ajax来实现,但是php提供了一个apc,它就可以与php配置实现上传进度条功能. 主要针对的是window上的应用. 1.服务器要支持apc扩展,没有此扩展的话,下载一个扩展扩展要求php.5.2以上. 2.配置apc相关配置,重启apache 代码如下 extension=php_apc.dll   apc.rfc1867 = on   apc.max_file_size = 1000M   upload_max_filesiz

  • PHP利用APC模块实现文件上传进度条的方法

    本文实例讲述了PHP利用APC模块实现文件上传进度条的方法.分享给大家供大家参考.具体分析如下: 以前的php5.2之前的版本是不能可使用APC模块的,因为之前的压根就没有这个APC模块,如果想使用APC模块实现上传进度条我们必须是php5.2或更高版本. 从5.2开始APC加入了一个叫APC_UPLOAD_PROGRESS的东东,解决了困扰大家已久的进度条问题.并且它把原来的上传时把临时文件全部缓存到内存改成了当临时文件达到设定值时就自动保存到硬盘,有效地改善了内存利用状况. 它的作用原理是在

  • 基于jquery ajax的多文件上传进度条过程解析

    这篇文章主要介绍了基于jquery ajax的多文件上传进度条过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 效果图 前端代码,基于jquery <!DOCTYPE html> <html> <head> <title>主页</title> <meta name="viewport" content="width=device-width,initia

  • HTML5 Ajax文件上传进度条如何显示

    原本打算使用jquery插件进行异步文件上传,比如uploadfy但是需要额外的支持,也有人用iframe模仿异步上传机制,感觉都比较别扭.因为项目不考虑低版本浏览器,所以决定用html5实现.下面只是一个简单的demo,具体样式需要自己去做. 后台基于strut2进行文件处理,具体因项目而定.只是要注意设置文件大小的限制.  <constant name="struts.multipart.maxSize" value="52428800"/>这个配置

  • js HTML5 Ajax实现文件上传进度条功能

    本文实例介绍了js结合HTML5 Ajax实现文件上传进度条功能,分享给大家供大家参考,具体内容如下 1.  lib.js var Host = window.location.host; //--Cookie function setCookie(name,value) { var Days = 30; var exp = new Date(); exp.setTime(exp.getTime() + Days*24*60*60*1000); document.cookie = name +

  • PHP中使用Session配合Javascript实现文件上传进度条功能

    Web应用中常需要提供文件上传的功能.典型的场景包括用户头像上传.相册图片上传等.当需要上传的文件比较大的时候,提供一个显示上传进度的进度条就很有必要了. 在PHP 5.4以前,实现这样的进度条并不容易,主要有三种方法: 1.使用Flash, Java, ActiveX 2.使用PHP的APC扩展 3.使用HTML5的File API 第一种方法依赖第三方的浏览器插件,通用性不足,且易带来安全隐患.不过由于Flash的使用比较广泛,因此还是有很多网站使用Flash作为解决方案. 第二种方法的不足

  • jQuery实现简单的文件上传进度条效果

    本文实例讲述了jQuery实现文件上传进度条效果的代码.分享给大家供大家参考.具体如下: 运行效果截图如下: 具体代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>upload</title> <link rel="stylesheet" type="text/css" href=&quo

  • jQuery实现文件上传进度条特效

    上传进度条通常是由前面jquery加后端了脚本器脚本来实现了,今天我们介绍的是一款基本php+jQuery实现文件上传进度条效果的例子,具体细节如下. 最近呢,一个项目做一个进度条的效果出来,这个之前还真没做过.刚好这周没什么东西了,就拿这个来充一下数吧. 文件上传,得先准备一个"按钮": 这个看上去还是不错的吧,实现也是很简单的: <span class="upload-span">开始上传文件</span> <button>太

  • PHP 文件上传进度条的两种实现方法的代码

    目前我知道的方法有两种,一种是使用PHP的创始人 Rasmus Lerdorf 写的APC扩展模块来实现(http://pecl.php.net/package/apc),另外一种方法是使用PECL扩展模块 uploadprogress实现(http://pecl.php.net/package/uploadprogress)我这里举两个分别实现的例子供参考,更灵活的应用根据自己需要来修改. APC实现方法: 安装APC,参照官方文档安装,可以使用PECL模块安装方法快速简捷,这里不说明 配置p

随机推荐