使用win8.1 x64 office2010 php 使用 pdo_odbc 连接excel失败的问题
2013-07-25 15:06
706 查看
public function init($filePath){ $dbq = iconv('UTF-8',"GBK",BASEPATH.'../'.$filePath); $dsn = "odbc:Driver={Microsoft Excel Driver (*.xls)};Dbq=".$dbq.";ReadOnly=0;"; try { $this->pdo = new PDO($dsn, '', '',array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING)); }catch (Exception $e){ $err = $e->getMessage (); $dbh = "连接excel数据库失败:" . iconv('GBK', "UTF-8", $err ); exit($dbh); } }
在本机上无法使用,折磨了半天,最后修改了注册表后可以了。虽然简单,但还是记录一下
打开odbc管理器不存在Microsoft Excel Driver (*.xls),只有 Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb),将上面的修改也是可以运行的,但是在其他同事使用的是office2003,上面又是不行的。 所以修改注册表添加驱动如下 打开注册表regedit 打开[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI] 导出项 Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)
编辑导出的reg文件 Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb) 修改为 Microsoft Excel Driver (*.xls) 然后重新注册 还要在 下面的 ODBC Drivers 项里面新建字符串值 Microsoft Excel Driver (*.xls) Installed
ok,完成,可以连接exccel了
相关文章推荐
- 关于php中使用odbc或者pdo连接sqlserver时如果查询条件中存在中文会导致查询失败的问题
- php使用pdo数据库连接失败
- php使用ODBC连接sqlserver问题
- PHP使用pdo连接数据库
- 测试php是使用pdo方式连接mysql
- 使用SQL Server Driver for PHP解决PHP连接MSSQL乱码的问题
- php CI框架 使用PDO 的连接配置
- 修改ES映射端口号的问题,或pyes module使用 更改端口号(非9200)连接失败的问题
- 解决用PHP连接狗日的SQLSERVER不能使用UTF8,导致乱码的问题
- 在SAE上使用wx_sample.php获取token失败问题
- PHP MYSQL 使用 PDO 连接数据库并执行 SQL 语句
- 一个关于php使用pdo方式进行数据库连接和处理的类
- JSP使用UTF-8链接MYSQL数据库(UTF8)乱码以及连接失败问题以及更改mysql默认编码
- 一个关于php使用pdo方式进行数据库连接和处理的类
- php使用PDO连接数据库
- 《关于在MFC中使用ODBC方式连接数据库可能出现的问题》第一篇
- Log One(phpmyadmin中使用配置文件中定义的控制用户连接失败问题 )
- php使用开源的adodb连接mssql解决乱码问题
- php Sql Server连接失败问题及解决办法
- PHP使用PDO连接SQLITE3