Zen Cart 改 iso-8859-1字符集为 utf-8
2013-06-27 08:35
489 查看
zen-cart安装的时候使用的是iso-8859-1为默认字符集,如果在默认安装下输入中文将会乱码一片。
最好的办法是修改zen-cart的字符集配置,使用utf-8为其默认字符集。
有2个地方需要修改,一个是购物车的的默认字符集,一个是控制台的字符集。
includes/languages/english.php在这个文件中includes/languages/english.php的50行
修改 define(‘CHARSET’, ‘iso-8859-1′);
为define(‘CHARSET’, ‘utf-8′);
admin/includes/languages/french.php在admin/includes/languages/french.php文件的63行。
将define(‘CHARSET’, ‘iso-8859-1′);
改为define(‘CHARSET’, ‘utf-8′);
这个文件主要是指定控制台所使用的文件的字符集。
修改上述2个文件以后,zen-cart的购物车所有页面将会使用UTF8,但是如果用phpmyadmin查看数据库,将会看到乱码。
这是因为zen-cart没有指定utf8为数据库连接的默认字符集。
需要修改 includesclassesdbmysql 目录下的 query_factory.php 文件,找到下面的内容:
if (@mysql_select_db($zf_database, $this->link)) {
$this->db_connected = true;
return true;
} else {
$this->set_error(mysql_errno(),mysql_error(), $zp_real);
return false;
}
將其修改成
if (@mysql_select_db($zf_database, $this->link)) {
$this->db_connected = true;
// *** UTF8 Connection Add [BEGIN] ***
mysql_query(“SET NAMES ‘utf8′”, $this->link);
mysql_query(“SET CHARACTER SET UTF8″, $this->link);
// *** UTF8 Connection Add [END] ***
return true;
} else {
$this->set_error(mysql_errno(),mysql_error(), $zp_real);
return false;
}
修改保存后,mysql的连接将会使用utf8,中文资料的处理就不会有问题了,可以使用phpmyadmin确认一下有没有错误。
最好的办法是修改zen-cart的字符集配置,使用utf-8为其默认字符集。
有2个地方需要修改,一个是购物车的的默认字符集,一个是控制台的字符集。
includes/languages/english.php在这个文件中includes/languages/english.php的50行
修改 define(‘CHARSET’, ‘iso-8859-1′);
为define(‘CHARSET’, ‘utf-8′);
admin/includes/languages/french.php在admin/includes/languages/french.php文件的63行。
将define(‘CHARSET’, ‘iso-8859-1′);
改为define(‘CHARSET’, ‘utf-8′);
这个文件主要是指定控制台所使用的文件的字符集。
修改上述2个文件以后,zen-cart的购物车所有页面将会使用UTF8,但是如果用phpmyadmin查看数据库,将会看到乱码。
这是因为zen-cart没有指定utf8为数据库连接的默认字符集。
需要修改 includesclassesdbmysql 目录下的 query_factory.php 文件,找到下面的内容:
if (@mysql_select_db($zf_database, $this->link)) {
$this->db_connected = true;
return true;
} else {
$this->set_error(mysql_errno(),mysql_error(), $zp_real);
return false;
}
將其修改成
if (@mysql_select_db($zf_database, $this->link)) {
$this->db_connected = true;
// *** UTF8 Connection Add [BEGIN] ***
mysql_query(“SET NAMES ‘utf8′”, $this->link);
mysql_query(“SET CHARACTER SET UTF8″, $this->link);
// *** UTF8 Connection Add [END] ***
return true;
} else {
$this->set_error(mysql_errno(),mysql_error(), $zp_real);
return false;
}
修改保存后,mysql的连接将会使用utf8,中文资料的处理就不会有问题了,可以使用phpmyadmin确认一下有没有错误。
相关文章推荐
- Tomcat中ISO-8859-1转UTF-8中文乱码的问题
- IO流-转换流的字符编码转换-ISO-8859-1和utf-8和GBK互转
- iso-8859-1和utf-8有什么不同
- JAVA字符编码系列二:Unicode,ISO-8859,GBK,UTF-8编码及相互转换
- java 编码 UTF-8、ISO-8859-1、GBK
- UTF-8 GBK ISO-8859-1编码
- 字符集与编码八之ASCII和ISO-8859-1
- 关于JAVA字符编码:Unicode,ISO-8859-1,GBK,UTF-8编码及相互转换
- iso-8859-1 转换成 utf-8
- 各种ISO 8859字符集
- iso-8859-1转utf-8编码
- MyEclipse JSP乱码解决方法/some characters cannot be mapped using “ISO-8859-1”/jsp设置为UTF-8
- 中文乱码问题 ? 原因:JSP中默认使用iso-8859-1字符编码方式,不支持中文 ? 常见的支持中文的编码方式:gb2312(常用简体汉字)、gbk(简体和繁体汉字)、utf-8 ? 解决中文乱码
- values[i] = new String(values[i].getBytes("ISO-8859-1"),"utf-8")中文乱码
- 浏览器请求中文乱码(ISO-8859-1 to UTF-8)
- 细究UTF-8,GB2312及ISO-8859-1区别
- charset=iso-8859-1和charset=utf-8有什么不同?
- 关于JAVA字符编码:Unicode,ISO-8859-1,GBK,UTF-8编码及相互转换
- 中文乱码问题,utf-8与ISO-8859-1之间的转换
- JAVA字符编码系列二:Unicode,ISO-8859,GBK,UTF-8编码及相互转换