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中使用Oracle数据库(2)
Oct 09 PHP
PHP操作xml代码
Jun 17 PHP
PHP之COOKIE支持详解
Sep 20 PHP
浅析PHP substr,mb_substr以及mb_strcut的区别和用法
Jun 21 PHP
利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
Nov 26 PHP
php实现aes加密类分享
Feb 16 PHP
php实现的click captcha点击验证码类实例
Sep 23 PHP
全面解读PHP的Yii框架中的日志功能
Mar 17 PHP
PHP抓取淘宝商品的用户晒单评论+图片+搜索商品列表实例
Apr 14 PHP
PHP实现接收二进制流转换成图片的方法
Jan 10 PHP
php+redis在实际项目中HTTP 500: Internal Server Error故障排除
Feb 05 PHP
PHP反射原理与用法深入分析
Sep 28 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
smarty静态实验表明,网络上是错的~呵呵
2006/11/25 PHP
DISCUZ 分页代码
2007/01/02 PHP
windows环境下php配置memcache的具体操作步骤
2013/06/09 PHP
thinkphp3.x中session方法的用法分析
2016/05/20 PHP
php实现多站点共用session实现单点登录的方法详解
2019/09/18 PHP
用JavaScript实现PHP的urlencode与urldecode函数
2015/08/13 Javascript
jquery实现未经美化的简洁TAB菜单效果
2015/08/28 Javascript
详解iframe与frame的区别
2016/01/13 Javascript
JavaScript SweetAlert插件实现超酷消息警告框
2016/01/28 Javascript
shiro授权的实现原理
2017/09/21 Javascript
深入浅析JSONAPI在PHP中的应用
2017/12/24 Javascript
vue-cli3+ts+webpack实现多入口多出口功能
2019/05/30 Javascript
NodeJS 文件夹拷贝以及删除功能
2019/09/03 NodeJs
JavaScript实现移动端拖动元素
2020/11/24 Javascript
[01:08:44]NB vs VP 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python3结合Dlib实现人脸识别和剪切
2018/01/24 Python
python读csv文件时指定行为表头或无表头的方法
2019/06/26 Python
Python利用matplotlib做图中图及次坐标轴的实例
2019/07/08 Python
Python 用三行代码提取PDF表格数据
2019/10/13 Python
如何在VSCode上轻松舒适的配置Python的方法步骤
2019/10/28 Python
在PyCharm中实现添加快捷模块
2020/02/12 Python
Django:使用filter的pk进行多值查询操作
2020/07/15 Python
学习Python需要哪些工具
2020/09/04 Python
python中用Scrapy实现定时爬虫的实例讲解
2021/01/18 Python
阻止移动设备(手机、pad)浏览器双击放大网页的方法
2014/06/03 HTML / CSS
纽约家具、家居装饰和地毯店:ABC Carpet & Home
2017/06/21 全球购物
电大毕业生自我鉴定
2013/11/10 职场文书
化学专业毕业生求职信
2014/07/28 职场文书
开服装店计划书
2014/08/15 职场文书
2014入党积极分子破除“四风”思想汇报
2014/09/14 职场文书
2014年财务科工作总结
2014/11/11 职场文书
趣味运动会口号
2015/12/24 职场文书
七年级生物教学反思
2016/02/20 职场文书
2016大学生国家助学贷款承诺书
2016/03/25 职场文书
pdf论文中python画的图Type 3 fonts字体不兼容的解决方案
2021/04/24 Python
Python自动化测试PO模型封装过程详解
2021/06/22 Python