PHP中插入MYSQL数据乱码的问题和解决方法

作者mazerain 文章分类 分类:工作 文章评论 0条评论 阅读次数 已被围观 1751

      前两天,要在网站下加个最新文章的列表页,PHPCMS系统本身就有此项功能,但这个网站用的是DEDECMS,本来计划用织梦内置的自由列表页做这个功能,而且本身也很强大,也可以分页。本来以为这样就可以了,后来又有要求:要做成动态,后台发文章以后,刷新就可以有的,没办法,只好自己做个,从DEDE数据表里调。


      中间有三个问题:

      1、织梦的文章URL。一般在DEDE模板中,直接[field:arcurl/]就可以了,可是自己写有不认识,只好老老实实的从数据库里面找,在文章的数据表里又没有直接的文章地址,又写了两个查询,从文章里面找出栏目ID,再在栏目表里面把栏目路径查出来,再组合成为文章地址。还要把DEDE里面的{cmspath}替换掉。

       2、织梦的文章发布时间。在文章的数据表里,文章发布时间以UNIX时间戳格式保存,还要将UNIX时间戳改成正常时间,<?php echo"当前时间为"+$dqtime=date("Ymd",UNIX时间戳);?>。只不过有个小问题没有解决,单独的Date里可以用Y-m-d格式,在这里就不可以,不知道有没有其它的方法。

       3、内容乱码的问题:本来以为HTML中编码正确就可以,没有想到不行,数据库中用的是UTF-8,后来找到,要加个:mysql_query("set names utf8;"); GBK的就不需要,悲催!

 

       看来要学的还很多,以前只对前端有兴趣,不过工作中慢慢的要求高了,自己也要提高。

发表评论: