出现的问题1
网站制作工作中遇到一客户需要将accss数据库读取,然后导入到mysql数据库中,网上搜索php链接accesss数据库,看起来挺简单,直接使用com组件 adodb.connection就行的,结果出现了com错误。
Fatal error: Class 'COM' not found
解决方法
修改php.ini的
搜索extension= 有很多extension= 在其中的一行上方加入就可以了,然后重启iis
extension=php_com_dotnet.dll
出现问题2
传到服务器上,出现以下错误
Warning: com() has been disabled for security reasons in D:\web\*****\a.php on line 11
php.ini禁用了com组件
-
1.在php.ini 找到 disable_functions = ,将里面的com,个删除掉
-
2.在php.ini 找到 disable_classes = "com" ,在前面加入;注释掉
-
3.重启iis
读取access的代码
//提取数据表 /* 创建ADO连接 */ $conn = @new COM("ADODB.Connection") or die ("ADO Connection faild."); $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("./Public/Uploads/xiao170706.mdb"); $conn->Open($connstr); echo($conn->state."<hr>"); //数据库链接状态 $rs = new com("ADODB.RecordSet"); $rs->Open("select * from tj_register",$conn,1,1); while(! $rs->eof) { echo $rs->Fields(1)->value; echo "<br>"; echo $rs->Fields(2)->value; echo "<br>"; echo $rs->Fields(3)->value; echo "<br>"; echo "<hr>"; $rs->MoveNext(); }