zoukankan      html  css  js  c++  java
  • asp.net文件上传需要注意的问题

    以下是使用html控件<input type="file">上传文件时遇到的一些问题总结,方便大家查阅:
    1. 如果直接用<input type="file"...></input>html客户端控件选择文件,必须要在<input type="file">控件中加入name属性,否则服务端无法获取控件值(即文件)
    2. asp.net默认设置对上传文件有大小限制,最大4M,注意上传时文件是否超过限制,超过限制后除了上传不成功没有任何提示;解决方法是:可以在web.config文件中加入配置项扩大最大上传附件大小(maxRequestLength以 KB 为单位,executionTimeout以秒为单位)

    <configuration>
      
    <system.web>
        
    <httpRuntime
          
    maxRequestLength="1048576"
          executionTimeout
    ="3600"
          
    />
      
    </system.web>
    </configuration>

    3. 注意form中需要加入method="post" enctype="multipart/form-data"属性,否则无法上传成功
    4. 由于<input type=file>控件有安全限制,如果使用别的控件事件触发file控件的click事件,在提交时浏览器首先会清空file控件的值,第二次点击才会提交,导致“两次点击提交按钮问题”

    提示:

    好多门户网站在发送邮件或上传文件时,会使用其“自定义”的上传控件,其实这个方法是采用“造假”的方式实现的,实际上用的还是<input type="file">控件,简单来说页面是在页面上使用一个像按钮一样的图片,前面放一个file控件并将它的透明度设置为0,这样用户点击“上传文件”的图片按钮,实际是设置file控件的值,然后file控件的onchange事件会把文件名称放入该页面的“自定义上传控件中”。感兴趣的可以在网上搜索一下具体实现方法。

  • 相关阅读:
    灾难 BZOJ 2815
    消耗战 BZOJ 2286
    征途 BZOJ 4518
    纸箱堆叠 BZOJ 2253
    Gate Of Babylon BZOJ 1272
    std::string::npos mean
    [转]整理索引碎片,提升SQL Server速度
    笔记本win7制作wifi
    关闭linux下的使用的端口
    linux多线程
  • 原文地址:https://www.cnblogs.com/andy65007/p/1626083.html
Copyright © 2011-2022 走看看