最近写php项目,一直是在win xp环境下开发的。
今天部署到远程空间(UNIX的FreeBSD),ftp完成以后。使用后台编辑功能就会出现乱码问题。
因为本地环境都是自己搭建的,所以哪里有问题都可以解决;远程不是很清楚,系统配置也不开放,但租用平台是对所有人开放的,所以也就排除这种问题机器配置错误。
测试发现,只有在和数据库操作才有乱码,其他正常。
确定位置就好处理,查询mysql文档
http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html
A SET NAMES ' statement is equivalent to these three statements:x'
SET character_set_client =x; SET character_set_results =x; SET character_set_connection =x;
方案:在php操作db前字符集设置:@mysql_query("set names utf8");
(因为用ez_sql,在ez_sql_mysql.sql 192行添加)
远程环境编辑ok,但是本地环境加这句就出现乱码。还不清楚具体是有哪些什么原因引起的?但有个不同点:操作系统字符集。
本文探讨了在从Windows XP环境下的PHP项目部署到FreeBSD远程服务器时遇到的字符集乱码问题。通过分析,作者发现仅在与数据库交互时出现乱码,并成功通过调整MySQL连接字符集解决了远程服务器的问题,但在本地环境中应用相同解决方案却导致了新的乱码问题。
1004

被折叠的 条评论
为什么被折叠?



