加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php查询mssql发生乱码的解决方法

发布时间:2022-07-26 05:04:36 所属栏目:PHP教程 来源:互联网
导读:具体分析如下: 在php连接mssql时查询出来的全部是乱码,这种问题我根据经验知道是编码问题,下面来给各位总结一下解决方法. 方法一,修改php.ini文件,当然根据你页面情况来设置也可以是utf-8编码了,代码如下: 代码如下:;mssql.charset = ISO-8859-1 mssql.ch
  具体分析如下:
 
  在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.www.jb51.net<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编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读