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配置心得包含MYSQL5乱码解决
Nov 20 PHP
PHP 开发工具
Dec 06 PHP
php递归列出所有文件和目录的代码
Sep 10 PHP
探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法
Jun 06 PHP
php实现mysql数据库操作类分享
Feb 14 PHP
PHP的变量类型和作用域详解
Mar 12 PHP
解决ThinkPHP关闭调试模式时报错的问题汇总
Apr 22 PHP
ThinkPHP V2.2说明文档没有说明的那些事实例小结
Jul 01 PHP
WordPress中获取所使用的模板的页面ID的简单方法
Dec 31 PHP
php使用glob函数遍历文件和目录详解
Sep 23 PHP
PHP结合Ueditor并修改图片上传路径
Oct 16 PHP
使用PHP免费发送定时短信的实例
Oct 24 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
PHP脚本的10个技巧(8)
2006/10/09 PHP
Smarty+QUICKFORM小小演示
2007/02/25 PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
2013/06/21 PHP
PHP关于IE下的iframe跨域导致session丢失问题解决方法
2013/10/10 PHP
php 利用socket发送GET,POST请求的实例代码
2020/07/04 PHP
jQuery之ajax技术的详细介绍
2013/06/19 Javascript
制作jquery遮罩层效果导航菜单代码分享
2013/12/25 Javascript
超赞的jQuery图片滑块动画特效代码汇总
2016/01/25 Javascript
Actionscript与javascript交互实例程序(修改)
2016/09/22 Javascript
jquery加载单文件vue组件的方法
2017/06/20 jQuery
vue.js项目打包上线的图文教程
2017/11/16 Javascript
Vue单页面应用保证F5强刷不清空数据的解决方案
2018/01/31 Javascript
webpack 3.X学习之多页面打包的方法
2018/09/04 Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
2018/12/09 Javascript
javascript验证form表单数据的案例详解
2019/03/25 Javascript
Element-UI中关于table表格的那些骚操作(小结)
2019/08/15 Javascript
[02:41]DOTA2英雄基础教程 谜团
2013/12/10 DOTA
[02:15]2014DOTA2国际邀请赛 专访LGD.lin小兔子是大腿
2014/07/14 DOTA
[01:00:25]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS Liquid
2018/03/31 DOTA
[56:13]DOTA2-DPC中国联赛定级赛 LBZS vs Phoenix BO3第一场 1月10日
2021/03/11 DOTA
解决python3 网络请求路径包含中文的问题
2018/05/10 Python
python 检查是否为中文字符串的方法
2018/12/28 Python
Python之修改图片像素值的方法
2019/07/03 Python
Python小程序之在图片上加入数字的代码
2019/11/26 Python
创建Shapefile文件并写入数据的例子
2019/11/26 Python
Python操作注册表详细步骤介绍
2020/02/05 Python
python集合的新增元素方法整理
2020/12/07 Python
CSS3中的opacity属性使用教程
2015/08/19 HTML / CSS
针对HTML5的Web Worker使用攻略
2015/07/12 HTML / CSS
extern在函数声明中是什么意思
2014/01/19 面试题
2014自荐信的写作技巧
2014/01/28 职场文书
2015年科室工作总结
2015/04/10 职场文书
党员理论学习心得体会
2016/01/21 职场文书
学习弘扬焦裕禄精神心得体会
2016/01/23 职场文书
golang 如何通过反射创建新对象
2021/04/28 Golang
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python