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

PHP
在 php 中使用 sockets:从新闻组中获取文章
正则表达式中的特殊字符
无限分类与树型论坛的实现方法
谈谈生成静态页面的一些经验
使用php的编码功能-mime.inc
缓存PHP页面的代码,可以减轻CPU和MYSQL负担
php控制用户的浏览器
CSS反转字符加密邮箱地址
用PHP调用Lucene包来实现全文检索
phpbb mod for google 完全解决方案
如何避免表单的重复提交
用PHP处理多个同名复选框
文件下载统计php编程
利用Editplus2的用户工具功能来即时调试PHP
实例学习PHP之FastTemplate模板篇
模板--为什么和如何在PHP中使用它们
PHP中实现大图自动缩成小图(及GD库的安装)
采用 PEAR 来缓冲 PHP 程序(一)
采用 PEAR 来缓冲 PHP 程序(二)
变量的“追随”:cookie与session

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


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