前台:

HTML的代码:(关键是要在form里设置enctype="multipart/form-data",这样才能在提交表单时,将文件以二进制流的形式传输到服务器)

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>无标题页</title>
</head>
<body>
<form id="Form1" action="/json/ajax/WinLog.aspx" method="post" enctype="multipart/form-data">
<div style="text-align: center">
填写用户信息
<hr style="size: 50%" />
</div>
<div style="text-align: left">
用户名:<input name="user_name" type="text" /><br />
密码:
<input name="Password1" type="password" /><br />
确认密码:<input name="Password2" type="password" /><br />
性别:<input name="女" type="radio" value="女" />女<input id="Radio1" type="radio" value="男"
name="sex" />男<br />
上传照片:<input id="File1" type="file" name="picture" /><br />
<br />
<input type="submit" value="提交" />
<input type="reset" value="重置" /></div>
</form>
</body>
</html>

后台:

namespace benz_CSI.json.ajax
{
public partial class WinLog : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("利用 Response对象获取客户端数据");
Response.Write("<hr/>");
string[] names = Request.Form.AllKeys;//定义name保存表单中的所有键即元素名称
for (int i = 0; i < names.Length; i++)
{
string[] values = Request.Form.GetValues(i);//定义values保存表单中所有键的键值
for (int j = 0; j < values.Length; j++)
Response.Write(names[i] + "=" + values[j] + "<br/>");
}
Response.Write("<hr/>");
Response.Write(Request.Form["picture"]);
SaveFile(Request.Form["picture"]);
}

public bool SaveFile(string filePath)
{
if (Request.Files.Count >= 1)
{
HttpPostedFile postedFile = Request.Files[0];
string fileName, fileExtension;
fileName = System.IO.Path.GetFileName(postedFile.FileName); //文件名称
if (fileName != "")
{
fileExtension = System.IO.Path.GetExtension(fileName); //上传文件的扩展名
string new_filename = DateTime.Now.ToString("yyyyMMddHHmmss") + fileExtension; //给文件重新命名
string FileTemp = Page.MapPath("/json/ajax/upload/");
postedFile.SaveAs(FileTemp + new_filename);
Response.Write("文件 类 型:" + postedFile.ContentType.ToString() + "<br/>");
Response.Write("文件新名称:" + new_filename + "<br/>");
Response.Write("文件原名称:" + fileName + "<br/>");
Response.Write("文件扩展名:" + fileExtension + "<br/>");
Response.Write("文件原路径:" + postedFile.FileName + "<br/>");
Response.Write("文件新路径:" + FileTemp + new_filename + "<br/>");
}
else
{
Response.Write("false");
}
}

return true;
}

}

}

html form表单提交数据并后台获取的更多相关文章

  1. form表单提交数据给后台

    1.完整登录示例 1. form表单往后端提交数据注意三点 1.所有获取用户输入标签都应该放在form表单里面 2.action属性控制往哪儿提交,method一般都是设置成post 3.提交按钮必须 ...

  2. springboot框架中集成thymeleaf引擎,使用form表单提交数据,debug结果后台获取不到数据

    springboot框架中集成thymeleaf引擎,使用form表单提交数据,debug结果后台获取不到数据 表单html: <form class="form-horizontal ...

  3. js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题

    js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题 js模拟form表单提交数据源码: /** * js模拟form表单提交 * @param ...

  4. thinkPHP5.0使用form表单提交数据和删除文章,不用TP的提示页面,使用弹出提示信息

    form表单提交数据和删除文章时,TP的默认信息提示页面的看起来不是很好看,想要实现弹窗提示怎么做呢? 前端:可以使用前端的一个知识--iframe,iframe元素会创建包含另外一个文档的内联框架: ...

  5. form表单提交数据的数据格式

    form表单提交的数据格式默认是 enctype="application/x-www-form-urlencoded"这样将input框的数据与input框的name属性以键值对 ...

  6. Form表单提交数据的几种方式

    一.submit提交 在form标签中添加Action(提交的地址)和method(post),且有一个submit按钮(<input type='submit'>)就可以进行数据的提交, ...

  7. 获取html 中的内容 将前台的数据获取到后台 用 jquery 生成一个 form表单 提交数据

    使用js创建一个form表单 ,使用post上传到后台中 下面是代码.在获取html内容的时候使用了js节点来获取内容. parent:父节点.上一级的节点 siblings:兄弟节点.同一级别的节点 ...

  8. form表单提交数据,页面必定会刷新,ajax提交数据不会刷新,做到悄悄提交,多选删除,ajax提交实例

    很多页面用到的模态对话框,如知明网站https://dig.chouti.com/的登录页都是模态对话框, 当点登录时,是用的ajax提交,因为输入错了信息,有返回消息,而页面没有刷新. jquery ...

  9. 关于AJAX与form表单提交数据的格式

    一 form表单传输文件的格式: 只有三种: multipart/form-data 一般用于传输文件,图片文件或者其他的. 那么其中我们默认的是application/x-www-form-urle ...

随机推荐

  1. Linux常见目录作用

    Linux中一切皆文件 文件类型: 一般文件 - 目录文件 d 链接文件 l 块设备   b    (以块为单位进行操作,比如硬盘) 字符设备 c  (以字符为单位进行操作,比如主存) socket  ...

  2. 小谈@override

    @override是jdk1.5增加的注解,主要是用来声明子类的某方法覆盖了父类的某方法.非常简单的注解,但是有个小问题: 项目最开始使用的是jdk1.6,mvc模式:接口 ----> 实现类. ...

  3. Haproxy+PXC实现负载均衡

    软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第 三方应用的软负载实现.LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载.HA ...

  4. mysql用root用户启动后其他用户无法启动不问题

    问题描述:用root账户启动mysql后,在用mysql用户或其他非root账户启动不了mysql问题解决:通过看mysql的err日志,发现 Failed to open log (robert-b ...

  5. mysql 命令

    1.查看数据库: mysql> show databases; 2.使用数据库 mysql> use mysqldata; 3.查看数据表 mysql> show tables; 4 ...

  6. Spring配置扫描mybatis的mapper文件注意:

    一般会将不业务的mapper文件放到不同的包中: spring配置扫描就需要配置下面的方式(两个*): <!-- mybatis文件配置,扫描所有mapper文件 --> <bean ...

  7. SecureCRT使用的技巧 键盘修改

    secureCRT 修改PageUP,PageDown,Home,End键小trick:http://blog.csdn.net/shark_sq/article/details/6722512 所有 ...

  8. ORACLE 绑定变量用法总结 .

    之前对ORACLE中的变量一直没个太清楚的认识,比如说使用:.&.&&.DEIFINE.VARIABLE……等等.今天正好闲下来,上网搜了搜相关的文章,汇总了一下,贴在这里,方 ...

  9. python socket 编程之一:编写socket的基本步骤

    一.socket 编写server的步骤: 1.第一步是创建socket对象.调用socket构造函数.如: socket = socket.socket( family, type ) family ...

  10. FPGA的LE数与门数的关系(转)

    一般而言FPGA等效门数的计算方法有两种 一是把FPGA基本单元(如LUT+FF,ESB/BRAM)和实现相同功能的标准门阵列比较,门阵列中包含的门数即为该FPGA基本单元的等效门数,然后乘以基本单元 ...