- 论坛徽章:
- 0
|
本帖最后由 alabos 于 2012-06-30 01:08 编辑
这个问题在 Dancer 中比较蛋疼, 我现在的解决办法是
把从 mysql 取回来的数据,先 decode utf8 再显示就不乱码了。
或者在 TT 中加上:
<% USE Decode %>
<p><% some_chinese_variable | decode %>
另外记得建表的时候要使用:
CREATE TABLE `xxx` (
) DEFAULT CHARSET=utf8
并且 DBI 在 connect 之后要加上:
my $dbh = DBI->connect($dsn,$user,$password,{
RaiseError => 0,
PrintError => 0,
AutoCommit => 0
}) or die('db_err');
$dbh->do("SET NAMES UTF8");
$dbh->do("SET character_set_client=UTF8");
$dbh->do("SET character_set_connection=UTF8");
这样基本上乱码的问题就没有了。
|
|