当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP连接远程MYSQL和MYSQL5.1中文乱码处理方法

PHP
正确理解PHP程序编译时的错误信息
PHP开发中关于文件操作的疑难问答
PHP.MVC的模板标签系统之标签行为调度
PHP安全配置之实现安全的两个重点
用PHP+java实现自动新闻滚动窗口
PHP编程技巧:看实例学正则表达式
PHP一些常用的正则表达式
PHPUnit袖珍指南之自动测试
PHPUnit袖珍指南之PHPUnit的目的
PHPUnit袖珍指南之安装PHPUnit
PHPUnit袖珍指南之命令行测试工具
PHP中使用crypt()实现用户身份验证
用PHP+MySQL搭建聊天室
如何编译PHP源代码
安全基础:PHP后门的隐藏技巧测试报告
PHP创建和使用session cookie变量
php的curl实现get和post
PHP自动适应范围的页码分页程序
Perl处理日期时间的技巧
php直接调用文本文件内容

PHP连接远程MYSQL和MYSQL5.1中文乱码处理方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 245 ::
收藏到网摘: n/a

本文描述了我在开发我的Blog的过程中所遇到的一些问题以及解决他们的方法。因为本网站采用的是一个免费的远程MySql数据库db4free.net,而且这个数据库是5.1的版本,所以在开发过程中出现了许多问题。故在此发表,以便大家参考。

一、连接远程数据库的方法

对于PHP连接远程MySql数据库,通常要使用如下的语句:

以下为引用的内容:
    var $serverName     = 'db4free.net:3306';//数据库服务器
    var $dbName         = 'dbname';//数据库名
    var $dbUsername     = 'username';//用户名
    var $dbPassword     = '123';//登陆密码
    mysql_connect($serverName,$dbUsername ,$dbPassword);
    mysql_select_db($dbName);

二、解决中文显示乱码的问题

从MySQL 4.1开始引入多语言的支持,但是用PHP插入的中文会出现乱码.无论用什么编码也不行。特别是对于这个5.1版本的MySql数据,他在中文的问题上使用较为麻烦。其解决方法如下:

1、在建表的时候设置编码类型为gb2312_chinese_ci.

2、在PHP页面的数据库连接语句加一行mysql_query("SET NAMES 'gb2312'",$link); 例如

以下为引用的内容:
    $db_host="localhost";
      $db_user="root";
      $db_password="password";
      $db_name="test";
      $link=mysql_connect($db_host,$db_user,$db_password);
      mysql_query("SET NAMES 'gb2312'",$link);
      $db=mysql_select_db($db_name,$link);

这样在MYSQL里面的中文就能正常显示了。也可以用下面这句话:

mysql_query("SET NAMES 'gb2312'");