try在web.config里加一句:
<globalization fileEncoding="gb2312" requestEncoding="gb2312" responseEncoding="gb2312" />
因为 asp 默认中文编码是gb 而aspx是unicode
<globalization fileEncoding="gb2312" requestEncoding="gb2312" responseEncoding="gb2312" />
因为 asp 默认中文编码是gb 而aspx是unicode
或者 <META charset=gb2312"> 也不错。
高手快说呀!
<configuration>
<system.web> <!-- 动态调试编译
设置 compilation debug="true" 以启用 ASPX 调试。否则,将此值设置为
false 将提高此应用程序的运行时性能。
设置 compilation debug="true" 以将调试符号(.pdb 信息)
插入到编译页中。因为这将创建执行起来
较慢的大文件,所以应该只在调试时将该值设置为 true,而在所有其他时候都设置为
false。有关更多信息,请参考有关
调试 ASP.NET 文件的文档。
-->
<compilation
defaultLanguage="c#"
debug="false"
/> <!-- 自定义错误信息
设置 customError 模式值可以控制应向
用户显示用户友好错误信息而不是错误详细信息(包括堆栈跟踪信息): “On”始终显示自定义(友好的)信息
“Off”始终显示详细的 ASP.NET 错误信息。
“RemoteOnly”只对不在本地 Web 服务器上运行的
用户显示自定义(友好的)信息。出于安全目的,建议使用此设置,以便
不向远程客户端显示应用程序的详细信息。
-->
<customErrors
mode="RemoteOnly"
/> <!-- 身份验证
此节设置应用程序的身份验证策略。可能的模式是“Windows”、“Forms”、
“Passport”和“None”
-->
<authentication mode="Windows" /> <!-- 应用程序级别跟踪记录
应用程序级别跟踪在应用程序内为每一页启用跟踪日志输出。
设置 trace enabled="true" 以启用应用程序跟踪记录。如果 pageOutput="true",则
跟踪信息将显示在每一页的底部。否则,可以通过从 Web 应用程序
根浏览 "trace.axd" 页来查看
应用程序跟踪日志。
-->
<trace
enabled="false"
requestLimit="10"
pageOutput="false"
traceMode="SortByTime"
localOnly="true"
/> <!-- 会话状态设置
默认情况下,ASP.NET 使用 cookie 标识哪些请求属于特定的会话。
如果 cookie 不可用,则可以通过将会话标识符添加到 URL 来跟踪会话。
若要禁用 cookie,请设置 sessionState cookieless="true"。
-->
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;user id=sa;password="
cookieless="false"
timeout="20"
/> <!-- 全球化
此节设置应用程序的全球化设置。
-->
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
</system.web></configuration>
请问:
1.web.config 只对 aspx 起作用吗? 会影响 asp 吗?
2.当我要拿 web.config 出来改动时我得到错误信息:
The type of page you have requested is not served because it has been explicitly forbidden. The extension '.config' may be incorrect.
是否不让放 .config 文件呢?
requestEncoding="gb2312" responseEncoding="gb2312"
后能看到传来的中文了, 但实际上已变为 unicode. 我用 len() 查过了,一个汉字长度为1. 能让传来的中文保持为 gb 吗?
<configuration>
<system.web>
<globalization
fileEncoding="gb2312" requestEncoding="gb2312" responseEncoding="gb2312" />
</system.web>
</configuration> 不过个人强烈建议慢慢学用vs.net
<configuration>
<system.web>
<globalization requestEncoding="gb2312" responseEncoding="gb2312" />
</system.web>
</configuration>
Len("你")=1, Asc(Mid("你",1,1))=63
response.write(empty)
不是
response.wrtie("empty")
1> 当 Web.config的 requestEncoding改为"gb2313"后,用asp.net 产生的表单,提交给一个asp程序,中文没有问题了,但是提交给一个asp.net又中文乱码.只好把所有的asp升到asp.net才行.