PHP+MySQL中文乱码问题

    From: xuyibo.net  Updated: 2008-02-01

    邮件通知当更新时自动发送邮件通知。
    评论本文有什么建议或评论,可以贴一下。
    我要捐助你的支持,让我们做的更好。

  1. 介绍
  2. 最近学习php和mysql,制作了几个网页,发现中文老是乱码。在捣腾了一个下午外加41分钟后,终于将其搞定。下面将方法好好仔细的整理一下,方便大家参考。

  3. 选择utf8
  4. “21世纪是全球化的世纪”,为了更好的和各种新的技术,比如ajax等相互配合,网页就废弃gb2312的编码吧,utf8是大势所趋,人心所向。

  5. 配置mysql为utf8
  6. * 将mysql安装目录下my.ini中的default-character-set=xxx,全部修改为default-character-set=utf8.
    * 数据库创建的时候,制定数据库的编码,比如:

    drop database bde;
    
    create database bde
        character set utf8
        default character set utf8
        collate utf8_general_ci
        default collate utf8_general_ci;
    
    use bde;
    
    create table article(
        Id int auto_increment not null,
        Title char(100) not null,
        Content text,
        CreateTime date not null,
        ModifyTime date not null,
        ModifyNum int not null,
        PRIMARY KEY(Id)
        );
    
  7. 修改.php页面
  8. 修改页面编码:
    修改php连接数据库编码:在连接完数据库后,调用mysql_query("SET NAMES 'utf8'", $conn);。

  9. 综述
  10. 乱码是个非常烦的事情,这些事情尽量选择一个不出错的方案,然后整个项目严格执行。这是个简单而又强大的原理。utf8格式的编码是个非常不错的选择,尤其是打算以后有过国际化的考虑。

    本文有不对或者有待完善的地方,请在下面发表一下看法,大家一起努力,让更多的人少走些冤枉路。

  11. 相关文章
  12. PHP_MySQL教程3 - 进阶
    PHP_MySQL教程2 - 第一个小程序

  13. 评论本文:
  14. EMail: