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

PHP
PHP日期时间函数的高级应用技巧
php 无限级 SelectTree 类
简单的php 验证图片生成函数
php print EOF实现方法
php session 错误
PHP的单引号和双引号 字符串效率
php 字符过滤类,用于过滤各类用户输入的数据
php 字符转义 注意事项
PHP mail 通过Windows的SMTP发送邮件失败的解决方案
PHP XML备份Mysql数据库
很好用的PHP数据库类
phpMyAdmin 安装及问题总结
UCenter Home二次开发指南
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
php $_ENV为空的原因分析
php Undefined index的问题
PHP 服务器配置(使用Apache及IIS两种方法)
一个很不错的PHP翻页类
php 正则 过滤html 的超链接
PHP 文件扩展名 获取函数

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


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