php adodb连接mssql解决乱码问题


Posted in PHP onJune 12, 2009

周海汉/文
ADO可以用 new COM("ADODB.Connection", NULL, CP_UTF8)//65001 这样的语句来实现正确转换。但ADO对php的支持缺乏文档。而有个开源的adodb,文档较为丰富。
其中对不同数据库驱动,设置UTF-8的方法还不一样,如下:

For all drivers 
'persist', 'persistent', 'debug', 'fetchmode', 'new' 
Interbase/Firebird 
'dialect','charset','buffers','role' 
M'soft ADO 
'charpage' 
MySQL 
'clientflags' 
MySQLi 
'port', 'socket', 'clientflags' 
Oci8 
'nls_date_format','charset' 
For all drivers 
'persist', 'persistent', 'debug', 'fetchmode', 'new' 
Interbase/Firebird 
'dialect','charset','buffers','role' 
M'soft ADO 
'charpage' 
MySQL 
'clientflags' 
MySQLi 
'port', 'socket', 'clientflags' 
Oci8 
'nls_date_format','charset'

其中,Ado可以使用charPage这个属性来设置uft-8,类似new COM的方式。但发现当将AdoNewConnection($dbdriver)的$dbdriver设为'ado'或'ado_mssql'时,其传进去的database被替换为provider。那database的名字如何设置呢?一直没找到办法。
$dbdriver='ado://sa:cvttdev@172.16.22.40/sqloledb?charpage=65001';
其格式是'driver://user:passwd@host/database?options[=value]
但没解决设置数据库名字的地方。
痛苦了很久,只能找到如下的办法解决:
<html> 
<head> 
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> 
</head> 
<body> 
<?php 
$dbdriver='ado_mssql'; 
$server='192.168.22.40'; 
$user='sa'; 
$password='passwd'; 
$DATABASE='sugarcrm_db'; 
$database='sqloledb'; 
//$dbdriver='ado://sa:cvttdev@172.16.22.40/sqloledb?charpage=65001'; 
$myDSN="PROVIDER=MSDASQL;DRIVER={SQL Server};SERVER={172.16.22.40};DATABASE=sugarcrm_db;UID=sa;PWD=cvttdev;"; 
include('adodb5/adodb.inc.php'); 
$db = ADONewConnection($dbdriver); # eg 'mysql' or 'postgres' 
$db->debug = true; 
$db->charPage =65001; 
//$db->Connect($server, $user, $password, $database); 
$db->Connect($myDSN); 
//error:mssql server not support codes below 
//$db->Execute("set names 'utf8'"); 
echo "before query"; 
$rs = $db->Execute('select * from accounts'); 
print "<pre>"; 
print_r($rs->GetRows()); 
print "</pre>"; 
?> 
</body> 
</html>
PHP 相关文章推荐
PHP开发中常用的8个小技巧
Aug 27 PHP
PHP求小于1000的所有水仙花数的代码
Jan 10 PHP
apache mysql php 源码编译使用方法
May 03 PHP
php多种形式发送邮件(mail qmail邮件系统 phpmailer类)
Jan 22 PHP
php实现上传图片生成缩略图示例
Apr 13 PHP
强制PHP命令行脚本单进程运行的方法
Apr 15 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(八)
Jun 23 PHP
PHP闭包实例解析
Sep 08 PHP
ThinkPHP 404页面的设置方法
Jan 14 PHP
PHP封装的分页类与简单用法示例
Feb 25 PHP
Yii2框架自定义类统一处理url操作示例
May 25 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
Apr 05 PHP
php array_map array_multisort 高效处理多维数组排序
Jun 11 #PHP
php MsSql server时遇到的中文编码问题
Jun 11 #PHP
php 分页类 扩展代码
Jun 11 #PHP
PHP 输出简单动态WAP页面
Jun 09 #PHP
Windows PHP5和Apache的安装与配置
Jun 08 #PHP
phpMyAdmin 安装配置方法和问题解决
Jun 08 #PHP
IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安装配置图文教程 2009年
Jun 08 #PHP
You might like
如何写php程序?
2006/12/08 PHP
php 常用类汇总 推荐收藏
2010/05/13 PHP
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
2010/06/11 PHP
关于php支持分块与断点续传文件下载功能代码
2014/05/09 PHP
thinkPHP多域名情况下使用memcache方式共享session数据的实现方法
2016/07/21 PHP
PHP实现的装箱算法示例
2018/06/23 PHP
用JavaScript实现单继承和多继承的简单方法
2009/03/29 Javascript
简单实例处理url特殊符号&amp;处理(2种方法)
2013/04/02 Javascript
JavaScript实现简单的时钟实例代码
2013/11/23 Javascript
JavaScript禁止页面操作的示例代码
2013/12/17 Javascript
javascript实现页面内关键词高亮显示代码
2014/04/03 Javascript
js实现的二级横向菜单条实例
2015/08/22 Javascript
jquery实现红色竖向多级向右展开的导航菜单效果
2015/08/31 Javascript
JS+CSS实现简单的二级下拉导航菜单效果
2015/09/21 Javascript
jquery zTree异步加载、模糊搜索简单实例分享
2016/03/24 Javascript
即将发布的jQuery 3 有哪些新特性
2016/04/14 Javascript
移动端横屏的JS代码(beta)
2016/05/16 Javascript
关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
2016/06/30 Javascript
微信小程序 连续旋转动画(this.animation.rotate)详解
2017/04/07 Javascript
JavaScript重复元素处理方法分析【统计个数、计算、去重复等】
2017/12/14 Javascript
JS计算输出100元钱买100只鸡问题的解决方法
2018/01/04 Javascript
JS扩展String.prototype.format字符串拼接的功能
2018/03/09 Javascript
[06:04]DOTA2英雄梦之声Vol19卓尔游侠
2014/06/20 DOTA
使用PDB模式调试Python程序介绍
2015/04/05 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
CSS3与动画有关的属性transition、animation、transform对比(史上最全版)
2017/08/18 HTML / CSS
ECCO爱步加拿大官网:北欧丹麦鞋履及皮具品牌
2017/07/08 全球购物
美体小铺印度官网:The Body Shop印度
2019/10/17 全球购物
畜牧兽医本科生个人的自我评价
2013/10/11 职场文书
企业投资意向书
2015/05/09 职场文书
观看焦裕禄观后感
2015/06/09 职场文书
实用干货:敬酒词大全,帮你应付各种场合
2019/11/21 职场文书
html+css实现环绕倒影加载特效
2021/07/07 HTML / CSS
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
2021/10/16 Python
详细介绍Next.js脚手架完整搭建封装
2022/04/26 Javascript