php查询mssql出现乱码的解决方法


Posted in PHP onDecember 29, 2014

本文实例讲述了php查询mssql出现乱码的解决方法。分享给大家供大家参考。具体分析如下:

在php连接mssql时查询出来的全部是乱码,这种问题我根据经验知道是编码问题,下面来给各位总结一下解决方法.

方法一,修改php.ini文件,当然根据你页面情况来设置也可以是utf-8编码了,代码如下:

;mssql.charset = "ISO-8859-1"
mssql.charset = "GBK"

方法二,直接程序中转换,代码如下:

iconv('GB2312','UTF-8',$data)

方法三,利用Ado连接在连接时设置编码,代码如下:

$conn = new COM("ADODB.Connection", NULL, CP_UTF8) or die("Cannot start ADO");

PHP例子,代码如下:

<html>   

<head>   

<meta http-equiv="Content-Type" content="text/html; charset=utf-8″>   

</head>   

<body>   

<?php   

//print("The next line generates an error.3water.com<br>");   

//printaline("PLEASE?");   

//print("This will not be displayed due to the above error.");   

?>   

<?php   

$conn = new COM("ADODB.Connection", NULL, CP_UTF8) or die("Cannot start ADO");    

//access 数据库的打开方式   

//$conn->Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db");   

//$conn->Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$db");   

$conn->Open("Driver={SQL Server};Server={192.168.22.40};Database=sugarcrm_db;UID=sa;PWD=123456;") ;    

// 执行查询并输出数据   

$rs = $conn->Execute('SELECT * FROM accounts') or die ("error query");  

?>   

<table border="1″>   

<tr><th>ID</th><th>Title</th>   

</tr>   

<?php   

while (!$rs->EOF) {   

  echo '<tr>';   

  echo '<td>'. $rs->Fields['id']->Value .'</td>';   

  echo '<td>'. $rs->Fields['name']->Value .'</td>';   

  echo '</tr>';   

  $rs->MoveNext();   

}   

?>   

</table>   

<?php   

// 释放资源   

$rs->Close();   

$conn->Close();   

$rs = null;   

$conn = null;   

?>   

</body>   

</html>

总结:

一是:数据库类型,其中包括,数据库,表,字段三处都要统一,可以检查一下

二是:文件的编码类型,你若用dw或editplus可以查看页面编码,不同需修改

三是:访问数据库时的设置既set NAMES utf8;

四是:浏览器显示方式,添加meta属性<meta charset=utf-8>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP生成静态页面详解
Nov 19 PHP
php中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
Aug 21 PHP
深入理解curl类,可用于模拟get,post和curl下载
Jun 08 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
Oct 15 PHP
PHP输出缓冲控制Output Control系列函数详解
Jul 02 PHP
浅谈php fopen下载远程文件的函数
Nov 18 PHP
PHP的PDO错误与错误处理
Jan 27 PHP
PHP fopen函数用法实例讲解
Feb 15 PHP
Laravel 中创建 Zip 压缩文件并提供下载的实现方法
Apr 02 PHP
TP5(thinkPHP框架)实现后台清除缓存功能示例
May 29 PHP
php redis setnx分布式锁简单原理解析
Oct 23 PHP
PHP连接MySQL数据库三种实现方法
Dec 10 PHP
php+mysql大量用户登录解决方案分析
Dec 29 #PHP
php从memcache读取数据再批量写入mysql的方法
Dec 29 #PHP
php操作mongoDB实例分析
Dec 29 #PHP
Yii实现多数据库主从读写分离的方法
Dec 29 #PHP
php调用mysql存储过程实例分析
Dec 29 #PHP
php生成excel列名超过26列大于Z时的解决方法
Dec 29 #PHP
php+mysqli实现批量替换数据库表前缀的方法
Dec 29 #PHP
You might like
Zend Framework实现自定义过滤器的方法
2016/12/09 PHP
PHP使用preg_split和explode分割textarea存放内容的方法分析
2017/07/03 PHP
判断JavaScript对象是否可用的最正确方法分析
2008/10/03 Javascript
JavaScript 异步调用框架 (Part 4 - 链式调用)
2009/08/04 Javascript
javascript入门基础之私有变量
2010/02/23 Javascript
Js event事件在IE、FF兼容性问题
2011/01/01 Javascript
JS 面向对象之神奇的prototype
2011/02/26 Javascript
使用apply方法处理数组的三个技巧[译]
2012/09/20 Javascript
jquery库或JS文件在eclipse下报错问题解决方法
2014/04/17 Javascript
通过JS和PHP两种方法判断用户请求时使用的浏览器类型
2016/09/01 Javascript
Angular的自定义指令以及实例
2016/12/26 Javascript
axios学习教程全攻略
2017/03/26 Javascript
JS简单实现获取元素的封装操作示例
2017/04/07 Javascript
Vuejs实现带样式的单文件组件新方法
2017/05/02 Javascript
react-redux中connect()方法详细解析
2017/05/27 Javascript
JavaScript实现多叉树的递归遍历和非递归遍历算法操作示例
2018/02/08 Javascript
详解VUE中常用的几种import(模块、文件)引入方式
2018/07/03 Javascript
基于Vue-cli快速搭建项目的完整步骤
2018/11/03 Javascript
webpack中如何使用雪碧图的示例代码
2018/11/11 Javascript
[01:11]steam端dota2实名认证操作流程视频
2021/03/11 DOTA
MySQL最常见的操作语句小结
2015/05/07 Python
python获取一组汉字拼音首字母的方法
2015/07/01 Python
Python实现代码统计工具(终极篇)
2016/07/04 Python
python的Tqdm模块的使用
2018/01/10 Python
Python、 Pycharm、Django安装详细教程(图文)
2019/04/12 Python
pandas的连接函数concat()函数的具体使用方法
2019/07/09 Python
Python和Anaconda和Pycharm安装教程图文详解
2020/02/04 Python
Python os模块常用方法和属性总结
2020/02/20 Python
pytorch 实现在一个优化器中设置多个网络参数的例子
2020/02/20 Python
HTML5拖放功能_动力节点Java学院整理
2017/07/13 HTML / CSS
main 函数执行以前,还会执行什么代码
2013/04/17 面试题
实习生自我鉴定
2013/12/12 职场文书
庆中秋节主题活动方案
2014/02/03 职场文书
2014年党员创先争优承诺书
2014/05/29 职场文书
财务助理岗位职责范本
2014/10/09 职场文书
2014年公务员个人工作总结
2014/11/22 职场文书