正在学习ASP.net,书上有一个关于POST传递数据的例子,原样输入后不能正常运行,请指教:
Request_Form.htm源码如下:
<html>
<head>
<title>无标题文档< title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<form name="form1" method="post" action="Request_Form.aspx">
<input name="nickname" type="text" id="nickname">
<BR>
<input type="submit" name="Submit" value="发送">
</form>
</body>
</html>Request_Form.aspx源码如下:
<%@ Page Language="C#" %>
<html>
<head>
<title>无标题文档</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<%
string nickname=Request.Form["nickname"];
Response.Write("输入了: "+nickname);
%>
</body>
</html>运行Request_Form.htm,在文本框中输入中文提交后,总是不能正确显示传递值。
如输入"1234ABCD张三李四",显示结果只有"1234ABCD",中文不能正确传递,请指教,不胜感激!
Request_Form.htm源码如下:
<html>
<head>
<title>无标题文档< title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<form name="form1" method="post" action="Request_Form.aspx">
<input name="nickname" type="text" id="nickname">
<BR>
<input type="submit" name="Submit" value="发送">
</form>
</body>
</html>Request_Form.aspx源码如下:
<%@ Page Language="C#" %>
<html>
<head>
<title>无标题文档</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<%
string nickname=Request.Form["nickname"];
Response.Write("输入了: "+nickname);
%>
</body>
</html>运行Request_Form.htm,在文本框中输入中文提交后,总是不能正确显示传递值。
如输入"1234ABCD张三李四",显示结果只有"1234ABCD",中文不能正确传递,请指教,不胜感激!
里
<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" />
全改 gb2312 看看
utf-8 通用性能比较好
而且可以 多国语言 混合显示
不过就是中文 占用 3 字节
<configuration>
<appSettings>
<add key="MM_CONNECTION_HANDLER_datalink" value="default_oledb.htm" />
<add key="MM_CONNECTION_STRING_datalink" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\www\myring\data\test.mdb" />
<add key="MM_CONNECTION_DATABASETYPE_datalink" value="OleDb" />
<add key="MM_CONNECTION_SCHEMA_datalink" value="" />
<add key="MM_CONNECTION_CATALOG_datalink" value="" />
</appSettings>
</configuration>在</appsettings>标签的前面加入
<globalization fileEncoding="gb2312" requestEncoding="gb2312" responseEncoding="gb2312" />
后,运行程序,仍然是同样的问题。请指教,谢谢!
这样运行没有问题!!
Request_Form.htm:
....
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
....
改为<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
在web.config文件中加入以下内容:
<system.web>
<globalization
fileEncoding="gb2312"
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
</system.web>谢谢FlashElf(銘龘鶽)
好象是escape