在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.phprm.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属性

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

Dreamweaver Mac版
视觉化网页开发工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具