本文实例讲述了PHP查询mssql出现乱码的解决方法。分享给大家供大家参考。具体分析如下:
在PHP连接mssql时查询出来的全部是乱码,这种问题我根据经验知道是编码问题,下面来给各位总结一下解决方法.
方法一,修改PHP.ini文件
,当然根据你页面情况来设置也可以是utf-8编码了,代码如下: 代码如下:
sql.charset = "ISO-8859-1"
mssql.charset = "GBK"
方法二,直接程序中转换
,代码如下: 代码如下:
方法三,利用Ado连接在连接时设置编码
,代码如下: 代码如下:
PHP例子
,代码如下: 代码如下:
PHP
//print("The next line generates an error.www.jb51.cc
"); //printaline("PLEASE?"); //print("This will not be displayed due to the above error."); ?> 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"); ?>数据库类型,其中包括,数据库,表,字段三处都要统一,可以检查一下
"); //printaline("PLEASE?"); //print("This will not be displayed due to the above error."); ?> 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"); ?>