php+mysql_smarty乱码!(100分)
晕,乱得真乱--输出全是??????????但是我感觉很奇怪,就是在$smarty->assign("smarty","乱啊");这样输出却不会乱码,搞得两天问题还是解决...
晕,乱得真乱 - -
输出全是?????????? 但是我感觉很奇怪,就是在$smarty->assign("smarty","乱啊");
这样输出却不会乱码,搞得两天问题还是解决不了,求高人帮助。只是在数据库中读取输出才会…
因为比较大,所以全部贴不出来,有意帮忙请留下您的邮箱,我把表和PHP代码和模板全压在一起发您…
解决了立马选您,决不实言啊…
像mysql_query("set names utf8");
和转存为utf8这种都试了,就是不知是哪里出了问题…
模板也是用utf8…
下载:u . 1 1 5 .com/file/t3b7535686我写的源码
上传到了115 展开
输出全是?????????? 但是我感觉很奇怪,就是在$smarty->assign("smarty","乱啊");
这样输出却不会乱码,搞得两天问题还是解决不了,求高人帮助。只是在数据库中读取输出才会…
因为比较大,所以全部贴不出来,有意帮忙请留下您的邮箱,我把表和PHP代码和模板全压在一起发您…
解决了立马选您,决不实言啊…
像mysql_query("set names utf8");
和转存为utf8这种都试了,就是不知是哪里出了问题…
模板也是用utf8…
下载:u . 1 1 5 .com/file/t3b7535686我写的源码
上传到了115 展开
3个回答
展开全部
1.在PHP页面开头设置输出编码
@header("Content-type: text/html; charset=UTF-8");
2.在连接到数据库后直接执行set names语句,保证数据写入到数据库和读取时都使用该编码
@mysql_connect("host","user","pass");
@mysql_query("set names 'utf8'");
smarty直接输出没有问题,就说明问题还是处在数据库编码上,你在试试,希望对你有帮助
@header("Content-type: text/html; charset=UTF-8");
2.在连接到数据库后直接执行set names语句,保证数据写入到数据库和读取时都使用该编码
@mysql_connect("host","user","pass");
@mysql_query("set names 'utf8'");
smarty直接输出没有问题,就说明问题还是处在数据库编码上,你在试试,希望对你有帮助
追问
这个方法,的确不行…
我试过了…
要不,我发你吧,你帮我看下…
反正也不大的还没过80kb
追答
问题解决了.
myDb_class.php行13
mysql_query()语句更换为
mysqli_query($this->mysqli,"set names 'utf8'");
因为你使用的是mysqli扩展,这里使用mysql_query是不正确的,换了就可以了。
展开全部
php开发乱码取决于三个方面编码一致绝对不会出现乱码:
以UTF-8为例
1、数据编码,是UTF-8的,请求数据库时候发送mysql_query("set names utf8");
2、网页编码是否一致,可以设置PHP的header头信息为utf-8
<?php header( 'Content-Type: text/html;charset=utf-8 ');?>
3、网页文件编码是否为utf-8,不是,直接另存为utf-8的,
三者一直一定不会乱码,请你对照修改吧,呵呵。
给分哈。。
以UTF-8为例
1、数据编码,是UTF-8的,请求数据库时候发送mysql_query("set names utf8");
2、网页编码是否一致,可以设置PHP的header头信息为utf-8
<?php header( 'Content-Type: text/html;charset=utf-8 ');?>
3、网页文件编码是否为utf-8,不是,直接另存为utf-8的,
三者一直一定不会乱码,请你对照修改吧,呵呵。
给分哈。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我从不废话,一句话点到位:改编码为GBK,立马解决
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询