|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在实现ERP等高端的ASP应用时,用户需要提供核心的经营资料,需要ASP商有很高的信用度。楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。复杂的ASP无组件上传类,收回来让人人看看。能够做做实行!
以下为援用的内容:
<%@language="javascript"%>
<%
varself=Request.serverVariables("SCRIPT_NAME");
if(Request.serverVariables("REQUEST_METHOD")=="POST")
{
varoo=newuploadFile();
oo.path="myFile";//寄存路径,为空暗示以后路径,默许为uploadFile
oo.named="file";//定名体例,date暗示用日期来定名,file暗示用文件名自己,默许为file
oo.ext="all";//同意上传的扩大名,all暗示都同意,默许为all
oo.over=true;//当存在不异文件名时是不是掩盖,默许为false
oo.size=1*1024*1024;//最年夜字节数限定,默许为1G
oo.upload();
Response.write(<scripttype="text/javascript">location.replace("+self+")</script>);
}
//ASP无组件上传类
functionuploadFile()
{
varbLen=Request.totalBytes;
varbText=Request.binaryRead(bLen);
varoo=Server.createObject("ADODB.Stream");
oo.mode=3;
this.path="uploadFile";
this.named="file";
this.ext="all";
this.over=false;
this.size=1*1024*1024*1024;//1GB
//文件上传
this.upload=function()
{
varo=this.getInfo();
if(o.size>this.size)
{
alert("文件过年夜,不克不及上传!");
return;
}
varf=this.getFileName();
varext=f.replace(/^.+./,"");
if(this.ext!="all"&&!newRegExp(this.ext.replace(/,/g,"|"),"ig").test(ext))
{
alert("今朝暂不撑持扩大名为"+ext+"的文件上传!");
return;
}
if(this.named=="date")
{
f=newDate().toLocaleString().replace(/D/g,"")+"."+ext;
}
oo.open();
oo.type=1;
oo.write(o.bin);
this.path=this.path.replace(/[^/]$/,"$&/");
varfso=Server.createObject("Scripting.FileSystemObject");
if(this.path!=""&&!fso.folderExists(Server.mapPath(this.path)))
{
fso.createFolder(Server.mapPath(this.path));
}
try
{
oo.saveToFile(Server.mapPath(this.path+f),this.over?2:1);
alert("上传乐成!");
}
catch(e)
{
alert("对不起,此文件已存在!");
}
oo.close();
delete(oo);
}
//猎取二进制和文件字节数
this.getInfo=function()
{
oo.open();
oo.type=1;
oo.write(bText);
oo.position=0;
oo.type=2;
oo.charset="unicode";
vargbCode=escape(oo.readText()).replace(/%u(..)(..)/g,"%$2%$1");
varsPos=gbCode.indexOf("%0D%0A%0D%0A")+12;
varsLength=bLen-(gbCode.substring(0,gbCode.indexOf("%0D%0A")).length/3)-sPos/3-6;
oo.close();
oo.open();
oo.type=1;
oo.write(bText);
oo.position=sPos/3;
varbFile=oo.read(sLength);
oo.close();
return{bin:bFile,size:sLength};
}
//猎取文件名
this.getFileName=function()
{
oo.open();
oo.type=2;
oo.writeText(bText);
oo.position=0;
oo.charset="gb2312";
varfileName=oo.readText().match(/filename="(.+?)"/i)[1].split("").slice(-1)[0];
oo.close();
returnfileName;
}
functionalert(msg)
{
Response.write(<scripttype="text/javascript">alert("+msg+");</script>);
}
}
%>
<html>
<head>
<title>ASP无组件上传类</title>
<metahttp-equiv="content-Type"content="text/html;charset=gb2312">
</head>
<body>
<formaction="<%=self%>"method="post"enctype="multipart/form-data"onSubmit="return(this.upFile.value!=);">
<inputtype="file"name="upFile"/>
<inputtype="submit"value="上传文件"/>
</form>
</body>
</html>
asp对于服务器的要求较高,一般的服务器如果访问量一大就垮了,不得不重启。 |
|