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

PHP
MYSQL版本大于4.1问题 - PHPchina
怎么让用户点击一个连接后,把一个图片另存了 - PHPchina
武汉10月15日Phper聚会召集!!! - PHPchina
php如果不等待exec执行的程序创建的子进程? - PHPchina
哪位知道DISCUZ处理防SQL注入的代码是哪部分 - PHPchina
求教!我实在不知道哪里问题,在线等ing - PHPchina
怎样结束用户某一进程 - PHPchina
比对用户名密码能不能这样写? - PHPchina
求助:如何在PHP+mysql中实现数据备份? - PHPchina
大家看看这个配置对吗 - PHPchina
如何禁止require当前文件 - PHPchina
无法将回调函数放在类中? - PHPchina
村里 PHP代码高亮是怎么实现的? - PHPchina
apache安装后.服务里没有apache2这个服务! - PHPchina
请教一个小问题 - PHPchina
config.php里面是不是应该把多数参数设置为常量而不是变量? - PHPchina
请教高手一个问题 - PHPchina
如何让百度收录我的网站 ?? - PHPchina
谁能给个注入的简单语句? - PHPchina
求PHP站内搜索思路 - PHPchina

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 225 ::
收藏到网摘: 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'");