c# asp.net 获取客户端表单的数据

web程序中,经常会使用在一个网页使用其他网页提交的数据信息,这里可以使用Request内置对象来完成,来获取用户提交的信息,根据客户端提交数据方式的不同,Request对象分别使用Form和QueryString集合属性来获取数据。下面是两种集合获取方式的不同点:通过Form获取数据时在form属性中简单的添加action=“跳转的网页地址”,<form. ID="id号 " runat=“sever” action=“要跳转的网页URL”> </form>,该传参方式是隐式的,不容易暴露;另一种方式是通过get方法提交表单数据,或页面导向通过“URL?Parameter=Value”格式传递参数值时,即使用Request对象QueryString属性获取传递过来的信息,这个传参方式一般不建议使用,因在URL之后,所以容易在浏览器暴露参数,容易遭受黑客的攻击,再者是URL的字节数有限,即传递的参数有限,所以不建议使用QueryString。

这里需要建立两个web程序页,第一个Default.aspx页中运用各种控件,第二个是在get-form.aspx的后台代码中在页面加载的时候获得Default.aspx页中,用户提交的信息数据。
Default.aspx的html代码:
01<PREclass=brush:csharp><%@ Page Language="C#"AutoEventWireup="true"CodeBehind="Default.aspx.cs"Inherits="form._Default"%>
02  
03<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
04  
05<html xmlns="http://www.w3.org/1999/xhtml">
06<head runat="server">
07    <title>无标题页</title>
08</head>
09<body>
10    <form. id="Form1"action="get_form.aspx"method="post">
11    <div style="text-align:center">
12    填写用户信息
13    <hr  style="size:50%"/>
14    </div>
15    <div style="text-align:left">
16    用户名:<input name="user_name"type="text"/><br />
17    密码:  
18        <input name="Password1"type="password"/><br />
19    确认密码:<input name="Password2"type="password"/><br />
20        性别:<input name="女"type="radio"value="女" />女<input id="Radio1"type="radio"value="男"name="sex"/>男<br />
21        上传照片:<input id="File1"type="file" name="picture"/><br />
22          
23        <br />
24           
25        <input  type="submit"value="提交"/>       
26        <input type="reset"value="重置"/></div>
27    </form>
28</body>
29</html>
30</PRE>
31<BR>
32<P>get-form.aspx  c#代码:</P>
33<PREclass=brush:csharp>usingSystem;
34usingSystem.Collections;
35usingSystem.Configuration;
36usingSystem.Data;
37usingSystem.Linq;
38usingSystem.Web;
39usingSystem.Web.Security;
40usingSystem.Web.UI;
41usingSystem.Web.UI.HtmlControls;
42usingSystem.Web.UI.WebControls;
43usingSystem.Web.UI.WebControls.WebParts;
44usingSystem.Xml.Linq;
45  
46namespaceform.
47{
48    publicpartialclassget_form. System.Web.UI.Page
49    {
50        protectedvoidPage_Load(objectsender, EventArgs e)
51        {
52            Response.Write("利用 Response对象获取客户端数据");
53            Response.Write("<hr/>");
54            string[] names = Request.Form.AllKeys;//定义name保存表单中的所有键即元素名称
55            for(inti = 0; i < names.Length; i++)
56            {
57                string[] values = Request.Form.GetValues(i);//定义values保存表单中所有键的键值
58                for(intj = 0; j < values.Length; j++)
59                    Response.Write(names[i]+"="+values[j]+"<br/>");
60            }//通过循环表单中的键和键值,用 Response.Write输出
61        }
62    }
63}
64</PRE>
65<BR>原始效果图:
填完信息提交后:
用form属性将用户的信息数据提交给另一个网页,可以很好的避免一些问题,并且可以再另外的网页中通过循环把信息输出,不涉及控件中的id号,感觉比较好用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值