码迷,mamicode.com
首页 > Web开发 > 详细

文件上传

时间:2018-01-14 22:40:32      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:绝对路径   pru   write   filename   log   文件   破解   otto   col   

文件上传:

1、防止文件重名:

string path = "Upload/" + DateTime.Now.ToString("yyyyMMddssmmssms") + Session["UserName"] + FileUpload1.FileName;
//防止文件重名,

2、设置文件的绝对路径:

string endpath = Server.MapPath(path);

3、上传:

FileUpload1.SaveAs(endpath);

 4、限制上传的文件格式:

string[] ns = FileUpload1.FileName.Split(.);
//以‘.‘截取字符串;
if(ns[ns.Length-1]==.aspx||ns[ns.Length-1]==.dll)
{
    Resposen.Write("<script>alert(‘不允许上传的文件类型!!‘)</ script>");
    return;
}
//判断最后一个‘.‘截取的字符串是否是代码文件等文件类型,如果是就return住;

5、限制最好写在后台,如果写在JS,容易被破解;

6、文件上传的大小,扩容:

//文件上传的大小默认4096单位是KB
//在web.config的system.web标签下:
<httpRuntime maxRequsetLength="4096" />
//可以输任意大小,最大不能超过int32的大小,单位KB

7、限制可以看到的文件类型(防君子,不防小人):

//在FileUpload控价下添加accept属性
<asp:FileUpload ID="FileUpload1" accept=".txt,.png,.jpg,等等..." runat="server" />

8、验证文件大小:

在C#后台可以验证,但是文件依然会上传,超出文件大小依然报错,这样就需要用JS验证
C#:
int a = FileUpload1.PostFide.ContentLength; 
//这个获取的是上传的文件的大小,默认单位b;
JS:
document.getElementById(Botton1).click=function(){
    if(document.getElementBtId(FileUpload1).Files[0].size>1024*1024*5)
    {
        alert(上传的文件过大);
        return false;
    }

}

 

文件上传

标签:绝对路径   pru   write   filename   log   文件   破解   otto   col   

原文地址:https://www.cnblogs.com/xinchenhui/p/8284275.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!