程序开发完毕,部署到服务器上死活不能用,搞来搞去服务器编码是GB2312,直接无语……

导致了一系列的问题:

          1、MVC中Request.Form取不到正确的值:MVC太智能了,即便你编码了,它依然会给你自动转,NND,微软这点也太过分了……

          2、同样的SQL语句,在代码环境下不能执行,把sql语句拷贝出来放到查询分析器中就能……

解决方案:

         1、MVC中指定Action的编码,见我上一篇文章(非随便,顺便说一句博客园,文章还没随笔做的好,一直就搞不懂那玩意干啥用的)

         2、PHP中UrlEncode函数是根据PHP文件的编码来决定的,所以把编码重新

          综上:MVC的改成UTF8,PHP文件另存成UTF8编码。

 

顺便说一句:日志真的很重要,尤其是在PHP跟服务器默认编码是GB2312的这种奇葩环境下……